项目一 单片机及最小应用系统 1
任务1 认识单片机 1
任务2 AVR列单片机的识读 6
任务3 单片机最小系统及系统控制 16
任务4 自制下载线 23
项目二 单片机系统开发软件的应用 26
任务1 CVAVR编译软件的使用 26
任务2 AVR Studio集成开发软件的使用 34
任务3 PonyProg2000下载软件的使用 39
任务4 Proteus 7.10仿真软件的使用 41
项目三 AVR单片机C语言编程基础 50
任务1 C语言程序组成的识读 50
任务2 运算符和表达式 60
任务3 程序结构及流程控制 67
任务4 数组与指针 77
任务5 函数与编译预处理 84
项目四 LED广告灯的设计 92
任务1 LED控制原理认知 92
任务2 闪灯广告灯的设计 98
任务3 流水广告灯的设计 102
任务4 拉幕式与闭幕式广告灯的设计 106
任务5 复杂广告灯的设计 110
项目五 按键控制与LED数码管显示 115
任务1 按键控制原理认知 115
任务2 LED数码管显示原理认知 117
任务3 单个LED数码管显示设计 121
任务4 多个LED数码管显示设计 125
任务5 条形LED花样选择显示 131
任务6 查询式按键设计 134
任务7 LED数码管显示矩阵键盘按键的设计 137
任务8 矩阵键盘按键控制LED+条形LED的设计 144
任务9 简单拨号键盘的设计 151
项目六 中断控制的应用设计 158
任务1 中断控制原理 158
任务2 带中断控制的LED花样灯 165
任务3 采用外中断控制的条形LED彩灯设计 168
任务4 采用两个外中断的条形LED彩灯控制 172
任务5 采用两个外中断实现LED键控移位 176
任务6 采用外中断实现计数 179
任务7 采用外中断进行计数和清零控制 184
项目七 定时器/计数器控制的应用设计 189
任务1 定时器/计数器控制原理认知 189
任务2 用T/C0实现简单计数 205
任务3 用T/C0实现流水灯控制 209
任务4 用T/C0的CTC模式输出方波 212
任务5 用T/C0的快速PWM模式实现调光控制 215
任务6 用T/C0的相位修正PWM模式实现调光控制 220
任务7 用T/C1计数功能实现数控分频 223
任务8 用T/C1实现预置值计时器的设计 227
任务9 用T/C1的CTC模式实现LED滚动闪烁控制 233
任务10 用T/C1的快速PWM模式输出占空比可调方波 237
任务11 用T/C1的相位修改PWM模式输出占空比可调方波 242
任务12 用T/C1的输入捕捉模式测量低频脉冲周期 246
任务13 用T/C2实现简单门铃控制 250
任务14 用T/C2的异步计数功能实现59s计时器 254
项目八 单片机串行通信设计 260
任务1 单片机串行通信原理认知 260
任务2 甲机通过串口控制乙机LED显示状态 271
任务3 甲机通过串口控制乙机计时 275
任务4 单片机双机通信 283
任务5 单片机自发自收数据 291
项目九 LED点阵显示器的设计 298
任务1 LED点阵显示器控制原理认知 298
任务2 一个5×7 LED点阵字符显示 300
任务3 一个8×8 LED点阵字符串显示 303
任务4 两个8×8 LED点阵字符串显示 310
任务5 两个8×8 LED点阵滚动显示 317
任务6 一个16×16 LED点阵汉字显示 321
任务7 一个16×16 LED点阵汉字移位显示 327
任务8 两个16×16 LED点阵汉字显示 330
任务9 两个16×16 LED点阵汉字分批显示 336
任务10 两个16×16 LED点阵汉字移位显示 340
项目十 LCD显示设计 345
任务1 LCD显示原理认知 345
任务2 字符式LCD显示字符串 351
任务3 字符式LCD显示汉字 354
任务4 字符式LCD显示可调数字钟 360
任务5 字符式LCD滚动显示 366
任务6 字符式LCD移位显示 369
项目十一 内置模拟比较器和A/D转换器的应用设计 375
任务1 内置模拟比较器和A/D转换器 375
任务2 系统电源电压监测器的设计 385
任务3 低压报警器的设计 388
任务4 简易电压表的设计 391
任务5 电压监控器的设计 396
项目十二 SPI串行总线的应用 401
任务1 SPI总线基础知识认知 401
任务2 74LS164驱动数码管显示可调数字钟 405
任务3 74HC595驱动1位数码管显示 413
任务4 74HC595驱动数码管动态显示 416
任务5 74HC595驱动8位数码管静态显示 421
任务6 MAX7219驱动数码管动态显示 427
项目十三 TWI串行总线的应用 435
任务1 TWI总线基础知识 435
任务2 24C256开启次数读/写控制 444
任务3 PCF857驱动8位数码管显示 451
项目十四 D/A转换器的应用 456
任务1 DAC0832 D/A转换 456
任务2 TLC5615 D/A转换 461
任务3 MAX515 D/A转换 467
项目十五 综合应用设计 471
任务1 篮球计分器的设计 471
任务2 按键选播电子音乐 481
任务3 DS1302时钟日历的设计 489
附录A Proteus常用快捷键 500
附录B CodeVisionAVR编译器常用库函数简介 501
参考文献 518