微信扫一扫,移动浏览光盘
简介
本书以ATMEL公司AVR单片机ATmegal6为蓝本,由浅人深,软硬结合,全面系统地介绍基于单片机的嵌入式系统的原理与结构,开发环境与工具,各种接口与功能单元应用的硬件设计思想和软件编写方法。
本书以夯实基础,面向应用,理论与实践、方法与实现紧密结合为主线展开,根据AVR的运行速度快,资源丰富,功能强大,以串行扩展为主等显著特点,采用C语言作为系统软件开发平台,以由简到繁、循序渐进、螺旋式上升的方式进行编排。在讲解原理和设计方法的同时,还穿插介绍相关的经验、技巧与注意事项,有很强的实用性和指导性。各章还配有问题思考、实践练习及相关参考文献和资料,供课后复习、实践、开拓知识面及进一步深入研究、提高用。
本书附带光盘收录了书中所有例程源代码、芯片技术资料、相关技术规范和协议,以及大量参考文献和应用设计参考。书中还介绍了适合初、中级水乎学习人员使用,具有模块独立化、简单、开放、灵活等特点的“AVR-51多功能实验开发板”,既配合本书的教学实践,又适用于产品的前期开发。
本书可作为高等院校电子、自动化、仪器仪表和计算机等相关专业基于单片机的嵌入式系统课程的教材,也可作为AVR单片机的培训教材,供相关技术人员学习和参考。
目录
书名页
版权页
前言页
目录页
第1篇 基础与入门
第1章 单片机嵌入式系统概述
1.1 嵌入式系统简介
1.1.1 嵌入式计算机系统
1.1.2 单片机嵌入式系统
1.1.3 单片机的发展历史
1.1.4 单片机的发展趋势
1.2 单片机嵌入式系统的结构与应用领域
1.2.1 单片机嵌入式系统的结构
1.2.2 单片机嵌入式系统的应用领域
1.3 AVR单片机简介
1.3.1 ATMEL公司的单片机简介
1.3.2 AVR单片机的主要特点
1.3.3 AVR单片机系列简介
1.3.4 AVR与51单片机
思考与练习
第2章 AVR单片机的基本结构
2.1 单片机的基本组成
2.1.1 单片机的基本组成结构
2.1.2 单片机的基本单元与作用
2.2 ATmega16单片机的组成
2.2.1 AVR单片机的内核结构
2.2.2 ATmega16的特点
2.2.3 ATmega16的外部引脚与封装
2.3 ATmega16单片机的内部结构
2.3.1 中央处理器CPU
2.3.2 系统时钟部件
2.3.3 CPU的工作时序
2.3.4 存储器
2.3.5 I/O端口
2.4 存储器结构和地址空间
2.4.1 支持ISP的Flash程序存储器
2.4.2 数据存储器SRAM空间
2.4.3 内部EEPROM存储器
2.5 通用寄存器组与I/O寄存器
2.5.1 通用寄存器组
2.5.2 I/O寄存器
2.5.3 状态寄存器和堆栈指针寄存器
2.6 ATmega16单片机的工作状态
2.6.1 AVR单片机最小系统
2.6.2 AVR的复位源和复位方式
2.6.3 对AVR的编程下载
2.6.4 ATmega16的熔丝位
2.6.5 AVR单片机的工作状态
2.6.6 支持ISP编程的最小系统设计
2.7 AVR单片机内部资源的扩展和剪裁
思考与练习
第3章 AVR的指令与汇编系统
3.1 ATmega16指令综述
3.1.1 指令格式及3种表示方式
3.1.2 AVR指令系统中使用的符号
3.1.3 AVR指令的寻址方式和寻址空间
3.1.4 AVR指令操作结果对标志位的影响
3.2 算术和逻辑指令
3.2.1 加法指令
3.2.2 减法指令
3.2.3 取反码指令
3.2.4 取补码指令
3.2.5 比较指令
3.2.6 逻辑“与”指令
3.2.7 逻辑“或”指令
3.2.8 逻辑“异或”指令
3.2.9 乘法指令
3.3 跳转指令
3.3.1 无条件跳转指令
3.3.2 条件跳转指令
3.3.3 子程序调用和返回指令
3.4 数据传送指令
3.4.1 直接寻址数据传送指令
3.4.2 间接寻址数据传送指令
3.4.3 从程序存储器中取数装入寄存器指令
3.4.4 写程序存储器指令
3.4.5 I/O口数据传送指令
3.4.6 堆栈操作指令
3.5 位操作和位测试指令
3.5.1 带进位逻辑操作指令
3.5.2 位变量传送指令
3.5.3 位变量修改指令
3.6 MCU控制指令
3.7 AVR汇编语言系统
3.7.1 汇编语言语句格式
3.7.2 汇编器伪指令
3.7.3 表达式
3.7.4 器件定义头文件m16def.inc
第4章 AVR单片机的系统设计与开发工具
4.1 单片机嵌入式应用系统设计
4.1.1 单片机嵌入式系统开发所需的基础知识和技能
4.1.2 单片机嵌入式系统开发过程
4.2 单片机嵌入式系统的开发工具与环境
4.2.1 单片机嵌入式系统的程序设计语言
4.2.2 单片机嵌入式系统的开发软件平台
4.2.3 单片机嵌入式系统的硬件开发工具
4.2.4 AVR单片机嵌入式系统的软件开发平台
4.2.5 AVR实验开发板
4.3 自制ISP下载电缆
4.4 AVR开发环境的建立
4.4.1 AVR研发型开发环境
4.4.2 AVR学习型实验开发环境
思考与练习
第5章 实战练习(一)
5.1 秒节拍显示器系统的设计
5.1.1 秒节拍显示器硬件设计
5.1.2 秒节拍显示器软件设计思路
5.1.3 秒节拍显示器汇编源程序
5.1.4 通用延时子程序分析
5.2 AVR Studio汇编语言集成开发环境的使用
5.2.1 AVR Studio和其他辅助工具的安装
5.2.2 系统工程文件与AVR汇编源程序文件的建立、编译
5.2.3 使用软件模拟仿真调试程序
5.3 CVAVR+AVR Studio——高级语言集成开发环境的使用
5.3.1 秒节拍显示器的高级C语言源程序
5.3.2 系统工程文件与源程序文件的建立、编译
5.3.3 在CVAVR中使用AVR Studio进行软件模拟仿真调试程序
5.4 AVR熔丝位的设置和执行代码下载
5.4.1 AVR-51多功能板的硬件连接
5.4.2 AVR熔丝位的配置
5.4.3 执行代码文件的下载
5.5 一个比较复杂的AVR汇编语言实例
5.5.1 系统功能与硬件设计
5.5.2 AVR汇编源代码
思考与练习
第2篇 基本功能单元的应用
第6章 通用I/O接口的基本结构与输出应用
6.1 通用I/O接口的基本结构与特性
6.1.1 I/O接口的基本结构
6.1.2 I/O接口寄存器
6.1.3 通用数字I/O接口的设置与编程
6.2 通用I/O接口的输出应用
6.2.1 通用I/O接口的输出设计要点
6.2.2 LED发光二极管的控制
6.2.3 继电器控制
6.2.4 步进电机控制
6.3 LED数码显示器的应用
6.3.1 单个LED数码管控制
6.3.2 多位LED数码管显示
6.3.3 点阵LED显示控制
6.4 LCD液晶显示器的应用
6.4.1 LCD的特点与分类
6.4.2 通用点阵字符LCD显示器的应用
思考与练习
第7章 中断系统与基本应用
7.1 中断的基本概念
7.1.1 中断处理过程
7.1.2 中断源、中断信号和中断向量
7.1.3 中断优先级和中断嵌套
7.1.4 中断响应条件与中断控制
7.2 ATmega16的中断系统
7.2.1 ATmega16的中断源和中断向量
7.2.2 ATmega16的中断控制
7.2.3 AVR的中断响应过程
7.3 中断服务程序的编写
7.3.1 汇编语言AVR中断程序的编写
7.3.2 Code Vision中断程序的编写
7.4 ATmega16的外部中断
7.4.1 外部中断的触发方式和特点
7.4.2 与外部中断相关的寄存器和标志位
7.5 外部中断应用实例
思考与练习
第8章 定时/计数器的结构与应用
8.1 定时/计数器的结构
8.1.1 8位定时/计数器T/C0的结构
8.1.2 8位T/C0的工作模式
8.1.3 8位T/C0的计数工作时序
8.2 8位定时/计数器T/C0的应用
8.2.1 外部事件计数器
8.2.2 定时器应用设计
8.3 PWM脉宽调制波的产生和应用
8.3.1 PWM脉宽调制波
8.3.2 基于比较匹配输出的脉冲宽度调制PWM
8.4 16位定时/计数器T/C1的应用
8.4.1 16位T/C1增强功能介绍
8.4.2 16位T/C1应用示例
思考与练习
第9章 键盘输入接口与状态机设计
9.1 通用I/O数字输入接口设计
9.1.1 I/O输入接口硬件设计要点
9.1.2 I/O输入接口软件设计要点
9.2 基于状态机的按键输入接口设计
9.2.1 简单的按键输入硬件接口与分析
9.2.2 基于状态机的按键输入软件接口设计
9.3 矩阵键盘输入接口设计
9.3.1 矩阵键盘的工作原理和扫描确认方式
9.3.2 定时扫描方式的键盘接口程序
思考与练习
第10章 模拟比较器和ADC接口
10.1 模拟比较器
10.1.1 与模拟比较器相关的寄存器和标志位
10.1.2 模拟比较器的应用设计
10.2 模/数转换器ADC
10.2.1 10位ADC结构
10.2.2 与ADC相关的I/O寄存器
10.2.3 ADC应用设计要点
10.2.4 ADC的应用设计
10.2.5 ADC应用设计的深入讨论
思考与练习
第11章 实践练习(二)
11.1 频率测量和简单频率计的设计与实现
11.1.1 频率测量原理
11.1.2 测频法测量频率
11.1.3 测周法测量频率
11.1.4 频率测量小结
11.2 基于T/C1捕捉功能实现高精度的周期测量
11.3 带校时和音乐报时功能时钟的设计与实现
思考与练习
第3篇 串行接口与通信
第12章 串行数据接口概述
12.1 串行接口与串行通信基础知识
12.1.1 并行传输
12.1.2 串行传输
12.1.3 常见的串行传输和通信接口
12.2 数字I/O口的串行扩展
12.2.1 串行扩展并行输出口
12.2.2 串行扩展并行输入口
12.2.3 数字I/O口串行扩展设计要点
思考与练习
第13章 异步通信与USART接口基础
13.1 异步传输的基本概念
13.1.1 异步传输的字符数据帧格式
13.1.2 异步通信
13.2 AVR的异步传输接口USART
13.2.1 概述
13.2.2 串行时钟发生器
13.2.3 数据帧格式
13.2.4 USART寄存器
13.2.5 串行通信波特率的设置与偏差
13.3 USART的基本操作
13.3.1 USART的初始化
13.3.2 数据发送
13.3.3 数据接收
13.4 基于USART接口基本通信的实现与测试
13.4.1 USART的数据发送和接收
13.4.2 RS-232C总线标准介绍
13.4.3 AVR系统的RS-232C传输接口的实现与测试
13.4.4 异步通信中易产生的问题与AVR系统时钟的选择
13.5 AVR USART接口特性的进一步说明
13.5.1 使用独立的高精度波特率发生器
13.5.2 数据接收采用3级接收缓冲器结构
13.5.3 硬件自动处理校验位及错误检测
13.5.4 USART数据接收的硬件扫描检测和接收时序
思考与练习
第14章 USART实用设计基础
14.1 异步通信接口应用设计要点
14.1.1 接口的硬件设计
14.1.2 上层应用通信协议和规范的制定
14.1.3 典型USART底层驱动+中间层软件结构示例
14.2 一个USART应用的完整示例
14.2.1 硬件系统构成
14.2.2 通信协议的制定
14.2.3 下位机系统程序
14.2.4 测试和上位机程序
14.3 基于异步通信接口实现多机通信
14.3.1 多机通信实现原理
14.3.2 多机通信实现方式一
14.3.3 多机通信的通用实现方式
思考与练习
第15章 串行SPI接口应用
15.1 SPI串行总线介绍
15.1.1 SPI总线的组成
15.1.2 SPI通信的工作模式和时序
15.1.3 多机SPI通信
15.2 AVR的SPI接口原理与使用
15.2.1 SPI接口的结构和功能
15.2.2 与SPI相关的寄存器
15.2.3 SPI接口的设计应用要点
15.3 SPI接口应用实例
15.3.1 SPI接口基本方式的应用
15.3.2 典型SPI底层驱动+中间层软件结构示例
思考与练习
第16章 串行TWI(I^2C)接口应用
16.1 I^2C串行总线介绍
16.1.1 I^2C总线结构和基本特性
16.1.2 I^2C总线时序与数据传输
16.1.3 I^2C总线寻址与通信过程
16.2 AVR的TWI(I^2C)接口与使用
16.2.1 TWI模块概述
16.2.2 TWI寄存器
16.2.3 使用TWI总线
16.2.4 TWI(I^2C)接口设计应用要点
16.3 TWI接口应用实例
16.3.1 24C256的结构特点
16.3.2 AVR读/写24C256应用设计
16.4 专用键盘/LED驱动器ZLG7290的应用
16.4.1 ZLG7290简介
16.4.2 AVR与ZLG7290的连接
思考与练习
第4篇 进入实战
第17章 AVR片内资源应用补遗
17.1 AVR熔丝位的功能与配置
17.1.1 AVR熔丝位的正确配置
17.1.2 ATmega16中重要熔丝位的配置
17.1.3 JTAG口的使用与配置
17.1.4 提高系统可靠性的熔丝位配置
17.1.5 片内WDT的应用
17.2 片内EEPROM的应用
17.2.1 EEPROM的读/写访问操作
17.2.2 寄存器描述
17.2.3 简单的读/写EEPROM例程
17.2.4 高级语言开发环境中使用EEPROM
17.3 外部并行扩展接口
17.3.1 关于单片机嵌入式系统的并行接口扩展问题的讨论
17.3.2 AVR的并行接口扩展
17.4 AVR中断应用设计要点
17.4.1 AVR中断设计注意点
17.4.2 AVR的中断优先级与中断嵌套处理
17.4.3 高级语言开发环境中的中断服务程序的编写
17.5 AVR实战应用要点
第18章 迎奥运倒计时时钟设计实例
18.1 系统功能分析
18.2 应用系统设计
18.2.1 系统方案设计
18.2.2 应用系统结构设计
18.2.3 系统面板设计
18.2.4 DS1302介绍
18.3 控制系统的硬件设计
18.4 控制系统软件设计要点
附录A ATmega16熔丝位汇总
附录B AVR-51多功能实验开发板电原理图
附录C 本书所附光盘内容简介
附录D 自制USBISP下载线
D.1 问题的提出
D.2 自制USB下载线
参考文献
版权页
前言页
目录页
第1篇 基础与入门
第1章 单片机嵌入式系统概述
1.1 嵌入式系统简介
1.1.1 嵌入式计算机系统
1.1.2 单片机嵌入式系统
1.1.3 单片机的发展历史
1.1.4 单片机的发展趋势
1.2 单片机嵌入式系统的结构与应用领域
1.2.1 单片机嵌入式系统的结构
1.2.2 单片机嵌入式系统的应用领域
1.3 AVR单片机简介
1.3.1 ATMEL公司的单片机简介
1.3.2 AVR单片机的主要特点
1.3.3 AVR单片机系列简介
1.3.4 AVR与51单片机
思考与练习
第2章 AVR单片机的基本结构
2.1 单片机的基本组成
2.1.1 单片机的基本组成结构
2.1.2 单片机的基本单元与作用
2.2 ATmega16单片机的组成
2.2.1 AVR单片机的内核结构
2.2.2 ATmega16的特点
2.2.3 ATmega16的外部引脚与封装
2.3 ATmega16单片机的内部结构
2.3.1 中央处理器CPU
2.3.2 系统时钟部件
2.3.3 CPU的工作时序
2.3.4 存储器
2.3.5 I/O端口
2.4 存储器结构和地址空间
2.4.1 支持ISP的Flash程序存储器
2.4.2 数据存储器SRAM空间
2.4.3 内部EEPROM存储器
2.5 通用寄存器组与I/O寄存器
2.5.1 通用寄存器组
2.5.2 I/O寄存器
2.5.3 状态寄存器和堆栈指针寄存器
2.6 ATmega16单片机的工作状态
2.6.1 AVR单片机最小系统
2.6.2 AVR的复位源和复位方式
2.6.3 对AVR的编程下载
2.6.4 ATmega16的熔丝位
2.6.5 AVR单片机的工作状态
2.6.6 支持ISP编程的最小系统设计
2.7 AVR单片机内部资源的扩展和剪裁
思考与练习
第3章 AVR的指令与汇编系统
3.1 ATmega16指令综述
3.1.1 指令格式及3种表示方式
3.1.2 AVR指令系统中使用的符号
3.1.3 AVR指令的寻址方式和寻址空间
3.1.4 AVR指令操作结果对标志位的影响
3.2 算术和逻辑指令
3.2.1 加法指令
3.2.2 减法指令
3.2.3 取反码指令
3.2.4 取补码指令
3.2.5 比较指令
3.2.6 逻辑“与”指令
3.2.7 逻辑“或”指令
3.2.8 逻辑“异或”指令
3.2.9 乘法指令
3.3 跳转指令
3.3.1 无条件跳转指令
3.3.2 条件跳转指令
3.3.3 子程序调用和返回指令
3.4 数据传送指令
3.4.1 直接寻址数据传送指令
3.4.2 间接寻址数据传送指令
3.4.3 从程序存储器中取数装入寄存器指令
3.4.4 写程序存储器指令
3.4.5 I/O口数据传送指令
3.4.6 堆栈操作指令
3.5 位操作和位测试指令
3.5.1 带进位逻辑操作指令
3.5.2 位变量传送指令
3.5.3 位变量修改指令
3.6 MCU控制指令
3.7 AVR汇编语言系统
3.7.1 汇编语言语句格式
3.7.2 汇编器伪指令
3.7.3 表达式
3.7.4 器件定义头文件m16def.inc
第4章 AVR单片机的系统设计与开发工具
4.1 单片机嵌入式应用系统设计
4.1.1 单片机嵌入式系统开发所需的基础知识和技能
4.1.2 单片机嵌入式系统开发过程
4.2 单片机嵌入式系统的开发工具与环境
4.2.1 单片机嵌入式系统的程序设计语言
4.2.2 单片机嵌入式系统的开发软件平台
4.2.3 单片机嵌入式系统的硬件开发工具
4.2.4 AVR单片机嵌入式系统的软件开发平台
4.2.5 AVR实验开发板
4.3 自制ISP下载电缆
4.4 AVR开发环境的建立
4.4.1 AVR研发型开发环境
4.4.2 AVR学习型实验开发环境
思考与练习
第5章 实战练习(一)
5.1 秒节拍显示器系统的设计
5.1.1 秒节拍显示器硬件设计
5.1.2 秒节拍显示器软件设计思路
5.1.3 秒节拍显示器汇编源程序
5.1.4 通用延时子程序分析
5.2 AVR Studio汇编语言集成开发环境的使用
5.2.1 AVR Studio和其他辅助工具的安装
5.2.2 系统工程文件与AVR汇编源程序文件的建立、编译
5.2.3 使用软件模拟仿真调试程序
5.3 CVAVR+AVR Studio——高级语言集成开发环境的使用
5.3.1 秒节拍显示器的高级C语言源程序
5.3.2 系统工程文件与源程序文件的建立、编译
5.3.3 在CVAVR中使用AVR Studio进行软件模拟仿真调试程序
5.4 AVR熔丝位的设置和执行代码下载
5.4.1 AVR-51多功能板的硬件连接
5.4.2 AVR熔丝位的配置
5.4.3 执行代码文件的下载
5.5 一个比较复杂的AVR汇编语言实例
5.5.1 系统功能与硬件设计
5.5.2 AVR汇编源代码
思考与练习
第2篇 基本功能单元的应用
第6章 通用I/O接口的基本结构与输出应用
6.1 通用I/O接口的基本结构与特性
6.1.1 I/O接口的基本结构
6.1.2 I/O接口寄存器
6.1.3 通用数字I/O接口的设置与编程
6.2 通用I/O接口的输出应用
6.2.1 通用I/O接口的输出设计要点
6.2.2 LED发光二极管的控制
6.2.3 继电器控制
6.2.4 步进电机控制
6.3 LED数码显示器的应用
6.3.1 单个LED数码管控制
6.3.2 多位LED数码管显示
6.3.3 点阵LED显示控制
6.4 LCD液晶显示器的应用
6.4.1 LCD的特点与分类
6.4.2 通用点阵字符LCD显示器的应用
思考与练习
第7章 中断系统与基本应用
7.1 中断的基本概念
7.1.1 中断处理过程
7.1.2 中断源、中断信号和中断向量
7.1.3 中断优先级和中断嵌套
7.1.4 中断响应条件与中断控制
7.2 ATmega16的中断系统
7.2.1 ATmega16的中断源和中断向量
7.2.2 ATmega16的中断控制
7.2.3 AVR的中断响应过程
7.3 中断服务程序的编写
7.3.1 汇编语言AVR中断程序的编写
7.3.2 Code Vision中断程序的编写
7.4 ATmega16的外部中断
7.4.1 外部中断的触发方式和特点
7.4.2 与外部中断相关的寄存器和标志位
7.5 外部中断应用实例
思考与练习
第8章 定时/计数器的结构与应用
8.1 定时/计数器的结构
8.1.1 8位定时/计数器T/C0的结构
8.1.2 8位T/C0的工作模式
8.1.3 8位T/C0的计数工作时序
8.2 8位定时/计数器T/C0的应用
8.2.1 外部事件计数器
8.2.2 定时器应用设计
8.3 PWM脉宽调制波的产生和应用
8.3.1 PWM脉宽调制波
8.3.2 基于比较匹配输出的脉冲宽度调制PWM
8.4 16位定时/计数器T/C1的应用
8.4.1 16位T/C1增强功能介绍
8.4.2 16位T/C1应用示例
思考与练习
第9章 键盘输入接口与状态机设计
9.1 通用I/O数字输入接口设计
9.1.1 I/O输入接口硬件设计要点
9.1.2 I/O输入接口软件设计要点
9.2 基于状态机的按键输入接口设计
9.2.1 简单的按键输入硬件接口与分析
9.2.2 基于状态机的按键输入软件接口设计
9.3 矩阵键盘输入接口设计
9.3.1 矩阵键盘的工作原理和扫描确认方式
9.3.2 定时扫描方式的键盘接口程序
思考与练习
第10章 模拟比较器和ADC接口
10.1 模拟比较器
10.1.1 与模拟比较器相关的寄存器和标志位
10.1.2 模拟比较器的应用设计
10.2 模/数转换器ADC
10.2.1 10位ADC结构
10.2.2 与ADC相关的I/O寄存器
10.2.3 ADC应用设计要点
10.2.4 ADC的应用设计
10.2.5 ADC应用设计的深入讨论
思考与练习
第11章 实践练习(二)
11.1 频率测量和简单频率计的设计与实现
11.1.1 频率测量原理
11.1.2 测频法测量频率
11.1.3 测周法测量频率
11.1.4 频率测量小结
11.2 基于T/C1捕捉功能实现高精度的周期测量
11.3 带校时和音乐报时功能时钟的设计与实现
思考与练习
第3篇 串行接口与通信
第12章 串行数据接口概述
12.1 串行接口与串行通信基础知识
12.1.1 并行传输
12.1.2 串行传输
12.1.3 常见的串行传输和通信接口
12.2 数字I/O口的串行扩展
12.2.1 串行扩展并行输出口
12.2.2 串行扩展并行输入口
12.2.3 数字I/O口串行扩展设计要点
思考与练习
第13章 异步通信与USART接口基础
13.1 异步传输的基本概念
13.1.1 异步传输的字符数据帧格式
13.1.2 异步通信
13.2 AVR的异步传输接口USART
13.2.1 概述
13.2.2 串行时钟发生器
13.2.3 数据帧格式
13.2.4 USART寄存器
13.2.5 串行通信波特率的设置与偏差
13.3 USART的基本操作
13.3.1 USART的初始化
13.3.2 数据发送
13.3.3 数据接收
13.4 基于USART接口基本通信的实现与测试
13.4.1 USART的数据发送和接收
13.4.2 RS-232C总线标准介绍
13.4.3 AVR系统的RS-232C传输接口的实现与测试
13.4.4 异步通信中易产生的问题与AVR系统时钟的选择
13.5 AVR USART接口特性的进一步说明
13.5.1 使用独立的高精度波特率发生器
13.5.2 数据接收采用3级接收缓冲器结构
13.5.3 硬件自动处理校验位及错误检测
13.5.4 USART数据接收的硬件扫描检测和接收时序
思考与练习
第14章 USART实用设计基础
14.1 异步通信接口应用设计要点
14.1.1 接口的硬件设计
14.1.2 上层应用通信协议和规范的制定
14.1.3 典型USART底层驱动+中间层软件结构示例
14.2 一个USART应用的完整示例
14.2.1 硬件系统构成
14.2.2 通信协议的制定
14.2.3 下位机系统程序
14.2.4 测试和上位机程序
14.3 基于异步通信接口实现多机通信
14.3.1 多机通信实现原理
14.3.2 多机通信实现方式一
14.3.3 多机通信的通用实现方式
思考与练习
第15章 串行SPI接口应用
15.1 SPI串行总线介绍
15.1.1 SPI总线的组成
15.1.2 SPI通信的工作模式和时序
15.1.3 多机SPI通信
15.2 AVR的SPI接口原理与使用
15.2.1 SPI接口的结构和功能
15.2.2 与SPI相关的寄存器
15.2.3 SPI接口的设计应用要点
15.3 SPI接口应用实例
15.3.1 SPI接口基本方式的应用
15.3.2 典型SPI底层驱动+中间层软件结构示例
思考与练习
第16章 串行TWI(I^2C)接口应用
16.1 I^2C串行总线介绍
16.1.1 I^2C总线结构和基本特性
16.1.2 I^2C总线时序与数据传输
16.1.3 I^2C总线寻址与通信过程
16.2 AVR的TWI(I^2C)接口与使用
16.2.1 TWI模块概述
16.2.2 TWI寄存器
16.2.3 使用TWI总线
16.2.4 TWI(I^2C)接口设计应用要点
16.3 TWI接口应用实例
16.3.1 24C256的结构特点
16.3.2 AVR读/写24C256应用设计
16.4 专用键盘/LED驱动器ZLG7290的应用
16.4.1 ZLG7290简介
16.4.2 AVR与ZLG7290的连接
思考与练习
第4篇 进入实战
第17章 AVR片内资源应用补遗
17.1 AVR熔丝位的功能与配置
17.1.1 AVR熔丝位的正确配置
17.1.2 ATmega16中重要熔丝位的配置
17.1.3 JTAG口的使用与配置
17.1.4 提高系统可靠性的熔丝位配置
17.1.5 片内WDT的应用
17.2 片内EEPROM的应用
17.2.1 EEPROM的读/写访问操作
17.2.2 寄存器描述
17.2.3 简单的读/写EEPROM例程
17.2.4 高级语言开发环境中使用EEPROM
17.3 外部并行扩展接口
17.3.1 关于单片机嵌入式系统的并行接口扩展问题的讨论
17.3.2 AVR的并行接口扩展
17.4 AVR中断应用设计要点
17.4.1 AVR中断设计注意点
17.4.2 AVR的中断优先级与中断嵌套处理
17.4.3 高级语言开发环境中的中断服务程序的编写
17.5 AVR实战应用要点
第18章 迎奥运倒计时时钟设计实例
18.1 系统功能分析
18.2 应用系统设计
18.2.1 系统方案设计
18.2.2 应用系统结构设计
18.2.3 系统面板设计
18.2.4 DS1302介绍
18.3 控制系统的硬件设计
18.4 控制系统软件设计要点
附录A ATmega16熔丝位汇总
附录B AVR-51多功能实验开发板电原理图
附录C 本书所附光盘内容简介
附录D 自制USBISP下载线
D.1 问题的提出
D.2 自制USB下载线
参考文献
AVR单片机嵌入式系统原理与应用实践
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×
亲爱的云图用户,
光盘内的文件都可以直接点击浏览哦
无需下载,在线查阅资料!