引论 单片机技术引论 1
第一节 认识单片机 1
第二节 计算机中信息的表示 3
第三节 计算机如何工作 11
第一章 AVR单片机概述 13
第一节 AVR单片机简介 13
第二节 单片机的基本组成 14
第三节 ATmega48单片机的组成 18
第四节 ATmega48的存储器结构和地址空间 23
第二章 AVR单片机的开发环境 25
第一节 AVR开发环境的组成 25
第二节 AVR高级语言开发平台 25
第三节 AVR Studio集成开发环境 28
第四节 AVR单片机的最小系统 32
第五节 构建自己的AVR实验板 35
第六节 AVR可执行代码的下载 39
第三章 通用I/O端口的结构与应用 46
第一节 通用I/0端口的结构 46
第二节 AVR单片机I/O端口的编程 47
第三节 实例1跑马灯 49
第四节 端口的位操作 54
第五节 数码管显示 59
第六节 实例2一位数码管的静态显示 60
第七节 多位LED数码管显示 64
第八节 实例3动态扫描的多位数码管显示 64
第九节 实例4用延时实现的时钟系统 68
第十节 键盘输入接口 72
第十一节 实例5矩阵键盘 75
第四章 中断系统及其基本应用 79
第一节 什么是中断 79
第二节 中断的特性 80
第三节 ATmega48单片机中断源和中断向量 84
第四节 如何编写中断服务程序代码 85
第五节 AVR单片机中断的开关控制 86
第六节 AVR单片机中断标志位 87
第七节 AVR的中断优先级 88
第八节 ATmega48的外部中断 88
第九节 实例6按键控制的1位LED数码管显示 91
第五章 定时/计数器的结构与应用 95
第一节 单片机定时的原理 95
第二节 ATmega 48的定时器O(Timer/CounterO) 98
第三节 编写第一个定时器程序 107
第四节 重加载的方法控制定时中断周期 108
第五节 CTC模式控制定时中断周期 109
第六节 实例7采用T/CO硬件定时器的数字时钟 109
第七节 实例8用单片机演奏音乐 111
第八节 PWM波及其应用简介 115
第九节 实例9会呼吸的灯 117
第六章 ADC接口 121
第一节 逐次比较式A/D转换器的工作原理 121
第二节 ATmega 48的A/D转换器 123
第三节 ATmega 48单片机中与A/D相关的引脚 124
第四节 ATmega 48单片机中与A/D相关的寄存器 125
第五节 ADC应用要点 129
第六节 编写ADC转换程序 132
第七节 实例10简易数字电压表 133
第八节 ADC噪声抑制 137
第七章 单片机通用程序设计 140
第一节 实例11电子时钟设计 140
第二节 有限状态机的概念及其实现方法 183
第八章 串行SPI接口应用 190
第一节 串行接口与串行通信基础知识 190
第二节 SPI串行总线介绍 192
第三节 AVR的SPI接口原理 198
第四节 与SPI相关的寄存器 200
第五节 SPI接口设计的应用要点 202
第六节 编写SPI基本操作函数 203
第七节 实例12端口扩展 204
第九章 异步通信与USART接口基础 212
第一节 异步通信的基本概念 212
第二节 AVR的异步传输接口USART 215
第三节 USART的基本操作 222
第四节 基于USART接口基本通信的实现与测试 226
第五节 实例13 USART自发自收测试 226
第六节 AVR与PC机的串口通信 229
第七节 采用通信缓冲区的USART底层驱动编写 234
第八节 利用标准I/O流调试程序 236
第十章 串行TWI (I2 C)接口应用 240
第一节 I2C串行总线介绍 240
第二节 AVR的TWI接口与使用 245
第三节 使用TWI总线 250
第四节 基于状态机的TWI通信模块 253
第五节 实例14存储器24 C02的读写 274
附录Ⅰ ATmega48常用熔丝的作用及配置方法 281
附录Ⅱ Intel HEX文件格式 284
参考文献 286