第1章 ATmega128应用基础 1
1.1 ATmega128的体系结构 1
1.1.1 ATmega128的内核 3
1.1.2 ATmega128的存储器体系 6
1.1.3 ATmega128的系统时钟 7
1.1.4 ATmega128的电源管理 13
1.1.5 ATmega128的复位 15
1.1.6 ATmega128的外部引脚封装 19
1.1.7 ATmega128的中断系统 20
1.2 ATmega128的C语言 22
1.2.1 ATmega128 C语言的数据类型、运算符和表达式 22
1.2.2 ATmega128 C语言的结构 25
1.2.3 ATmega128 C语言的函数 26
1.2.4 ATmega128 C语言的数组和指针 27
1.2.5 ATmega128 C语言的自构造类型 29
1.3 ICCAVR软件开发环境应用基础 31
1.3.1 ICCAVR的工作界面 31
1.3.2 ICCAVR的菜单 32
1.3.3 ICCAVR的扩展关键字 37
1.3.4 ICCAVR的库函数 37
1.3.5使用ICCAVR 38
第2章 Proteus硬件仿真环境 42
2.1 Proteus应用基础 42
2.1.1 Proteus的界面 43
2.1.2 Proteus支持的文件格式 43
2.1.3 Proteus的菜单 44
2.1.4 Proteus的快捷工具栏和工具箱 57
2.2使用Proteus 59
2.3 Protues中的ATmega128 61
2.4 Proteus和ICCAVR的联合调试应用实例 62
第3章 Proteus中的ATmega128内部基础资源应用实例 68
3.1 ATmega128的I/O引脚应用实例 68
3.1.1 I/O引脚基础 68
3.1.2 I/O引脚输出高低脉冲电平应用实例 69
3.2 ATmega128的外部中断应用实例 73
3.2.1外部中断基础 73
3.2.2外部中断控制I/O引脚输出应用实例 76
3.3 ATmega128的定时/计数器应用实例 78
3.3.1定时/计数器基础 78
3.3.2定时器控制I/O引脚输出方波应用实例 79
3.3.3定时器输出PWM波形应用实例 81
3.3.4输出频率可调的PWM波形应用实例 84
3.3.5定时/计数器秒定时输出高低电平应用实例 90
3.4 ATmega128的串行口应用实例 93
3.4.1串行口基础 93
3.4.2 ATmega128串口0数据发送应用实例 98
3.4.3 ATmega128串口1数据发送应用实例 104
3.4.4和PC进行串行通信应用实例 105
3.4.5双串口联合使用应用实例 109
3.5 ATmega128的TWI(I2C)总线接口应用实例 112
3.5.1 TWI (I2C)总线接口基础 112
3.5.2双机ATmega128使用TWI总线通信应用实例 117
3.6 ATmega128的SPI总线接口应用实例 128
3.6.1 SPI总线接口基础 128
3.6.2双机ATmega 128使用SPI总线通信应用实例 131
3.7 ATmega128的内置看门狗模块应用实例 139
3.7.1内置看门狗模块基础 139
3.7.2内置看门狗模块测试应用实例 140
3.8建立并引用用户库函数应用实例 144
3.8.1实例的设计思路 144
3.8.2实例的Proteus电路图 144
3.8.3应用实例的代码 145
3.8.4应用实例的仿真结果和说明 145
第4章 Proteus中的ATmega128人机交互通道应用实例 147
4.1发光二极管应用实例 147
4.1.1器件基础 147
4.1.2应用实例设计分析 149
4.1.3应用实例的代码 150
4.1.4应用实例的仿真结果和说明 152
4.2单位数码管应用实例 153
4.2.1器件基础 153
4.2.2应用实例设计分析 155
4.2.3应用实例的代码 156
4.2.4应用实例的仿真结果和说明 158
4.3多位数码管应用实例 158
4.3.1器件基础 158
4.3.2应用实例设计分析 159
4.3.3应用实例的代码 161
4.3.4应用实例的仿真结果和说明 163
4.4 MAX7219应用实例 164
4.4.1器件基础 164
4.4.2应用实例设计分析 168
4.4.3应用实例的代码 169
4.4.4应用实例的仿真结果和说明 172
4.5 1602液晶应用实例 173
4.5.1器件基础 173
4.5.2应用实例设计分析 176
4.5.3应用实例的代码 177
4.5.4应用实例的仿真结果和说明 181
4.6独立按键应用实例 181
4.6.1器件基础 181
4.6.2应用实例设计分析 182
4.6.3应用实例的代码 184
4.6.4应用实例的仿真结果和说明 187
4.7行列扫描键盘应用实例 188
4.7.1器件基础 188
4.7.2应用实例设计分析 190
4.7.3应用实例的代码 191
4.7.4应用实例的仿真结果和说明 193
4.8拨码开关应用实例 193
4.8.1器件基础 194
4.8.2应用实例设计分析 195
4.8.3应用实例的代码 196
4.8.4应用实例的仿真结果和说明 198
第5章 Proteus中的ATmega128信号采集通道应用实例 199
5.1 ATmega128的内置比较器模块应用实例 199
5.1.1内置比较器模块基础 199
5.1.2双通道模拟信号比较应用实例 201
5.1.3多通道模拟信号比较应用实例 204
5.2 ATmega128的内置A/D模块应用实例 209
5.2.1内置A/D模块基础 209
5.2.2单通道模拟信号采集实例 216
5.2.3多通道模拟信号采集实例 219
5.2.4增益放大模拟信号采集实例 222
5.2.5差分模拟信号比较采集实例 225
5.2.6多通道模拟信号比较采集实例 228
5.3 DS1302应用实例 233
5.3.1器件基础 233
5.3.2应用实例设计分析 235
5.3.3应用实例的代码 236
5.3.4应用实例的仿真结果和说明 243
5.4 DS18B20应用实例 244
5.4.1器件基础 244
5.4.2应用实例设计分析 247
5.4.3应用实例的代码 248
5.4.4应用实例的仿真结果和说明 251
第6章 Proteus中的ATmega128信号输出通道应用实例 252
6.1 DAC0832应用实例 252
6.1.1器件基础 252
6.1.2应用实例设计分析 254
6.1.3应用实例的代码 255
6.1.4应用实例的仿真结果和说明 256
6.2 74HC165应用实例 257
6.2.1器件基础 257
6.2.2应用实例设计分析 258
6.3 74HC595应用实例 259
6.3.1器件基础 259
6.3.2应用实例设计分析 260
6.3.3应用实例的代码 261
6.3.4应用实例的仿真结果和说明 263
第7章 Proteus中的ATmega128存储器应用实例 265
7.1 ATmega128的内部E2 PROM应用实例 265
7.1.1 E2 PROM基础 265
7.1.2 E2 PROM读/写应用实例 268
7.2 62256应用实例 272
7.2.1器件基础 272
7.2.2应用实例设计分析 274
7.2.3应用实例的代码 275
7.2.4应用实例的仿真结果和说明 279
第8章 Proteus中的ATmega128执行机构应用实例 280
8.1三极管应用实例 280
8.1.1器件基础 280
8.1.2应用实例设计分析 281
8.1.3应用实例的代码 282
8.1.4应用实例的仿真结果和说明 284
8.2 ULN2803应用实例 285
8.2.1器件基础 285
8.2.2应用实例设计分析 286
8.2.3应用实例的代码 287
8.2.4应用实例的仿真结果和说明 290
8.3光电隔离器应用实例 290
8.3.1器件基础 290
8.3.2应用实例设计分析 292
8.3.3应用实例的代码 293
8.3.4应用实例的仿真结果和说明 294
8.4直流电动机应用实例 295
8.4.1器件基础 295
8.4.2应用实例设计分析 296
8.4.3应用实例的代码 297
8.4.4应用实例的仿真结果和说明 300
8.5步进电动机应用实例 301
8.5.1器件基础 301
8.5.2应用实例设计分析 303
8.5.3应用实例的代码 304
8.5.4应用实例的仿真结果和说明 307
8.6继电器应用实例 308
8.6.1器件基础 308
8.6.2应用实例设计分析 309
8.6.3应用实例的代码 310
8.6.4应用实例的仿真结果和说明 312
8.7蜂鸣器应用实例 312
8.7.1器件基础 313
8.7.2应用实例设计分析 314
8.7.3应用实例的代码 315
8.7.4应用实例的仿真结果和说明 317
第9章 Proteus中的ATmega128通信应用实例 318
9.1 MAX232应用实例 318
9.1.1器件基础 318
9.1.2应用实例设计分析 320
9.1.3应用实例的代码 321
9.1.4实例的仿真结果和说明 321
9.2 SN75179应用实例 322
9.2.1器件基础 322
9.2.2应用实例设计分析 323
9.2.3应用实例的代码 324
9.2.4实例的仿真结果和说明 327
9.3 MAX487应用实例 328
9.3.1器件基础 328
9.3.2应用实例设计分析 329
9.3.3应用实例的代码 330
9.3.4实例的仿真结果和说明 330
第10章 在Proteus中设计ATmega128的应用系统 331
10.1 ATmega128综合应用实例设计基础 331
10.2频率计应用实例 335
10.2.1频率计的需求分析和系统设计 335
10.2.2频率计的硬件设计 336
10.2.3频率计的软件设计 337
10.2.4 Proteus中的虚拟信号发生器 343
10.2.5实例的仿真结果和总结 344
10.3简易数字时钟应用实例 345
10.3.1简易数字时钟的需求分析和系统设计 345
10.3.2简易数字时钟的硬件设计 345
10.3.3简易数字时钟的软件设计 347
10.3.4实例的仿真结果和总结 354
10.4可控自校准数字电源应用实例 354
10.4.1可控自校准数字电源的需求分析和系统设计 355
10.4.2可控自校准数字电源的硬件设计 355
10.4.3可控自校准数字电源的软件设计 358
10.4.4实例的仿真结果和总结 364
10.5仓库自动通风控制系统应用实例 365
10.5.1仓库自动通风控制系统的需求分析和系统设计 365
10.5.2仓库自动通风控制系统的硬件设计 366
10.5.3仓库自动通风控制系统的软件设计 368
10.5.4实例的仿真结果和总结 377