AVR单片机GCC程序设计 - 中国高校教材图书网
|
书名: |
AVR单片机GCC程序设计
|
ISBN: | 7-81077-724-6 |
条码: | |
作者: |
佟长福
相关图书
|
装订: | 平装 |
印次: | 1-1 |
开本: | 16开 |
定价: |
¥28.00
折扣价:¥26.60
折扣:0.95
节省了1.4元
|
字数: |
381千字
|
出版社: |
北京航空航天大学出版社 |
页数: |
|
发行编号: | |
每包册数: |
|
出版日期: |
2006-01-01 |
|
内容简介: |
本书全面讲述基于AVRGCC的AVR单片机C语言程序设计。首先根据不同编译器对单片机存储器操作上的不同,详细介绍AVRGCC的操作存储器方法;随后以大量的实例程序演示AVR单片机内部集成功能模块的C语言程序设计方法。多数示例程序均基于ATmega8单片机,并在实际硬件上调试通过,对掌握和编程其他AVR器件具有较高的参考价值。 本书适合于有一定单片机和C语言基础知识的工程技术人员、高等院校相关专业师生使用。
|
作者简介: |
|
章节目录: |
第1章 概述
1.1 AVR单片机GCC开发概述1
1.1.1 AVR单片机介绍1
1.1.2 GCC编译器2
1.2 一个简单的例子3
1.3 用makefile管理项目5
1.3.1 make的调用6
1.3.2 makefile项目描述文件6
1.3.3 使用mfile生成合适的makefile10
1.4 开发环境的配置11
1.4.1 软件环境11
1.4.2 硬件环境14
1.5 实验板CAM815
1.5.1 特性15
1.5.2 电路原理图16
1.5.3 配置操作17
1.5.4 时钟源选择18
1.5.5 复位源选择19
1.5.6 使用板上下载线对器件编程19
1.5.7 配置时的几点注意事项20
第2章 存储器操作
2.1 AVR单片机存储器组织结构21
2.2 I/O寄存器操作21
2.2.1 I/O寄存器的读/写21
2.2.2 I/O寄存器的位操作24
2.2.3 I/O端口的应用24
2.3 SRAM内变量的使用25
2.4 在程序中访问FLASH程序存储器26
2.4.1 FLASH区整数变量应用27
2.4.2 FLASH区数组应用27
2.4.3 FLASH区字符串变量的应用28
2.5 EEPROM数据存储器操作29
2.6 AVRGCC段与再定位30
2.6.1 .text段31
2.6.2 .data段32
2.6.3 .bss段33
2.6.4 .eeprom段34
2.7 外部RAM的使用34
2.8 堆应用35
第3章 单片机C语言程序设计基础
3.1 启动模块38
3.2 C语言编译基础38
3.2.1 C语言两种文件39
3.2.2 C语言两种声明39
3.2.3 从源文件到可执行代码40
3.3 生成静态连接库43
3.4 模块化程序设计47
3.4.1 概述47
3.4.2 模块化程序设计的优点50
3.5 应用程序结构50
第4章 功能模块编程示例
4.1 中断服务程序51
4.2 定时器/计数器0的应用52
4.3 定时器/计数器1的应用56
4.3.1 一般模式56
4.3.2 比较匹配清零模式56
4.3.3 输入捕获功能56
4.3.4 PWM功能编程60
4.4 定时器/计数器2的应用62
4.5 看门狗定时器的应用62
4.6 模拟比较器64
4.7 A/D转换模块编程66
4.8 数码管显示程序设计71
4.9 键盘程序设计74
4.10 蜂鸣器控制78
第5章 串行异步收/发器的应用
5.1 串行异步通信简介79
5.2 UART程序设计80
5.2.1 模式选择80
5.2.2 UART通信参数设置81
5.2.3 UART收/发操作与两种程序设计方式82
5.3 与计算机间的串行通信86
5.4 avrlibc标准I/O流描述88
5.5 利用标准I/O流调试程序90
5.6 格式化字符串监测工具PrintMonitor92
5.7 最小化的格式化打印函数94
第6章 CAM8上实现AT89S52下载编程器
6.1 编程原理98
6.2 LuckyProg2004概述99
6.2.1 简介99
6.2.2 器件配置99
6.2.3 数据传送协议101
6.2.4 编程框架106
6.3 AT89S52 ISP功能简介118
6.3.1 串行数据的输入与输出时序118
6.3.2 串行编程算法118
6.3.3 编程指令118
6.4 下位机程序设计119
6.4.1 延时功能函数119
6.4.2 程序清单120
第7章 硬件TWI端口编程
7.1 TWI模块概述134
7.2 主控模式操作实时时钟DS1307135
7.2.1 实时时钟芯片DS1307介绍135
7.2.2 DS1307实验电路136
7.2.3 DS1307操作程序137
7.3 两个mega8间的TWI通信146
7.3.1 测试电路146
7.3.2 程序设计146
第8章 BootLoader功能应用
8.1 BootLoader功能介绍153
8.2 avrlibc对BootLoader的支持153
8.3 BootLoader应用实例154
8.3.1 测试硬件154
8.3.2 引导加载程序155
8.3.3 上位机程序159
8.4 基于LuckyProg2004的BootLoader程序160
8.4.1 程序清单160
8.4.2 LuckyProg2004配置文件的生成166
第9章 汇编语言支持
9.1 C语言代码中内联汇编语言程序168
9.1.1 内联汇编声明168
9.1.2 汇编指令169
9.1.3 输入/输出操作数170
9.1.4 Clobber172
9.1.5 汇编宏应用173
9.2 独立的汇编语言支持174
9.2.1 avrlibc汇编语言程序示例174
9.2.2 编译176
9.3 C语言与汇编语言混合编程176
9.3.1 C编译器使用寄存器约定176
9.3.2 C编译器函数调用规则177
9.3.3 在C语言程序中调用汇编语言函数177
9.3.4 在汇编语言程序中调用C语言函数或访问C语言变量179
第10章 C++语言支持
10.1 环境配置181
10.2 调用C语言函数182
10.3 摄像云台视角控制器的设计183
10.3.1 硬件电路183
10.3.2 程序设计183
10.3.3 控制端测试程序190
第11章 应用实例
11.1 双基色LED显示屏控制191
11.1.1 简介191
11.1.2 显示原理191
11.1.3 程序设计193
11.2 工作小时计的制作206
11.2.1 简介206
11.2.2 硬件电路207
11.2.3 液晶显示模块208
11.2.4 程序设计210
11.3 电话远程控制系统220
11.3.1 简介220
11.3.2 自动摘机与提示音输出电路220
11.3.3 振铃检测电路221
11.3.4 DTMF信号解码及主控制电路222
11.3.5 软件设计223
第12章 实时操作系统AVRX应用
12.1 AVRX概述231
12.2 应用程序结构232
12.2.1 任务及堆栈232
12.2.2 时钟节拍和中断234
12.2.3 主程序235
12.3 编译AVRX236
12.3.1 编译内核236
12.3.2 编译应用程序237
12.4 信号量237
12.5 定时器240
12.6 消息243
12.7 定时消息发送器246
12.8 AVRX对EEPROM的支持249
12.9 AVRX调试接口249
附录A AVRGCC选项
A.1 指定目标CPU类253
A.2 选择通用编译器选项256
A.3 avras汇编器选项257
A.4 连接器avrld选项258
附录B Intel HEX文件格式描述
参考文献
|
精彩片段: |
|
书 评: |
|
其 它: |
|
|
|