扫描二维码,下载手机APP
下载安卓APP箭头
客服QQ
箭头给我发消息

客服QQ:2698585038

AVR单片机C语言高级编程设计(第三版)

综合评级:
★★★★★

定价:
¥59.80

作者:
周兴华,岑巍,倪敏娜

出版社:
中国电力出版社

出版日期:
2015年8月

页数:
424

字数:
645000

ISBN:
9787512378933

书籍介绍

《AVR单片机C语言高级编程设计(第三版)》以初学者为对象,从零开始,循序渐进地讲述AVR单片机C语言编程方法以及AVR单片机的硬件结构和功能应用。全书共27章,主要内容包括AVR单片机特性、AVR单片机开发语言及编译器、AVR单片机开发软件的安装及初步使用、自制JTAG仿真器及AVR单片机程序下载器、I/O端口、中断系统、定时计数器、模/数转换器、与PC机的串行通信、内部E2PROM、I2C串行接口、看门狗定时器、风机测试仪、红外线转速仪、红外线感应自动移门、PID温度控制器、液晶实时曲线显示监控系统、图文混排指针型电子钟设计、数显超声波测距仪、RS485远程网络控制系统设计等。

作者简介

周兴华单片机培训中心首席培训师,著名单片机培训、教育专家,资深高级嵌入式工程师,从事单片机培训和产品设计近20年,编写出版了大量的培训书籍,已发表的有关学术及专业方面的文章超过1000万字。

目录

前言

第1章 概述 1

1.1 AVR单片机特性 1

1.2 学习AVR单片机用到的实验工具及器材 2

第2章 AVR单片机开发语言及编译器 8

2.1 采用C语言编程的意义 8

2.2 C语言具有的突出优点 9

2.3 AVR单片机的C编译器简介 10

第3章 ANSI C语言基础知识 11

3.1 C语言的标识符与关键字 11

3.2 数据类型 13

3.3 AVR单片机的存储空间 14

3.4 常量、变量及存储方式 14

3.5 数组 14

3.6 C语言的运算 17

3.7 流程控制 22

3.8 函数 26

3.9 指针 28

3.10 结构体 32

3.11 共用体 36

3.12 中断函数 37

第4章 AVR单片机开发软件的安装及初步使用 40

4.1 ICCAVR7.14C C语言编译器安装 40

4.2 AVR Studio集成开发环境安装 42

4.3 程序下载软件安装 42

4.4 创建AVR入门程序 46

第5章 AVR DEMO单片机综合试验板原理介绍及使用 62

5.1 AVR DEMO单片机综合试验板 62

5.2 ATmega16A单片机的主要特点与内部组成 64

5.3 使用JTAG ICE仿真器调试AVR DEMO单片机综合试验板 65

第6章 自制JTAG仿真器及AVR单片机程序下载器 70

6.1 JTAG的由来及简介 70

6.2 传统的在线仿真器与JTAG接口的片内调试系统的区别 70

6.3 AVR JTAG ICE仿真时注意事项 71

6.4 AVR JTAG ICE的特点 72

6.5 自制AVR JTAG ICE 72

6.6 自制AVR单片机并口程序下载器 82

6.7 自制AVR单片机USBASP程序下载器 83

第7章 ATmega16A的I/O端口及C语言编程 86

7.1 ATmega16A的I/O端口 86

7.2 ATmega16A的I/O端口使用注意事项 87

7.3 ATmega16A的I/O端口编程实践 88

第8章 ATmega16A驱动16×2点阵字符液晶模块 101

8.1 16×2点阵字符液晶显示器概述 101

8.2 液晶显示器的突出优点 102

8.3 16×2字符型液晶显示模块(LCM)特性 102

8.4 16×2字符型液晶显示模块(LCM)引脚及功能 102

8.5 16×2字符型液晶显示模块(LCM)的内部结构 103

8.6 HD44780特点 103

8.7 HD44780工作原理 104

8.8 LCD控制器的指令 108

8.9 LCM工作时序 110

8.10 ATmega16A驱动16×2点阵字符液晶模块的子程序 111

8.11 16×2LCM演示程序(一) 113

8.12 16×2LCM演示程序(二) 116

第9章 ATmega16A的中断系统及C编程 120

9.1 ATmega16A的中断系统 120

9.2 ATmega16A的外部中断编程实践 121

第10章 ATmega16A的定时计数器及C编程 129

10.1 ATmega16A的定时/计数器 129

10.2 ATmega16A定时/计数器的时钟选择 129

10.3 计数器的事件 130

10.4 定时/计数器事件的处理 131

10.5 ATmega16A的定时/计数器编程实践 131

第11章 ATmega16A的PWM功能使用——实现数/模输出 139

11.1 ATmega16A的定时/计数器的特性及数/模输出实现 139

11.2 ATmega16A的PWM编程实践 139

第12章 ATmega16A的模/数转换器及C编程 145

12.1 ATmega16A的模/数转换器 145

12.2 模/数转换器相关寄存器 145

12.3 模/数转换器的使用 147

12.4 ATmega16A的模/数转换器编程实践 147

第13章 ATmega16A串口及C编程——与PC机的串行通信 153

13.1 通用串行接口USART的主要特性 153

13.2 USART的主要寄存器及设置 153

13.3 ATmega16A与PC机的串行通信编程实践 157

第14章 AVR单片机内部资源的C编程——ATmega16A的内部E2PROM读/写 177

14.1 ATmega16A的内部E2PROM 177

14.2 与E2PROM相关的寄存器 177

14.3 ATmega16A内部E2PROM编程实践 178

第15章 ATmega16A驱动I2C串行接口器件24C01的编程 190

15.1 E2PROM AT24CXX的性能特点 190

15.2 AT24CXX引脚定义 190

15.3 AT24CXX系列存储器特点 191

15.4 AT24CXX系列E2PROM的内部结构 191

15.5 AT24CXX系列E2PROM芯片的寻址 192

15.6 写操作方式 193

15.7 读操作方式 194

15.8 读写AT24C01的相关功能子程序 195

15.9 在AVR单片机综合试验板上完成AT24C01A的读写实验 198

第16章 AVR单片机内部资源的C编程——实现两片ATmega16A以SPI方式通信 225

16.1 ATmega16A的SPI串行接口特点 225

16.2 主机和从机之间的SPI连接及原理 225

16.3 SPI的配置及使用 228

16.4 SPI的相关寄存器 228

16.5 两片ATmega16A的同步串口数据高速通信实验 230

第17章 ATmega16A驱动SPI串行接口器件93C46的编程 236

17.1 AT93CXX的性能特点 236

17.2 AT93CXX引脚定义 236

17.3 AT93CXX系列存储器特点 237

17.4 AT93CXX系列E2PROM的内部结构 237

17.5 AT93CXX系列E2PROM的指令集 238

17.6 器件操作 238

17.7 ATmega16A驱动AT93C46的子函数 242

17.8 ATmega16A对AT93C46的读/写实验 245

第18章 ATmega16A驱动128×64点阵图形液晶模块 251

18.1 128×64点阵图形液晶模块特性 251

18.2 128×64点阵图形液晶模块引脚及功能 252

18.3 128×64点阵图形液晶模块的内部结构 252

18.4 HD61203特点 254

18.5 HD61202特点 255

18.6 HD61202工作原理 255

18.7 HD61202的工作过程 259

18.8 点阵图形液晶模块的控制器指令 259

18.9 HD61202的操作时序图 261

18.10 ATmega16A驱动128×64点阵图形液晶模块的子程序 262

18.11 在AVR单片机综合试验板上实现128×64LCM演示程序 265

18.12 在128×64液晶屏上实现多级菜单的设计实验 271

第19章 ATmega16A的系统控制、复位和看门狗定时器使用 275

19.1 ATmega16A的系统控制和复位 275

19.2 ATmega16A的复位源 275

19.3 看门狗定时器的使用 277

19.4 在AVR DEMO单片机综合试验板上,进行看门狗实验(一) 278

19.5 在AVR DEMO单片机综合试验板上,进行看门狗实验(二) 280

第20章 ATmega16A应用实例1——风机测试仪 282

20.1 系统功能描述 282

20.2 系统方案及电路设计 282

20.3 测试类型、参数范围及测试过程 285

20.4 程序设计 286

20.5 调试及应用 297

第21章 ATmega16A应用实例2——红外线转速仪 298

21.1 转速仪表的分类 298

21.2 转速传感器 299

21.3 转速测量的方法 299

21.4 红外线转速仪系统功能描述 299

21.5 系统方案及电路设计 300

21.6 程序设计 302

21.7 调试及应用 308

第22章 ATmega16A应用实例3——红外线感应自动移门 309

22.1 红外线感应自动移门的组成及基本工作原理 309

22.2 系统方案设计 310

22.3 电路设计 311

22.4 程序设计详解 316

22.5 保养及维护 334

第23章 ATmega16A应用实例4——PID温度控制器 335

23.1 温度控制原理 335

23.2 PID控制原理 335

23.3 系统方案及电路设计 337

23.4 程序设计 340

23.5 调试及应用 348

第24章 ATmega16A应用实例5——液晶实时曲线显示监控系统 349

24.1 系统功能描述 349

24.2 系统方案及电路设计 349

24.3 数字温度传感器DS18B20简介 350

24.4 程序设计 355

24.5 调试及应用 377

第25章 ATmega16A应用实例6——图文混排指针型电子钟设计 378

25.1 系统方案设计 378

25.2 电路设计 378

25.3 程序设计详解 378

25.4 调试及应用 397

第26章 ATmega16A应用实例7——数显超声波测距仪 398

26.1 超声波测距原理 398

26.2 超声波测距专用模块HC-SR04介绍 398

26.3 系统方案设计 400

26.4 电路设计 400

26.5 程序详解 400

26.6 调试及应用 404

第27章 ATmega16A应用实例8——RS485远程网络控制系统设计 405

27.1 RS485分布式数据采集和控制网络原理 405

27.2 电路设计 405

27.3 程序详解 405

27.4 调试及应用 410

参考文献 411