《AVR单片机与传感器模块设计 IAR版》PDF下载

  • 购买积分:14 如何计算积分?
  • 作  者:冯迅,周屹,肖飞编著
  • 出 版 社:北京:清华大学出版社
  • 出版年份:2015
  • ISBN:9787302421610
  • 页数:423 页
图书介绍:教材主要分为两个部分:第一部分讲述IAR开发环境和AVR单片机的工作原理, 以ATMega16为代表讲述了AVR单片机内部各个组成部分的原理,并在每个部分的结尾通过实例让学习者熟悉本部分的具体用法。第二部分讲述了二十多种外围模块及传感器的工作原理,并给出它们与ATMega16单片机结合的应用实例。

上篇 AVR单片机原理 3

第1章 AVR单片机及IAR环境简介 3

1.1 AVR单片机简介 3

1.2 IAR开发环境简介 5

1.3 IAR开发环境的安装与配置 5

1.4 习题 13

第2章 ATMega16的I/O端口及应用 14

2.1 ATMega16单片机实例引入 14

2.1.1 引入实例一 14

2.1.2 I/O端口描述 18

2.1.3 引入实例二 21

2.2 ATMega16中I/O端口的内部结构及其配置 23

2.2.1 I/O端口内部结构 23

2.2.2 I/O端口配置及复用功能 24

2.3 ATMega16的I/O端口编程实践 27

2.3.1 键控LED闪烁 27

2.3.2 电路原理图 27

2.3.3 实例分析 27

2.3.4 参考程序代码 27

2.3.5 实例演示 28

2.4 习题 28

第3章 ATMega16的中断系统及应用 29

3.1 ATMega16的外部中断 29

3.1.1 外部中断的原理 29

3.1.2 外部中断服务程序 31

3.1.3 外部中断寄存器配置 31

3.2 ATMega16的中断系统 34

3.2.1 中断的概念 34

3.2.2 中断响应过程 35

3.2.3 多中断响应 37

3.3 ATMega16的中断编程实践 39

3.3.1 彩灯模型 39

3.3.2 电路原理图 39

3.3.3 实例分析 39

3.3.4 参考程序代码 40

3.3.5 实例演示 41

3.4 习题 44

第4章 ATMega16的定时/计数器及应用 45

4.1 ATMega16的定时/计数器 45

4.1.1 定时/计数器模块简介 45

4.1.2 普通定时器模式 45

4.1.3 普通PWM模式 49

4.1.4 快速PWM模式 52

4.1.5 相位修正PWM模式 56

4.1.6 异步时钟模式 59

4.1.7 输入捕获模式 60

4.2 ATMega16的定时/计数器编程实践一 62

4.2.1 秒闪LED 62

4.2.2 电路原理图 62

4.2.3 实例分析 62

4.2.4 参考程序代码 62

4.2.5 实例演示 63

4.3 ATMega16的定时/计数器编程实践二 63

4.3.1 键控方波输出 63

4.3.2 电路原理图 63

4.3.3 实例分析 63

4.3.4 参考程序代码 64

4.3.5 实例演示 64

4.4 ATMega16的定时/计数器编程实践三 65

4.4.1 键控PWM输出 65

4.4.2 电路原理图 65

4.4.3 实例分析 65

4.4.4 参考程序代码 65

4.4.5 实例演示 66

4.5 ATMega16的定时/计数器编程实践四 67

4.5.1 两路PWM输出 67

4.5.2 电路原理图 67

4.5.3 实例分析 67

4.5.4 参考程序代码 67

4.5.5 实例演示 68

4.6 ATMega16的定时/计数器编程实践五 68

4.6.1 舵机控制 68

4.6.2 电路原理图 68

4.6.3 实例分析 68

4.6.4 参考程序代码 69

4.6.5 实例演示 70

4.7 ATMega16的定时/计数器编程实践六 70

4.7.1 异步秒闪信号 70

4.7.2 电路原理图 70

4.7.3 实例分析 70

4.7.4 参考程序代码 71

4.7.5 实例演示 71

4.8 ATMega16的定时/计数器编程实践七 71

4.8.1 音频频率计 71

4.8.2 电路原理图 72

4.8.3 实例分析 72

4.8.4 参考程序代码 73

4.8.5 实例演示 76

4.9 习题 76

第5章 ATMega16的串口及应用 77

5.1 ATMega16的串口 77

5.1.1 USART串口模块简介 77

5.1.2 寄存器配置 78

5.2 ATMega16的串口编程实践一 83

5.2.1 串口发送字符 83

5.2.2 电路原理图 83

5.2.3 实例分析 84

5.2.4 参考程序代码 84

5.2.5 实例演示 85

5.3 ATMega16的串口编程实践二 86

5.3.1 串口接收字符并显示 86

5.3.2 电路原理图 86

5.3.3 实例分析 86

5.3.4 参考程序代码 87

5.3.5 实例演示 89

5.4 习题 89

第6章 ATMega16的片内EEPROM及应用 90

6.1 ATMega16的片内EEPROM 90

6.1.1 片内EEPROM模块简介 90

6.1.2 寄存器配置 90

6.2 ATMega16的片内EEPROM编程实践 92

6.2.1 键控读写片内EEPROM 92

6.2.2 电路原理图 92

6.2.3 实例分析 92

6.2.4 参考程序代码 93

6.2.5 实例演示 96

6.3 习题 96

第7章 ATMega16的A/D转换及应用 97

7.1 ATMega16的A/D转换器 97

7.1.1 模/数转换器模块简介 97

7.1.2 寄存器配置 97

7.2 ATMega16的A/D转换编程实践 103

7.2.1 电压测量 103

7.2.2 电路原理图 103

7.2.3 实例分析 104

7.2.4 参考程序代码 105

7.2.5 实例演示 107

7.3 习题 107

第8章 ATMega16的模拟比较器及应用 108

8.1 ATMega16的模拟比较器 108

8.1.1 模拟比较器模块简介 108

8.1.2 寄存器配置 109

8.2 ATMega16的模拟比较器编程实践 110

8.2.1 电压跌落指示器 110

8.2.2 电路原理图 110

8.2.3 实例分析 111

8.2.4 参考程序代码 111

8.2.5 实例演示 112

8.3 习题 112

第9章 ATMega16的TWI接口及应用 113

9.1 ATMega16的TWI接口 113

9.1.1 TWI总线简介 113

9.1.2 ATMega16的TWI模块 116

9.1.3 寄存器配置 119

9.2 ATMega16的TWI接口编程实践 123

9.2.1 键控读写AT24C02 123

9.2.2 电路原理图 123

9.2.3 实例分析 123

9.2.4 参考程序代码 124

9.2.5 实例演示 128

9.3 习题 128

第10章 ATMega16的SPI接口及应用 129

10.1 ATMega16的SPI接口 129

10.1.1 SPI接口模块简介 129

10.1.2 寄存器配置 131

10.1.3 操作函数 133

10.2 ATMega16的SPI接口编程实践 133

10.2.1 SPI双机通信 133

10.2.2 电路原理图 134

10.2.3 实例分析 134

10.2.4 参考程序代码 134

10.2.5 实例演示 139

10.3 习题 139

第11章 ATMega16的复位源与看门狗 140

11.1 ATMega16的复位源 140

11.2 ATMega16的看门狗 142

11.3 ATMega16的看门狗编程实践 143

11.3.1 启用看门狗的流水灯 143

11.3.2 电路原理图 143

11.3.3 实例分析 143

11.3.4 参考程序代码 143

11.3.5 实例演示 145

11.4 习题 145

第12章 ATMega16的时钟源与熔丝设置 146

12.1 ATMega16的时钟源 146

12.2 ATMega16的熔丝设置 147

12.3 ATMega16的熔丝设置实践 151

12.3.1 配置ATMega16 151

12.3.2 设置方法 151

12.3.3 补救方法 151

12.4 习题 152

下篇 常用传感器模块设计实例 155

第13章 LCD1602液晶屏设计实例 155

13.1 LCD1602简介 155

13.2 LCD1602的寄存器配置及模块操作 156

13.3 实例描述及实现一 160

13.4 实例描述及实现二 164

第14章 LCD12864液晶屏设计实例 172

14.1 LCD12864简介 172

14.2 LCD12864的寄存器配置及模块操作 174

14.3 实例描述及实现一 177

14.4 实例描述及实现二 181

14.5 实例描述及实现三 187

14.6 实例描述及实现四 192

第15章 矩阵键盘设计实例 204

15.1 矩阵键盘简介 204

15.2 实例描述及实现 205

第16章 温度传感器DS18B20设计实例 208

16.1 DS18B20简介 208

16.2 实例描述及实现 209

第17章 温湿度传感器DHT21设计实例 217

17.1 DHT21简介 217

17.2 实例描述及实现 218

第18章 日历芯片DS1307设计实例 225

18.1 DS1307简介 225

18.2 DS1307的寄存器配置及操作 225

18.3 实例描述及实现 227

第19章 红外遥控解码设计实例 236

19.1 红外解码简介 236

19.2 红外接收管1838简介 237

19.3 实例描述及实现 237

第20章 16×16 LED点阵显示设计实例 244

20.1 LED点阵显示简介 244

20.2 16×16 LED点阵的驱动及字模提取 245

20.3 实例描述及实现 246

第21章 超声波探头测距实例 250

21.1 超声波探头简介 250

21.2 实例描述及实现 251

第22章 步进电机驱动实例 256

22.1 步进电机简介 256

22.2 步进电机的驱动方式 256

22.3 实例描述及实现 258

第23章 三轴加速度传感器MMA7260设计实例 261

23.1 MMA7260简介 261

23.2 实例描述及实现 262

第24章 地磁传感器HMC5883设计实例 269

24.1 HMC5883简介 269

24.2 HMC5883的寄存器配置及模块操作 271

24.3 实例描述及实现 272

第25章 气压传感器BMP085设计实例 279

25.1 BMP085简介 279

25.2 BMP085的寄存器配置及模块操作 280

25.3 实例描述及实现 282

第26章 颜色传感器TCS230设计实例 291

26.1 TCS230简介 291

26.2 实例描述及实现 292

第27章 光照度传感器BH1750设计实例 300

27.1 BH1750简介 300

27.2 BH1750指令集 300

27.3 实例描述及实现 302

第28章 GPS模块VK-162设计实例 311

28.1 GPS及VK-162模块简介 311

28.2 数据帧 312

28.3 实例描述及实现 313

第29章 GSM模块TC35设计实例 322

29.1 GSM及TC35模块简介 322

29.2 AT指令 323

29.3 实例描述及实现一 325

29.4 实例描述及实现二 327

第30章 旋转编码开关设计实例 334

30.1 旋转编码开关简介 334

30.2 实例描述及实现 335

第31章 可控硅设计实例 339

31.1 可控硅简介 339

31.2 可控硅的控制方法 339

31.3 实例描述及实现 342

第32章 射频通信模块NRF24L01设计实例 345

32.1 NRF24L01简介 345

32.2 NRF24L01的寄存器配置及模块操作 346

32.3 实例描述及实现 358

第33章 语音芯片ISD4004设计实例 375

33.1 ISD4004简介 375

33.2 ISD4004的操作方法 376

33.3 实例描述及实现 378

第34章 诺基亚5110液晶屏设计实例 385

34.1 诺基亚5110液晶屏简介 385

34.2 诺基亚5110的寄存器配置及模块操作 386

34.3 实例描述及实现一 390

34.4 实例描述及实现二 398

34.5 实例描述及实现三 406

第35章 DDS芯片AD9854设计实例 408

35.1 AD9854简介 408

35.2 AD9854的寄存器配置及模块操作 410

35.3 实例描述及实现 416

参考文献 423