书籍详情
零基础学AVR单片机:基于ATmega16.汇编C语言(附光盘)
作者:徐益民 等编著
出版社:机械工业出版社
出版时间:2011-01-01
ISBN:9787111322931
定价:¥39.00
购买这本书可以去
内容简介
《零基础学AVR单片机:基于ATmega16、汇编及C语言》主要内容包括15章:单片机概述、AVR单片机的开发工具、AVR单片机C语言、ATmegal6单片机基本结构、AVR的指令系统与汇编系统、ATmegal6的I/O端口、ATmegal6的中断系统、ATmegal6的复位系统及睡眠模式的设置、定时器/计数器O、定时器/计数器1、A/D转换器、同步串行SPI接口、USART串行口的应用、TWI接口的应用、综合设计实例等。全书重点突出,层次分明,注重知识的系统性、针对性和先进性;注重理论与实践联系,培养工程应用能力。另外,《零基础学AVR单片机:基于ATmega16、汇编及C语言》还配有部分实验的视频录像。《零基础学AVR单片机:基于ATmega16、汇编及C语言》可作为普通高等院校自动化、电气工程、测控技术与仪器、电子科学与技术、微电子学以及光信息科学与技术等专业的本科生教材,也可作为相关工程技术人员的学习参考用书。
作者简介
暂缺《零基础学AVR单片机:基于ATmega16.汇编C语言(附光盘)》作者简介
目录
前言
第一篇 开发基础
第1章 单片机概述
1.1 什么是单片机
1.2 单片机的应用
1.3 ATMEL的AVR单片机
1.4 AVR单片机的家族成员
1.4.1 AVR单片机的型号
1.4.2 AVR单片机的选型
1.5 ATmegal6单片机概述
1.5.1 ATmegal6单片机的主要性能
1.5.2 ATmegal6单片机的引脚
说明
1.6 实践拓展
1.7 思考与练习
第2章 AVR单片机的开发工具
2.1 AVR单片机程序开发环境
2.1.1 GCCAVR开发环境的安装
2.1.2 智峰下载软件
2.2 AVR单片机的开发语言
2.3 实验设备
2.3.1 本书所用的实验开发板
2.3.2 下载线
2.4 LED小灯闪烁实验过程演示
2.5 实践拓展
2.6 思考与练习
第二篇 结构与编程
第3章AVR单片机C语言
3.1 C语言的结构
3.2 C语言的基本字符、标识符和关键字
3.3 C语言的基本数据类型
3.4 函数
3.4.1 系统库函数
3.4.2 用户自定义函数
3.5 数组
3.5.1 一维数组
3.5.2 二维数组
3.6 指针
3.7 结构体
3.7.1 结构体类型的声明和变量的定义
3.7.2 结构体变量的初始化
3.7.3 对结构体各成员的访问与使用
3.8 共用体
3.9 实践拓展.
3.10 思考与练习
第4章 ATmegal6单片机基本结构
4.1 ATmegal6的内部结构
4.2 ATmegal6内存储器结构
4.2.1 A17megal6的程序存储器
4.2.2 ATmegal6的数据存储器
4.3 状态寄存器——SREG
4.4 ATmegal6的封装和引脚功能
4.5 ATmegal6的电源电路和复位电路
4.6 ATmegal6的时钟电路
4.7 实践拓展——最小系统设计
4.8 思考与练习
第5章 AVR的指令系统与汇编系统
5.1 A17megal6指令概述
5.1.1 指令格式
5.1.2 指令的表示形式
5.1.3 指令的分类
5.1.4 AVR指令系统中的名词
5.1.5 AVR汇编语言系统
5.2 AVR指令系统的寻址方式
5.3 数据传送指令
5.3.1 直接寻址数据传送指令
5.3.2 间接寻址数据传送指令
5.3.3 从程序存储器中取数装入寄存器指令
5.3.4 写程序存储器指令
5.3.5 I/O口数据传送
5.3.6 堆栈操作指令
5.4 算术和逻辑指令
5.4.1 加法指令
5.4.2 减法指令
5.4.3 取反码指令
5.4.4 取补码指令
5.4.5 比较指令
5.4.6 逻辑“与”指令
5.4.7 逻辑“或”指令
5.4.8 逻辑“异或”指令
5.4.9 乘法指令
5.5 转移指令
5.5.1 无条件转移指令
5.5.2 条件转移指令
5.5.3 子程序调用和返回指令
5.6 位操作和位测试指令
5.6.1 带进位逻辑操作指令
5.6.2 位变量传送指令
5.6.3 位变量修改指令
5.7 MCU控制指令
5.8 汇编伪指令及表达式
5.8.1 伪指令
5.8.2 表达式
5.8.3 器件定义头文件
5.9 编程实例
5.10 实践拓展
5.11 思考与练习
第6章ATmegal6的I/O端口
6.1 I/0端口的结构和功能
6.1.1 I/O端口的内部结构
6.1.2 I/O端口的相关寄存器
6.2 I/O端口的应用举例
6.2.1 LED流水灯设计
6.2.2 独立式按键设计
6.2.3 单片机与液晶显示模块的
接口设计
6.3 实践拓展
6.4 思考与练习
第7章 ATmegal6的中断系统
7.1 概述
7.2 中断源和中断向量
7.2.1 中断源
7.2.2 中断向量
7.3 相关寄存器
7.3.1 状态寄存器
7.3.2 通用中断控制寄存器
7.4 外部中断
7.4.1 外部中断相关寄存器
7.4.2 实例:一位LED数码管显示系统设计
7.4.3 实例:药片装瓶监控系统设计
7.5 实践拓展
7.6 思考与练习
第8章 复位系统及睡眠模式的设置
8.1 ATmegal6的复位系统
8.1.1 几种复位方式
8.1.2 复位系统硬件电路
8.1.3 复位的操作处理
8.2 看门狗定时器
8.2.1 看门狗电路的结构
8.2.2 看门狗电路的工作原理
8.2.3 看门狗电路的相关寄存器
8.2.4 看门狗的应用
8.3 睡眠模式的设置
8.3.1 MCUCR
8.3.2 睡眠模式
8.3.3 系统功耗最小化方法
8.3.4 睡眠工能应用实例
8.4 实践拓展
8.5 思考与练习
第三篇 模块功能
第9章定时器/计数器0
9.1 定时器/计数器的基本功能
9.2 定时器/计数器0的特点及内部结构
9.3 预分频器
9.4 输出比较单元和比较匹配输出单元
9.4.1 输出比较单元
9.4.2 比较匹配输出单元
9.5 定时器/计数器0的相关寄存器
9.6 定时器/计数器0的工作模式
9.6.1 普通模式
9.6.2 快速PWM模式
9.6.3 相位修正PWM模式
9.6.4 CTC模式
9.7 定时器/计数器0应用举例
9.7.1 定时器控制LED闪烁
9.7.2 定时器控制PWM输出
9.8 实践拓展
9.9 思考与练习
第10章 定时器/计数器1
10.1 定时器/计数器1的内部结构
10.2 计数器单元
10.3 输入捕捉单元
10.4 输出比较单元
10.5 比较匹配输出单元.
10.6 访问16位寄存器
10.7 定时器/计数器1的相关寄存器
10.8 定时器/计数器l的工作模式
10.8.1 普通模式
10.8.2 CTC模式
10.8.3 快速PWM模式
10.8.4 相位修止PWM模式
10.8.5 相位与频率修正PWM模式
10.9 定时器/计数器1应用举例
10.9.1 PWM控制电机转速
10.9.2 用计数器制作频率检测仪
10.10 实践拓展
10.11 思考与练习
第11章 A/D转换器
11.1 A/D转换单元结构
11.1.1 A/D转换器内部结构
11.1.2 ADC预分频器
11.2 相关寄存器设置
11.2.1 特殊功能I/0寄存器(SFIOR)
11.2.2 A/D控制和状态寄存器A(ADCSRA)
11.2.3 A/D数据寄存器(ADCH及ADCL)
11.2.4 A/D多工选择寄存器(ADMUX)
11.3 ADC工作原理
11.4 ADC转换时序
11.5 A/D转换应用实例
11.5.1 实例:对输入的电压进行
A/D转换
11.5.2 实例:对输入的两路模拟电压进行A/D转换
11.6 实践拓展
11.7 思考与练习
第12章 同步串行SPI接口
12.1 同步串行通信基础
12.2 主机和从机的连接
12.3 相关寄存器设置
12.3.1 SPI控制寄存器(SPCR)
12.3.2 SPI状态寄存器(SPSR)
12.3.3 SPI数据寄存器(SPDR)
12.4 数据模式
12.5 同步串行口应用举例
12.6 实践拓展
12.7 思考与练习
第13章 USART串行口的应用
13.1 串行口工作原理
13.2 相关寄存器设置
13.2.1 USART数据寄存器(UDR)
13.2.2 USART控制和状态寄存器A(UCSRA)
13.2.3 USART控制和状态寄存器B(UCSRB)
13.2.4 USART控制和状态寄存器C(UCSRC)
13.2.5 USART波特率寄存器(UBRRL和UBRRH)
13.3 USART串行口应用举例
13.3.1 两片单片机之间串行通信
13.3.2 单片机给PC机上传数据
13.4 实践拓展
13.5 思考与练习
第14章 TWI接口的应用
14.1 TWI通信原理
14.2 相关寄存器设置
14.2.1 TWI比特率寄存器TWBR
14.2.2 TWI控制寄存器TWCR
14.2.3 TWI状态寄存器TWSR
14.2.4 TWI数据寄存器TWDR
14.2.5 TWI(从机)地址寄存器TWAR
14.3 TWI接口应用举例
14.4 实践拓展
14.5 思考与练习
第四篇 综合设计
第15章 综合设计实例
15.1 调光灯的设计
15.1.1 任务要求与方案设计
15.1.2 硬件电路设计
15.1.3 软件设计
15.2 电能质量检测系统设计
15.2.1 任务分析
15.2.2 硬件电路设计
15.2.3 软件设计
15.3 实践拓展
15.4 思考与练习
参考文献
第一篇 开发基础
第1章 单片机概述
1.1 什么是单片机
1.2 单片机的应用
1.3 ATMEL的AVR单片机
1.4 AVR单片机的家族成员
1.4.1 AVR单片机的型号
1.4.2 AVR单片机的选型
1.5 ATmegal6单片机概述
1.5.1 ATmegal6单片机的主要性能
1.5.2 ATmegal6单片机的引脚
说明
1.6 实践拓展
1.7 思考与练习
第2章 AVR单片机的开发工具
2.1 AVR单片机程序开发环境
2.1.1 GCCAVR开发环境的安装
2.1.2 智峰下载软件
2.2 AVR单片机的开发语言
2.3 实验设备
2.3.1 本书所用的实验开发板
2.3.2 下载线
2.4 LED小灯闪烁实验过程演示
2.5 实践拓展
2.6 思考与练习
第二篇 结构与编程
第3章AVR单片机C语言
3.1 C语言的结构
3.2 C语言的基本字符、标识符和关键字
3.3 C语言的基本数据类型
3.4 函数
3.4.1 系统库函数
3.4.2 用户自定义函数
3.5 数组
3.5.1 一维数组
3.5.2 二维数组
3.6 指针
3.7 结构体
3.7.1 结构体类型的声明和变量的定义
3.7.2 结构体变量的初始化
3.7.3 对结构体各成员的访问与使用
3.8 共用体
3.9 实践拓展.
3.10 思考与练习
第4章 ATmegal6单片机基本结构
4.1 ATmegal6的内部结构
4.2 ATmegal6内存储器结构
4.2.1 A17megal6的程序存储器
4.2.2 ATmegal6的数据存储器
4.3 状态寄存器——SREG
4.4 ATmegal6的封装和引脚功能
4.5 ATmegal6的电源电路和复位电路
4.6 ATmegal6的时钟电路
4.7 实践拓展——最小系统设计
4.8 思考与练习
第5章 AVR的指令系统与汇编系统
5.1 A17megal6指令概述
5.1.1 指令格式
5.1.2 指令的表示形式
5.1.3 指令的分类
5.1.4 AVR指令系统中的名词
5.1.5 AVR汇编语言系统
5.2 AVR指令系统的寻址方式
5.3 数据传送指令
5.3.1 直接寻址数据传送指令
5.3.2 间接寻址数据传送指令
5.3.3 从程序存储器中取数装入寄存器指令
5.3.4 写程序存储器指令
5.3.5 I/O口数据传送
5.3.6 堆栈操作指令
5.4 算术和逻辑指令
5.4.1 加法指令
5.4.2 减法指令
5.4.3 取反码指令
5.4.4 取补码指令
5.4.5 比较指令
5.4.6 逻辑“与”指令
5.4.7 逻辑“或”指令
5.4.8 逻辑“异或”指令
5.4.9 乘法指令
5.5 转移指令
5.5.1 无条件转移指令
5.5.2 条件转移指令
5.5.3 子程序调用和返回指令
5.6 位操作和位测试指令
5.6.1 带进位逻辑操作指令
5.6.2 位变量传送指令
5.6.3 位变量修改指令
5.7 MCU控制指令
5.8 汇编伪指令及表达式
5.8.1 伪指令
5.8.2 表达式
5.8.3 器件定义头文件
5.9 编程实例
5.10 实践拓展
5.11 思考与练习
第6章ATmegal6的I/O端口
6.1 I/0端口的结构和功能
6.1.1 I/O端口的内部结构
6.1.2 I/O端口的相关寄存器
6.2 I/O端口的应用举例
6.2.1 LED流水灯设计
6.2.2 独立式按键设计
6.2.3 单片机与液晶显示模块的
接口设计
6.3 实践拓展
6.4 思考与练习
第7章 ATmegal6的中断系统
7.1 概述
7.2 中断源和中断向量
7.2.1 中断源
7.2.2 中断向量
7.3 相关寄存器
7.3.1 状态寄存器
7.3.2 通用中断控制寄存器
7.4 外部中断
7.4.1 外部中断相关寄存器
7.4.2 实例:一位LED数码管显示系统设计
7.4.3 实例:药片装瓶监控系统设计
7.5 实践拓展
7.6 思考与练习
第8章 复位系统及睡眠模式的设置
8.1 ATmegal6的复位系统
8.1.1 几种复位方式
8.1.2 复位系统硬件电路
8.1.3 复位的操作处理
8.2 看门狗定时器
8.2.1 看门狗电路的结构
8.2.2 看门狗电路的工作原理
8.2.3 看门狗电路的相关寄存器
8.2.4 看门狗的应用
8.3 睡眠模式的设置
8.3.1 MCUCR
8.3.2 睡眠模式
8.3.3 系统功耗最小化方法
8.3.4 睡眠工能应用实例
8.4 实践拓展
8.5 思考与练习
第三篇 模块功能
第9章定时器/计数器0
9.1 定时器/计数器的基本功能
9.2 定时器/计数器0的特点及内部结构
9.3 预分频器
9.4 输出比较单元和比较匹配输出单元
9.4.1 输出比较单元
9.4.2 比较匹配输出单元
9.5 定时器/计数器0的相关寄存器
9.6 定时器/计数器0的工作模式
9.6.1 普通模式
9.6.2 快速PWM模式
9.6.3 相位修正PWM模式
9.6.4 CTC模式
9.7 定时器/计数器0应用举例
9.7.1 定时器控制LED闪烁
9.7.2 定时器控制PWM输出
9.8 实践拓展
9.9 思考与练习
第10章 定时器/计数器1
10.1 定时器/计数器1的内部结构
10.2 计数器单元
10.3 输入捕捉单元
10.4 输出比较单元
10.5 比较匹配输出单元.
10.6 访问16位寄存器
10.7 定时器/计数器1的相关寄存器
10.8 定时器/计数器l的工作模式
10.8.1 普通模式
10.8.2 CTC模式
10.8.3 快速PWM模式
10.8.4 相位修止PWM模式
10.8.5 相位与频率修正PWM模式
10.9 定时器/计数器1应用举例
10.9.1 PWM控制电机转速
10.9.2 用计数器制作频率检测仪
10.10 实践拓展
10.11 思考与练习
第11章 A/D转换器
11.1 A/D转换单元结构
11.1.1 A/D转换器内部结构
11.1.2 ADC预分频器
11.2 相关寄存器设置
11.2.1 特殊功能I/0寄存器(SFIOR)
11.2.2 A/D控制和状态寄存器A(ADCSRA)
11.2.3 A/D数据寄存器(ADCH及ADCL)
11.2.4 A/D多工选择寄存器(ADMUX)
11.3 ADC工作原理
11.4 ADC转换时序
11.5 A/D转换应用实例
11.5.1 实例:对输入的电压进行
A/D转换
11.5.2 实例:对输入的两路模拟电压进行A/D转换
11.6 实践拓展
11.7 思考与练习
第12章 同步串行SPI接口
12.1 同步串行通信基础
12.2 主机和从机的连接
12.3 相关寄存器设置
12.3.1 SPI控制寄存器(SPCR)
12.3.2 SPI状态寄存器(SPSR)
12.3.3 SPI数据寄存器(SPDR)
12.4 数据模式
12.5 同步串行口应用举例
12.6 实践拓展
12.7 思考与练习
第13章 USART串行口的应用
13.1 串行口工作原理
13.2 相关寄存器设置
13.2.1 USART数据寄存器(UDR)
13.2.2 USART控制和状态寄存器A(UCSRA)
13.2.3 USART控制和状态寄存器B(UCSRB)
13.2.4 USART控制和状态寄存器C(UCSRC)
13.2.5 USART波特率寄存器(UBRRL和UBRRH)
13.3 USART串行口应用举例
13.3.1 两片单片机之间串行通信
13.3.2 单片机给PC机上传数据
13.4 实践拓展
13.5 思考与练习
第14章 TWI接口的应用
14.1 TWI通信原理
14.2 相关寄存器设置
14.2.1 TWI比特率寄存器TWBR
14.2.2 TWI控制寄存器TWCR
14.2.3 TWI状态寄存器TWSR
14.2.4 TWI数据寄存器TWDR
14.2.5 TWI(从机)地址寄存器TWAR
14.3 TWI接口应用举例
14.4 实践拓展
14.5 思考与练习
第四篇 综合设计
第15章 综合设计实例
15.1 调光灯的设计
15.1.1 任务要求与方案设计
15.1.2 硬件电路设计
15.1.3 软件设计
15.2 电能质量检测系统设计
15.2.1 任务分析
15.2.2 硬件电路设计
15.2.3 软件设计
15.3 实践拓展
15.4 思考与练习
参考文献
猜您喜欢