当前位置:首页 > 工业技术
零基础学AVR单片机  基于ATmega16、汇编及C语言
零基础学AVR单片机  基于ATmega16、汇编及C语言

零基础学AVR单片机 基于ATmega16、汇编及C语言PDF电子书下载

工业技术

  • 电子书积分:11 积分如何计算积分?
  • 作 者:徐益民,范红刚,苏凤武编著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2011
  • ISBN:9787111322931
  • 页数:254 页
图书介绍:本书主要内容包括15章:单片机概述、AVR 单片机开发工具、C语言基础、ATMEGA16单片机基本结构、AVR的指令系统与汇编系统、ATMEGA16的I/O端口、ATMEGA16的中断系统、复位系统及睡眠模式的设置、定时器/计数器0、定时器/计数器1、A/D转换器、同步串行SPI接口、UART串行口的应用、TWI接口的应用、综合设计实例等。
《零基础学AVR单片机 基于ATmega16、汇编及C语言》目录

第一篇 开发基础 1

第1章 单片机概述 1

1.1 什么是单片机 1

1.2 单片机的应用 2

1.3 ATMEL的AVR单片机 2

1.4 AVR单片机的家族成员 2

1.4.1 AVR单片机的型号 3

1.4.2 AVR单片机的选型 4

1.5 ATmega16单片机概述 5

1.5.1 ATmega16单片机的主要性能 5

1.5.2 ATmega16单片机的引脚说明 7

1.6 实践拓展 7

1.7 思考与练习 8

第2章 AVR单片机的开发工具 9

2.1 AVR单片机程序开发环境 9

2.1.1 GCCAVR开发环境的安装 9

2.1.2 智峰下载软件 11

2.2 AVR单片机的开发语言 11

2.3 实验设备 12

2.3.1 本书所用的实验开发板 12

2.3.2 下载线 12

2.4 LED小灯闪烁实验过程演示 13

2.5 实践拓展 20

2.6 思考与练习 21

第二篇 结构与编程 22

第3章 AVR单片机C语言 22

3.1 C语言的结构 22

3.2 C语言的基本字符、标识符和关键字 23

3.3 C语言的基本数据类型 24

3.4 函数 25

3.4.1 系统库函数 25

3.4.2 用户自定义函数 25

3.5 数组 27

3.5.1 一维数组 27

3.5.2 二维数组 28

3.6 指针 28

3.7 结构体 30

3.7.1 结构体类型的声明和变量的定义 30

3.7.2 结构体变量的初始化 32

3.7.3 对结构体各成员的访问与使用 32

3.8 共用体 33

3.9 实践拓展 33

3.10 思考与练习 35

第4章 ATmega16单片机基本结构 36

4.1 ATmega16的内部结构 36

4.2 ATmega16的存储器结构 37

4.2.1 ATmega16的程序存储器 37

4.2.2 ATmega16的数据存储器 37

4.3 状态寄存器——SREG 40

4.4 ATmega16的封装和引脚功能 41

4.5 ATmega16的电源电路和复位电路 43

4.6 ATmega16的时钟电路 43

4.7 实践拓展——最小系统设计 44

4.8 思考与练习 44

第5章 AVR的指令系统与汇编系统 45

5.1 ATmega16指令概述 45

5.1.1 指令格式 45

5.1.2 指令的表示形式 45

5.1.3 指令的分类 46

5.1.4 AVR指令系统中的名词 46

5.1.5 AVR汇编语言系统 47

5.2 AVR指令系统的寻址方式 48

5.3 数据传送指令 52

5.3.1 直接寻址数据传送指令 52

5.3.2 间接寻址数据传送指令 53

5.3.3 从程序存储器中取数装入寄存器指令 55

5.3.4 写程序存储器指令 56

5.3.5 I/O口数据传送 56

5.3.6 堆栈操作指令 57

5.4 算术和逻辑指令 57

5.4.1 加法指令 57

5.4.2 减法指令 58

5.4.3 取反码指令 59

5.4.4 取补码指令 59

5.4.5 比较指令 59

5.4.6 逻辑“与”指令 60

5.4.7 逻辑“或”指令 61

5.4.8 逻辑“异或”指令 61

5.4.9 乘法指令 62

5.5 转移指令 63

5.5.1 无条件转移指令 63

5.5.2 条件转移指令 64

5.5.3 子程序调用和返回指令 69

5.6 位操作和位测试指令 70

5.6.1 带进位逻辑操作指令 70

5.6.2 位变量传送指令 71

5.6.3 位变量修改指令 71

5.7 MCU控制指令 74

5.8 汇编伪指令及表达式 75

5.8.1 伪指令 75

5.8.2 表达式 79

5.8.3 器件定义头文件m16def.inc 80

5.9 编程实例 80

5.10 实践拓展 82

5.11 思考与练习 84

第6章 ATmega16的I/O端口 85

6.1 I/O端口的结构和功能 85

6.1.1 I/O端口的内部结构 85

6.1.2 I/O端口的相关寄存器 86

6.2 I/O端口的应用举例 87

6.2.1 LED流水灯设计 87

6.2.2 独立式按键设计 89

6.2.3 单片机与液晶显示模块的接口设计 93

6.3 实践拓展 98

6.4 思考与练习 99

第7章 ATmega16的中断系统 100

7.1 概述 100

7.2 中断源和中断向量 101

7.2.1 中断源 101

7.2.2 中断向量 102

7.3 相关寄存器 103

7.3.1 状态寄存器 103

7.3.2 通用中断控制寄存器 103

7.4 外部中断 104

7.4.1 外部中断相关寄存器 104

7.4.2 实例:一位LED数码管显示系统设计 107

7.4.3 实例:药片装瓶监控系统设计 110

7.5 实践拓展 115

7.6 思考与练习 115

第8章 复位系统及睡眠模式的设置 116

8.1 ATmega16的复位系统 116

8.1.1 几种复位方式 116

8.1.2 复位系统硬件电路 116

8.1.3 复位的操作处理 116

8.2 看门狗定时器 120

8.2.1 看门狗电路的结构 120

8.2.2 看门狗电路的工作原理 120

8.2.3 看门狗电路的相关寄存器 120

8.2.4 看门狗的应用 121

8.3 睡眠模式的设置 124

8.3.1 MCUCR 125

8.3.2 睡眠模式 125

8.3.3 系统功耗最小化方法 126

8.3.4 睡眠功能应用实例 127

8.4 实践拓展 131

8.5 思考与练习 133

第三篇 模块功能 134

第9章 定时器/计数器0 134

9.1 定时器/计数器的基本功能 134

9.2 定时器/计数器0的特点及内部结构 134

9.3 预分频器 136

9.4 输出比较单元和比较匹配输出单元 137

9.4.1 输出比较单元 137

9.4.2 比较匹配输出单元 138

9.5 定时器/计数器0的相关寄存器 138

9.6 定时器/计数器0的工作模式 141

9.6.1 普通模式 142

9.6.2 快速PWM模式 142

9.6.3 相位修正PWM模式 143

9.6.4 CTC模式 144

9.7 定时器/计数器0应用举例 145

9.7.1 定时器控制LED闪烁 145

9.7.2 定时器控制PWM输出 147

9.8 实践拓展 149

9.9 思考与练习 150

第10章 定时器/计数器1 151

10.1 定时器/计数器1的内部结构 151

10.2 计数器单元 152

10.3 输入捕捉单元 153

10.4 输出比较单元 154

10.5 比较匹配输出单元 155

10.6 访问16位寄存器 156

10.7 定时器/计数器1的相关寄存器 156

10.8 定时器/计数器1的工作模式 161

10.8.1 普通模式 161

10.8.2 CTC模式 162

10.8.3 快速PWM模式 162

10.8.4 相位修正PWM模式 164

10.8.5 相位与频率修正PWM模式 165

10.9 定时器/计数器1应用举例 167

10.9.1 PWM控制电机转速 167

10.9.2 用计数器制作频率检测仪 169

10.10 实践拓展 172

10.11 思考与练习 174

第11章 A/D转换器 175

11.1 A/D转换单元结构 175

11.1.1 A/D转换器内部结构 175

11.1.2 ADC预分频器 175

11.2 相关寄存器设置 177

11.2.1 特殊功能I/O寄存器(SFIOR) 177

11.2.2 A/D控制和状态寄存器A(ADCSRA) 177

11.2.3 A/D数据寄存器(ADCH及ADCL) 178

11.2.4 A/D多工选择寄存器(ADMUX) 179

11.3 ADC工作原理 180

11.4 ADC转换时序 181

11.5 A/D转换应用实例 183

11.5.1 实例:对输入的电压进行A/D转换 183

11.5.2 实例:对输入的两路模拟电压进行A/D转换 185

11.6 实践拓展 190

11.7 思考与练习 191

第12章 同步串行SPI接口 192

12.1 同步串行通信基础 192

12.2 主机和从机的连接 193

12.3 相关寄存器设置 194

12.3.1 SPI控制寄存器(SPCR) 194

12.3.2 SPI状态寄存器(SPSR) 195

12.3.3 SPI数据寄存器(SPDR) 196

12.4 数据模式 196

12.5 同步串行口应用举例 197

12.6 实践拓展 200

12.7 思考与练习 204

第13章 USART串行口的应用 205

13.1 串行口工作原理 205

13.2 相关寄存器设置 209

13.2.1 USART数据寄存器(UDR) 209

13.2.2 USART控制和状态寄存器A(UCSRA) 209

13.2.3 USART控制和状态寄存器B(UCSRB) 210

13.2.4 USART控制和状态寄存器C(UCSRC) 211

13.2.5 USART波特率寄存器(UBRRL和UBRRH) 212

13.3 USART串行口应用举例 212

13.3.1 两片单片机之间串行通信 213

13.3.2 单片机给PC机上传数据 216

13.4 实践拓展 218

13.5 思考与练习 219

第14章 TWI接口的应用 220

14.1 TWI通信原理 220

14.2 相关寄存器设置 222

14.2.1 TWI比特率寄存器TWBR 222

14.2.2 TWI控制寄存器TWCR 222

14.2.3 TWI状态寄存器TWSR 223

14.2.4 TWI数据寄存器TWDR 223

14.2.5 TWI(从机)地址寄存器TWAR 224

14.3 TWI接口应用举例 224

14.4 实践拓展 228

14.5 思考与练习 229

第四篇 综合设计 230

第15章 综合设计实例 230

15.1 调光灯的设计 230

15.1.1 任务要求与方案设计 230

15.1.2 硬件电路设计 231

15.1.3 软件设计 232

15.2 电能质量检测系统设计 239

15.2.1 任务分析 240

15.2.2 硬件电路设计 240

15.2.3 软件设计 243

15.3 实践拓展 249

15.4 思考与练习 251

参考文献 252

相关图书
作者其它书籍
返回顶部