《单片机技术及项目训练》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:赵威主编;张堃主审
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2012
  • ISBN:9787512408302
  • 页数:222 页
图书介绍:本书是省级示范性高职院校四川航天职业技术学院单片机应用技术教学团队在多年教学改革经验基础上,结合最新的高等职业教育改革要求,通过25个学习情境及多个训练项目,系统介绍了单片机硬件结构、单片机指令系统、单片机中断与定时系统、单片机端口应用以及单片机系统功能扩展等内容。本书注重编程技能训练,所有学习情境都采用“情境任务”、“知识准备”、“任务实施”和“能力扩展”结构,符合高职教学任务引导、逐层递进的教学方式,具有很强的实用性和可读性。

1 学习情境1 认识单片机 1

1.1 情境任务——单片机的发展历程、趋势及主流产品 1

1.2 知识准备 1

1.2.1 单片机的定义 1

1.2.2 单片机的应用领域 2

1.3 任务实施 3

1.3.1 单片机的发展历程 3

1.3.2 单片机的发展趋势 3

1.3.3 单片机分类及当前的主流产品 4

1.4 能力拓展 6

1.4.1 其他主流单片机生产厂商介绍 6

1.4.2 单片机与PC机的参数对比 6

2 学习情境2 单片机中的数 8

2.1 情境任务——数据存储与进制转换 8

2.2 知识准备 8

2.2.1 数制 8

2.2.2 进制间的转换 8

2.2.3 单片机中的存储单位 9

2.3 任务实施 9

2.4 能力拓展 10

2.4.1 无符号数与有符号数 10

2.4.2 有符号数编码 10

3 学习情境3 单片机存储器组织 12

3.1 情境任务——存储器地址编号 12

3.2 知识准备 12

3.2.1 存储单元地址 12

3.2.2 80C51单片机存储器结构 13

3.2.3 程序存储器ROM的使用方式 13

3.3 任务实施 13

3.4 能力拓展 14

3.4.1 程序存储器起始端的特殊单元 14

3.4.2 单片机各类存储器空间的访问 14

4 学习情境4 数据存储器与特殊功能寄存器 15

4.1 情境任务——片内RAM与特殊功能寄存器 15

4.2 知识准备 15

4.2.1 片内RAM分区 15

4.2.2 特殊功能寄存器区 17

4.3 任务实施 18

4.4 能力拓展——特殊功能寄存器分类 18

5 学习情境5 单片机最小电路 19

5.1 情境任务——理解并搭建单片机最小电路 19

5.2 知识准备 19

5.2.1 单片机时钟电路 19

5.2.2 单片机复位电路 20

5.3 任务实施 21

5.4 能力拓展——单片机中的S状态周期 22

6 学习情境6 数据传送 23

6.1 情境任务——数据大转移 23

6.2 知识准备 23

6.2.1 一般传送指令 24

6.2.2 特殊传送指令 27

6.2.3 其他特殊传送指令 29

6.3 任务实施 29

6.4 能力拓展 30

6.4.1 指令机器码 30

6.4.2 指令执行时间 31

6.4.3 累加器A与ACC 31

7 学习情境7 算术运算 32

7.1 情境任务——四则运算 32

7.2 知识准备——单片机中的算术运算类指令 32

7.2.1 加法 33

7.2.2 减法 35

7.2.3 乘法 35

7.2.4 除法 36

7.3 任务实施 36

7.4 能力拓展 36

7.4.1 使用CY和OV进行运算结果验证 36

7.4.2 BCD码运算及调整 37

8 学习情境8 逻辑运算与循环 39

8.1 情境任务——逻辑运算与倍乘 39

8.2 知识准备——逻辑运算及循环移位指令 39

8.2.1 逻辑运算 40

8.2.2 累加器清0和取反 41

8.2.3 累加器循环移位 42

8.3 任务实施 42

8.4 能力拓展 42

8.4.1 逻辑与、逻辑或和逻辑异或使用要点 42

8.4.2 RL与RLC使用示例 43

9 学习情境9 程序转移 44

9.1 情境任务——分段函数 44

9.2 知识准备——转移类指令 44

9.2.1 条件转移指令 45

9.2.2 无条件转移 46

9.3 任务实施 48

9.4 能力拓展 48

9.4.1 灵活运用指令“ANL A,#80H”进行正负数的区分 48

9.4.2 多分支结构程序设计 48

9.4.3 循环结构程序设计 49

10 学习情境10 位操作 51

10.1 情境任务——逻辑电路 51

10.2 知识准备——位操作 51

10.2.1 常规操作 53

10.2.2 位逻辑操作 53

10.2.3 位传送 53

10.2.4 判断位值的条件转移指令 54

10.3 任务实施 54

10.4 能力拓展——累加器A编程求补码 55

11 学习情境11 伪指令 56

11.1 情境任务——创建平方表 56

11.2 知识准备 56

11.2.1 汇编方式 56

11.2.2 伪指令 56

11.3 任务实施 58

11.4 能力拓展——查询平方表 58

12 学习情境12 寻址方式 59

12.1 情境任务——辨别寻址方式 59

12.2 知识准备——寻址方式分类 59

12.3 任务实施 60

12.4 能力拓展——目的操作数寻址方式 61

13 学习情境13 子程序调用 62

13.1 情境任务——查表计算平方和 62

13.2 知识准备——子程序调用及返回 62

13.2.1 调用指令 62

13.2.2 子程序调用返回指令 62

13.3 任务实施 63

13.4 能力拓展 63

13.4.1 延时子程序 63

13.4.2 现场保护与恢复 64

13.4.3 参数传递 66

14 学习情境14 单片机中断系统 67

14.1 情境任务——中断型数据采集系统 67

14.2 知识准备 67

14.2.1 中断概念 67

14.2.2 中断源及中断请求标志 67

14.2.3 中断系统的控制寄存器 68

14.2.4 中断的响应过程 70

14.2.5 中断系统程序结构 71

14.3 任务实施 72

14.4 能力拓展——多外部中断源系统 74

15 学习情境15 定时/计数器 76

15.1 情境任务——生产线产品计数系统 76

15.2 知识准备 76

15.2.1 定时/计数器中的寄存器 76

15.2.2 定时/计数器的工作方式 78

15.3 任务实施 80

15.4 能力拓展 81

15.4.1 脉冲的发生与测量 81

15.4.2 定时/计数器用于外部中断扩展 83

15.4.3 其他定时方法 84

16 学习情境16 并行接口 85

16.1 情境任务——循环彩灯 85

16.2 知识准备 85

16.2.1 P1口 85

16.2.2 发光二极管 85

16.2.3 延时程序 85

16.3 任务实施 86

16.4 能力拓展 87

16.4.1 通用锁存器、缓冲器扩展 87

16.4.2 扩展8255可编程并行接口芯片 89

17 学习情境17 串行口通信技术 92

17.1 情境任务——串口通信 92

17.2 知识准备 92

17.2.1 单片机通信概念 92

17.2.2 串行通信的分类 93

17.2.3 通信方向分类 93

17.2.4 单片机的串行接口 94

17.3 任务实施 97

17.4 任务扩展——双机通信 99

18 学习情境18 存储器的扩展 104

18.1 情境任务——扩展片外存储器 104

18.2 知识准备 104

18.2.1 存储器扩展概念 104

18.2.2 程序存储器扩展 109

18.2.3 数据存储器扩展 110

18.3 任务实施 111

18.4 能力拓展 113

18.4.1 扩展多片数据存储器 113

18.4.2 存储器综合扩展 114

19 学习情境19 A/D与D/A转换 115

19.1 情境任务——模拟量输入的巡回检测系统及信号发生器 115

19.2 知识准备 115

19.2.1 A/D转换器 115

19.2.2 D/A转换器 120

19.3 任务实施 124

19.4 能力拓展 126

20 学习情境20 初识C语言 127

20.1 情境任务——C语言程序结构 127

20.2 知识准备——单片机C语言基础 127

20.3 任务实施 129

20.4 能力拓展——两种编程语言比较 129

21 学习情境21 数据和运算 131

21.1 情境任务——使用C语言设计流水灯 131

21.2 知识准备 131

21.2.1 C51的数据类型 131

21.2.2 数据的存储类型和存储模式 133

21.2.3 C51对SFR、可寻址位、存储器和I/O口的定义 135

21.2.4 C51的运算符 137

21.3 任务实施 138

21.4 能力拓展——流水灯其他实现方法 140

22 学习情境22 C语言基本语句 142

22.1 情境任务——汽车转向灯控制系统 142

22.2 知识准备 143

22.2.1 表达式语句和复合语句 143

22.2.2 选择语句 144

22.3 任务实施 147

22.4 能力拓展——循环语句 150

23 学习情境23 数组 158

23.1 情境任务——简易密码锁 158

23.2 知识准备 158

23.2.1 数组的概念 158

23.2.2 数组的类型 158

23.3 任务实施 162

23.4 能力拓展——数组实现流水灯控制 163

24 学习情境24 函数 165

24.1 情境任务——使用库函数控制流水灯 165

24.2 知识准备 165

24.2.1 函数的分类 165

24.2.2 函数的定义 165

24.2.3 函数的调用 166

24.2.4 对被调函数的说明 166

24.3 任务实施 167

24.4 能力拓展——C语言中散转移编程 168

25 学习情境25 汇编语言和C语言的混合编程 169

25.1 情境任务——方波发生器 169

25.2 知识准备 169

25.2.1 混合编程概念 169

25.2.2 C语言程序和汇编语言程序参数的传递 169

25.3 任务实施 170

25.4 能力拓展 172

25.4.1 数值比较混合编程 172

25.4.2 C和汇编混合编程传递的参数多于三个的编程方法 172

26 项目训练1 报警产生器 175

27 项目训练2 4×4矩阵式键盘识别技术 178

28 项目训练3 字符型LCD显示 183

29 项目训练4 音乐声 192

自测练习题 200

附录A Keil C51软件使用 207

附录B AT89S52单片机烧写软件 214

附录C 常用的C51标准库函数 219

参考文献 222