AVR单片机C语言程序设计实例精粹

分类: 图书,计算机与互联网,程序语言与软件开发,语言与开发工具,C语言及其相关,
品牌: 张军
基本信息·出版社:电子工业出版社
·页码:457 页
·出版日期:2009年
·ISBN:7121078899/9787121078897
·条形码:9787121078897
·包装版本:1版
·装帧:平装
·开本:16
·正文语种:中文
产品信息有问题吗?请帮我们更新产品信息。
内容简介《AVR单片机C语言程序设计实例精粹》从实用的角度出发,通过大量工程实例,详细介绍了AVR单片机程序设计的方法与技巧。全书共分5篇,第1篇为AVR单片机基础知识篇,简要介绍了AVR单片机的引脚配置、硬件结构、内部资源与集成开发环境;第2~~5篇为AVR单片机设计实例篇,通过13个设计实例,详细介绍了AVR单片机在人机接口、接口扩展及网络通信、数据采集与测量系统,以及综合系统开发的技术和技巧。书中实例典型、丰富,全部来自于实践,代表性和指导性强,利于读者举一反三,是作者多年开发经验的推广与总结。
编辑推荐汇集一线AVR单片机程序开发专家多年实践经验;实例典型、丰富、代表性和指导性强;项目的设计思路及开发步骤阐述详细。
引脚配置,硬件结构;集成开发,人机接口;接口扩展,网络通信;数据采集,综合系统。
《AVR单片机C语言程序设计实例精粹》结构清晰、内容合理,基础知识与大量实例相结合,13个丰富的AVR单片机设计实例,典型实用、易学易懂,全部调试通过,涵盖了AVR单片机的大量开发技术与应用。同时全书对AVR单片机项目开发的步骤和设计思路进行详细讲解,穿插介绍开发经验、技巧与注意事项,对程序代码进行详细注释,利于读者理解和巩固知识点。
《AVR单片机C语言程序设计实例精粹》适合计算机、自动化、电子等相关专业的大学生,以及从事AVR单片机开发的科研人员使用。~
目录
第1篇 AVR单片机基础知识
第1章 AVR单片机的硬件结构/3
1.1 AVR单片机简介/3
1.2 ATmega 16单片机的特点/4
1.3 ATmega 16单片机的引脚配置/5
1.4 ATmega 16单片机的中央处理器/7
1.5 ATmega 16单片机的存储器组织/9
1.6 ATmega 16单片机的系统控制/12
1.7 实例小结/17
第2章 ATmega 16单片机的工作原理/19
2.1 ATmega 16单片机的I/O端口/19
2.1.1 I/O端口的工作原理/19
2.1.2 I/O端口相关的寄存器/20
2.2 ATmega 16单片机的定时/计数器0/23
2.2.1 T/C0的工作原理/23
2.2.2 T/C0相关的寄存器/25
2.3 ATmega 16单片机的定时/计数器1/28
2.3.1 T/C1的工作原理/28
2.3.2 T/C1相关的寄存器/31
2.4 ATmega 16单片机的定时/计数器2/36
2.4.1 T/C2的工作原理/36
2.4.2 T/C2相关的寄存器/38
2.5 ATmega 16单片机的EEPROM存储器/41
2.5.1 EEPROM存储器概述/41
2.5.2 EEPROM存储器相关的寄存器/42
2.6 ATmega 16单片机的模拟比较器/43
2.6.1 模拟比较器的结构及工作原理/43
2.6.2 模拟比较器相关的寄存器/44
2.7 ATmega 16单片机的A/D转换器/45
2.7.1 A/D转换器的工作原理/45
2.7.2 A/D转换器相关的寄存器/47
2.8 ATmega 16单片机的TWI接口/51
2.8.1 TWI接口的工作原理/51
2.8.2 TWI接口相关的寄存器/53
2.9 ATmega 16单片机的看门狗定时器/56
2.9.1 看门狗工作原理/56
2.9.2 看门狗定时器相关的寄存器/56
2.10 ATmega 16单片机的中断系统/57
2.10.1 ATmega 16单片机的中断系统/57
2.10.2 中断相关寄存器/59
2.11 实例小结/61
第3章 集成开发环境ICC AVR/63
3.1 集成开发环境ICC AVR简介/63
3.2 ICC AVR的安装和注册/63
3.2.1 安装ICC AVR/64
3.2.2 注册ICC AVR/64
3.3 ICC AVR的IDE环境/65
3.3.1 菜单栏/66
3.3.2 工具栏/68
3.3.3 编辑区/69
3.3.4 编译区/69
3.3.5 工程区/70
3.4 ICC AVR的设置/70
3.5 创建一个工程项目/73
3.6 ICC AVR的库函数/76
3.6.1 寄存器说明头文件/76
3.6.2 宏定义头文件/76
3.6.3 库函数头文件/76
3.7 ICC AVR硬件访问的C编程/80
3.7.1 ICC AVR支持的数据类型/80
3.7.2 访问程序存储器和数据存储器/81
3.7.3 位操作/81
3.7.4 访问UART/82
3.7.5 访问EEPROM/82
3.7.6 中断操作/83
3.8 实例小结/83
第4章 AVR单片机系统开发流程/85
4.1 需求分析/85
4.2 系统总体设计/86
4.2.1 设计方案描述/86
4.2.2 绘制工作总框图/87
4.2.3 总体结构设计/87
4.2.4 设计工作的筹备/87
4.3 系统硬件设计/88
4.3.1 元器件选择/88
4.3.2 电路设计/89
4.3.3 硬件电路的计算机辅助设计/90
4.3.4 单片机应用技术/92
4.3.5 硬件可靠性设计/95
4.4 系统软件设计/97
4.4.1 软件总体设计/97
4.4.2 程序设计/99
4.4.3 软件可靠性设计/100
4.5 调试与系统仿真/102
4.5.1 软件调试/102
4.5.2 系统仿真/105
4.6 AVR单片机程序下载/110
4.7 实例小结/112
第2篇 人机接口系统
第5章 交通灯控制系统设计/115
5.1 实例说明/115
5.2 设计思路分析/115
5.3 硬件设计/117
5.3.1 ATmega 16资源分配/117
5.3.2 电路原理图/118
5.4 软件设计/118
5.4.1 状态转换/118
5.4.2 时间显示/119
5.4.3 中断/120
5.4.4 模式转换/121
5.5 程序源代码/122
5.5.1 程序结构/122
5.5.2 程序源代码/122
5.6 实例小结/133
第6章 大屏幕LED显示系统设计/135
6.1 实例说明/135
6.2 设计思路分析/135
6.3 硬件设计/136
6.3.1 ATmega 16资源分配/136
6.3.2 电路原理图/137
6.4 软件设计/137
6.4.1 显示字模/137
6.4.2 显示控制/138
6.4.3 中断/139
6.5 程序源代码/139
6.5.1 程序结构/139
6.5.2 程序源代码/140
6.6 实例小结/149
第7章 字符型LCD显示应用设计/151
7.1 实例说明/151
7.2 设计思路分析/151
7.3 硬件设计/151
7.3.1 ATmega 16资源分配/152
7.3.2 电路原理图/152
7.3.3 主要元器件工作原理/152
7.4 软件设计/155
7.4.1 显示控制/156
7.4.2 按键侦测/156
7.4.3 中断/157
7.5 程序源代码/157
7.5.1 程序结构/157
7.5.2 程序源代码/158
7.6 实例小结/173
第8章 点阵型LCD显示应用设计/175
8.1 实例说明/175
8.2 设计思路分析/175
8.3 硬件设计/175
8.3.1 ATmega 16资源分配/176
8.3.2 电路原理图/176
8.3.3 主要元器件工作原理/176
8.4 软件设计/179
8.4.1 点阵型LCD显示原理/179
8.4.2 软件设计思路/180
8.4.3 主要程序流程图/181
8.5 程序源代码/182
8.5.1 程序结构/182
8.5.2 程序源代码/182
8.6 实例小结/202
第3篇 接口扩展与网络通信
第9章 I2C总线接口扩展设计/205
9.1 实例说明/205
9.2 设计思路分析/205
9.3 硬件设计/205
9.3.1 ATmega 16资源分配/205
9.3.2 电路原理图/206
9.3.3 主要元器件工作原理/206
9.4 软件设计/208
9.4.1 软件设计思路/208
9.4.2 主要程序流程/208
9.5 程序源代码/209
9.5.1 程序结构/209
9.5.2 程序源代码/210
9.6 实例小结/227
第10章 RS232通信接口应用设计/229
10.1 实例说明/229
10.2 设计思路分析/229
10.3 硬件设计/231
10.3.1 ATmega 16资源分配/231
10.3.2 电路原理图/231
10.3.3 主要元器件工作原理/232
10.4 软件设计/232
10.4.1 RS232通信协议结构/232
10.4.2 协议解析/233
10.4.3 数据格式转换/234
10.5 程序源代码/234
10.5.1 程序结构/234
10.5.2 程序源代码/235
10.6 实例小结/258
第11章 SPI总线与TLC2543接口设计/259
11.1 实例说明/259
11.2 设计思路分析/259
11.3 硬件设计/265
11.4 软件设计/266
11.5 实例小结/271
第12章 I2C总线读写外部存储器/273
12.1 实例说明/273
12.2 设计思路分析/273
12.3 硬件电路设计/278
12.4 软件设计/280
12.5 实例小结/283
第4篇 数据采集与测量系统
第13章 基于USB传输的数据采集系统/287
13.1 实例说明/287
13.2 系统方案与设备选型/287
13.2.1 系统方案设计/287
13.2.2 应用系统结构设计/288
13.2.3 设备选型/288
13.3 硬件设计/288
13.4 软件设计/302
13.5 实例小结/324
第14章 市电电压频率测量设计/325
14.1 实例说明/325
14.2 设计思路分析/325
14.3 硬件设计/326
14.3.1 ATmega 16资源分配/326
14.3.2 电路原理图/326
14.3.3 主要电路单元/327
14.4 软件设计/327
14.4.1 采样参数计算/327
14.4.2 主要程序流程/328
14.5 程序源代码/329
14.5.1 程序结构/329
14.5.2 程序源代码/330
14.6 实例小结/337
第5篇 综合应用系统
第15章 多任务模拟系统设计/341
15.1 实例说明/341
15.2 设计思路分析/341
15.3 硬件设计/342
15.3.1 ATmega 16资源分配/342
15.3.2 电路原理图/342
15.4 软件设计/343
15.4.1 内核设计/343
15.4.2 内核主要函数/344
15.4.3 任务接口/347
15.4.4 主要程序流程/348
15.5 程序源代码/349
15.5.1 程序结构/349
15.5.2 程序源代码/350
15.6 实例小结/372
第16章 LCD菜单综合系统设计/375
16.1 实例说明/375
16.2 设计思路分析/375
16.3 硬件设计/376
16.3.1 ATmega 16资源分配/376
16.3.2 电路原理图/376
16.4 软件设计/377
16.4.1 LCD显示设计/377
16.4.2 程序流程图/379
16.5 程序源代码/384
16.5.1 程序结构/384
16.5.2 程序源代码/385
16.6 实例小结/411
第17章 无线步测仪系统设计/413
17.1 实例说明/413
17.2 设计方案与设备选型/413
17.2.1 系统方案设计/413
17.2.2 应用系统结构设计/414
17.2.3 设备选型/414
17.3 硬件电路设计/415
17.3.1 加速度计电路设计/417
17.3.2 无线收发电路设计/420
17.3.3 基站电路设计/429
17.4 软件设计/430
17.4.1 软件结构设计/430
17.4.2 系统程序/432
17.5 系统集成/457
17.6 实例小结/457
……[看更多目录]
序言AVR单片机是Atmel公司于1997年推出的一款基于RISC指令构架的高性能、低功耗的8位单片机。AVR单片机分为低、中、高三档,分别为ATtiny系列、AT90系列和ATmega系列,它们的基本结构都比较相近。AVR单片机拥有精简指令集RISC,通过优选使用频率最高的简单指令,避免复杂指令,同时采用固定指令长度,减少指令格式和寻址方式等方法来缩短指令周期,提高处理器的运算速度。因此AVR系列的单片机具备高速处理能力,得到了许多用户的认可,特别在工业控制、数据采集与测量、网络通信开发方面得到了深入应用。
文摘第1篇AVR单片机基础知识
第1章AVR单片机的硬件结构
1.1 AVR单片机简介
AVR单片机是Atmel公司推出的一款基于RISC指令架构的高性能、低功耗的8位单片机。所谓精简指令集RISC(Reduced Instruction Set Computer)是20世纪90年代开发出来的,它是综合了半导体集成技术和软件技术性能的新型微处理器架构,是相对于复杂指令集CISC(Complex Instruction Set Computer)而言的。RISC先使用频率通过最高的简单指令、避免复杂指令、采用固定指令长度、减少指令格式和寻址方式等方法来缩短指令周期,提高处理器的运算速度。采用这种RISC结构,使得AVR系列的单片机具备1MIPS/MHz的高速处理能力。
AVR单片机的快速存取寄存器文件由32个通用寄存器组成。32个寄存器全部直接与运算逻辑单元(ALU)相连,每一个寄存器都可以代替累加器工作。这使得微处理器可以在执行当前指令时取出要执行的下一条指令,从而避免了传统的累加器结构造成累加器和存储器之间的数据传输瓶颈效应,提高了系统性能。
在传统的CISC结构中,单片机外部振荡器的时钟被分频降低到内部执行周期。AVR单片机没有对外部时钟分频,它用一个时钟周期来执行一条指令。
AVR单片机采用哈佛(Harvard)总线结构,程序存储器和数据存储器是分开的。微处理器直接访问全部程序存储器和数据存储器。
Atmel公司将高密度、非易失性存储器技术运用在了AVR单片机上面,使得AVR单片机都具有ISP(In System Programming)的功能。即使在程序运行时,也可以对系统进行重新编程。