《AVR单片机C语言开发入门与典型实例》是2010年人民邮电出版社出版的图书,作者是朱飞、杨平。
基本介绍
- 书名:AVR单片机C语言开发入门与典型实例
- 作者:朱飞、杨平
- ISBN:9787115227386
- 类别:图书>> 计算机/网路>> 计算机体系结构
- 定价:49.80
- 出版社:人民邮电出版社
- 出版时间:2010-6-1
- 装帧:平装
- 开本:16开
2010年出版图书
内容简介
本书首先详细讲解AVR单片机的基础知识,包括硬体基础、指令系统、开发环境以及AVR单片机C语言基础;然后讲解其I/O口印表机接口、定时器/计数器、中断、串列口、程式存储器扩展、数据存储器扩展等模组;接着讲解其键盘接口、LCD接口、印表机接口、A/D接口、D/A接口、可程式器件接口、I2C汇流排接口、SPI汇流排接口、CAN汇流排接口的硬体设计和程式设计;最后讲解了MP3播放器设计、小型印表机系统、智慧型充电器、直流电机的控制、温湿度感测器、手持无线遥控器等综合实例的软硬体开发全过程,使读者对前面的知识融会贯通。
本书适合想了解和进行AVR单片机实际系统开发的读者和工程技术人员使用,也适合大中专院校电子类专业的学生使用。
2009年出版图书
内容简介
《AVR单片机C语言开发入门与典型实例》首先详细讲解AVR单片机的基础知识,包括硬体基础、指令系统、开发环境以及AVR单片机C语言基础;然后讲解其I/O口印表机接口、定时器/计数器、中断、串列口、程式存储器扩展、数据存储器扩展等模组;接着讲解其键盘接口、LCD接口、印表机接口、A/D接口、D/A接口、可程式器件接口、I2C汇流排接口、SPI汇流排接口、CAN汇流排接口的硬体设计和程式设计;最后讲解了MP3播放器设计、小型印表机系统、智慧型充电器、直流电机的控制、温湿度感测器、手持无线遥控器等综合实例的软硬体开发全过程,使读者对前面的知识融会贯通。
《AVR单片机C语言开发入门与典型实例》适合想了解和进行AVR单片机实际系统开发的读者和工程技术人员使用,也适合大中专院校电子类专业的学生使用。
编辑推荐
从AVR单片机指令和单片机C语言讲起。引导读者快速入门
9大接口。详细讲解接口电路器件使用、硬体设计、软体设计
6个综合实例,可直接用于项目开发
目录
第1篇AVR单片机基础
第1章AVR单片机概述 3
1.1 AVR单片机及其发展 3
1.1.1AVR单片机简介 3
1.1.2AVR单片机的特点 4
1.1.3AVR单片机的分类 5
1.2ATmega128(L)单片机 5
1.2.1ATmega128(L)结构和主要特点 5
1.2.2ATmega128(L)的主要性能 7
1.2.3ATmega128(L)的封装与引脚 8
1.3本章小结 12
第2章ATmega128(L)单片机硬体结构 13
2.1ATmega128(L)的核心 13
2.2ATmega128(L)的存储器 14
2.2.1ATmega128(L)的内部存储器 14
2.2.2ATmega128(L)的外部存储器 15
2.3ATmega128(L)的系统时钟及电源管理 15
2.3.1系统时钟 15
2.3.2电源管理与休眠模式 18
2.4ATmega128(L)的复位及中断 19
2.4.1ATmega128(L)的复位逻辑 19
2.4.2ATmega128(L)的中断及中断回响 20
2.5ATmega128(L)的定时器/计数器 22
2.5.18位定时器/计数器T/C0 22
2.5.28位定时器/计数器T/C2 26
2.5.316位定时器/计数器T/C1和T/C3 26
2.6ATmega128(L)的汇流排接口 31
2.6.1同步外设接口SPI 31
2.6.2通用同步/异步串列接口USART0和USART1 32
2.6.3两线串列TWI汇流排接口 35
2.7本章小结 37
第3章ATmega128(L)的指令系统 38
3.1 ATmega128(L)的指令系统概述 38
3.2ATmega128(L)的指令运算元的定址方式 43
3.3算术和逻辑运算指令 45
3.3.1加法指令 45
3.3.2减法指令 46
3.3.3取反码和补码指令 48
3.3.4乘法指令 48
3.3.5逻辑与指令 50
3.3.6逻辑或指令 51
3.3.7逻辑异或指令 52
3.4比较和转移指令 53
3.4.1比较指令 53
3.4.2无条件转移指令 54
3.4.3条件转移指令 54
3.4.4子程式调用与返回指令 60
3.5数据传输指令 61
3.5.1直接数据传输指令 62
3.5.2间接数据传输指令 63
3.5.3与程式存储器有关的数据传输指令 65
3.5.4I/O口数据传输指令 67
3.5.5堆叠操作指令 68
3.6位操作指令 68
3.6.1带进位的位操作指令 68
3.6.2位变数传输指令 70
3.6.3位修改指令 70
3.7MCU控制指令 74
3.8ATmega128(L)的彙编语言 75
3.8.1彙编语言语句格式及伪指令 75
3.8.2表达式 76
3.9本章小结 77
第4章AVR单片机硬体电路设计工具 78
4.1Protel99SE中典型元器件的原理图符号和PCB封装绘製 78
4.1.1元器件封装的概念 78
4.1.2电阻的原理图符号和PCB封装 79
4.1.3电容的原理图符号和PCB封装 80
4.1.4二极体和三极体的原理图符号和PCB封装 81
4.1.5典型积体电路的原理图符号和PCB封装 83
4.2原理图和PCB图的绘製流程 84
4.2.1绘製原理图 84
4.2.2绘製PCB图 86
4.3地线 90
4.3.1地线的概念及分类 90
4.3.2PCB设计中地线的处理 91
4.4本章小结 91
第5章AVR单片机软体开发环境 92
5.1软体开发环境 92
5.2AVRStudio4.13SP2开发环境 94
5.2.1AVRStudio4.13SP2开发环境获取与安装 94
5.2.2AVRStudio4.13SP2的选单 95
5.2.3使用AVRStudio4.13SP2 101
5.3本章小结 103
第6章AVR单片机C语言开发 104
6.1C语言基础知识 104
6.1.1标识符和关键字 104
6.1.2基本数据类型、常量和变数 104
6.1.3常见运算符 106
6.1.4程式中的语句种类 107
6.2C语言高级编程 110
6.2.1数组 110
6.2.2指针 112
6.2.3结构、共用体和枚举 115
6.2.4函式 119
6.2.5预处理 122
6.3AVRStudio4.13SP2对ANSIC的扩展 125
6.3.1I/O暂存器和连线埠操作 125
6.3.2AVR单片机存储器中数据的访问 126
6.3.3AVR单片机的中断服务程式 130
6.4本章小结 132
第2篇AVR单片机典型模组C语言套用实例
第7章I/O的套用 135
7.1I/O连线埠概述 135
7.2I/O口控制发光二极体 136
7.2.1实例功能 136
7.2.2典型器件介绍 136
7.2.3硬体设计 136
7.2.4程式设计及详解 137
7.2.5经验总结 138
7.3I/O口控制八段数码管 138
7.3.1实例功能 138
7.3.2典型器件介绍 138
7.3.3硬体设计 138
7.3.4程式设计及详解 139
7.3.5经验总结 140
7.4I/O模拟1-Wire汇流排控制DS18B20 140
7.4.1实例功能 140
7.4.2典型器件介绍 140
7.4.3硬体设计 141
7.4.4程式设计及详解 142
7.4.5经验总结 145
7.5本章小结 145
第8章定时器/计数器套用 146
8.1定时器/计数器概述 146
8.2利用定时器实现方波输出 146
8.2.1实例功能 146
8.2.2硬体设计 146
8.2.3程式设计及其详解 147
8.2.4经验总结 148
8.3利用定时器/计数器实现按键的复用 148
8.3.1实例功能 148
8.3.2硬体设计 148
8.3.3程式设计及详解 149
8.3.4经验总结 150
8.4本章小结 150
第9章中断的套用 151
9.1中断概述 151
9.2利用定时器中断报警 151
9.2.1实例功能 151
9.2.2典型器件介绍 151
9.2.3硬体设计 152
9.2.4程式设计及详解 152
9.2.5经验总结 153
9.3利用中断实现对按键的回响 153
9.3.1实例功能 153
9.3.2典型器件介绍 153
9.3.3硬体设计 154
9.3.4程式设计及详解 154
9.3.5经验总结 155
9.4本章小结 155
第10章串列口的套用 156
10.1串列通信概述 156
10.2RS-232汇流排接口 157
10.2.1实例功能 157
10.2.2典型器件介绍 157
10.2.3硬体设计 158
10.2.4程式设计及详解 159
10.2.5经验总结 160
10.3RS-485汇流排接口 160
10.3.1实例功能 160
10.3.2典型器件介绍 160
10.3.3硬体设计 161
10.3.4程式设计及详解 162
10.3.5经验总结 164
10.4单片机之间的通信 164
10.4.1实例功能 164
10.4.2典型器件介绍 164
10.4.3硬体设计 164
10.4.4程式设计及详解 164
10.4.5经验总结 167
10.5本章小结 167
第11章程式存储器扩展 168
11.1程式存储器概述 168
11.2扩展EPROM 169
11.2.1实例功能 169
11.2.2典型器件介绍 170
11.2.3硬体设计 171
11.2.4程式设计及详解 171
11.2.5经验总结 172
11.3扩展E2PROM 173
11.3.1实例功能 173
11.3.2典型器件介绍 173
11.3.3硬体设计 175
11.3.4程式设计及详解 175
11.3.5经验总结 177
11.4扩展Flash存储器 177
11.4.1实例功能 177
11.4.2典型器件介绍 177
11.4.3硬体设计 179
11.4.4程式设计及详解 179
11.4.5经验总结 181
11.5本章小结 181
第12章数据存储器扩展 182
12.1数据存储器概述 182
12.2扩展SRAM 182
12.2.1实例功能 182
12.2.2典型器件介绍 183
12.2.3硬体设计 184
12.2.4程式设计及详解 185
12.2.5经验总结 186
12.3扩展NVSRAM 186
12.3.1实例功能 186
12.3.2典型器件介绍 187
12.3.3硬体设计 188
12.3.4程式设计及详解 189
12.3.5经验总结 190
12.4本章小结 190
第3篇AVR单片机接口典型套用
第13章键盘接口 193
13.1键盘概述 193
13.2外接4个键盘 193
13.2.1实例功能 193
13.2.2硬体设计 193
13.2.3程式设计及详解 194
13.2.4经验总结 195
13.3与4×4键盘的接口设计 195
13.3.1实例功能 196
13.3.2硬体设计 196
13.3.3程式设计及详解 196
13.3.4经验总结 202
13.4本章小结 202
第14章LCD接口 203
14.1LCD概述 203
14.2外接字元点阵LCD 205
14.2.1实例功能 205
14.2.2典型器件介绍 205
14.2.3硬体设计 207
14.2.4程式设计及详解 208
14.2.5经验总结 211
14.3外接图像点阵LCD 211
14.3.1实例功能 211
14.3.2典型器件介绍 211
14.3.3硬体设计 216
14.3.4程式设计及详解 216
14.3.5经验总结 219
14.4本章小结 219
第15章印表机接口 220
15.1微型印表机概述 220
15.2外接串列印表机 221
15.2.1实例功能 221
15.2.2典型器件介绍 221
15.2.3硬体设计 223
15.2.4程式设计及详解 224
15.2.5经验总结 225
15.3外接并行印表机 225
15.3.1实例功能 225
15.3.2典型器件介绍 225
15.3.3硬体设计 226
15.3.4程式设计及详解 227
15.3.5经验总结 228
15.4本章小结 228
第16章A/D接口 229
16.1A/D转换器概述 229
16.2外接逐次比较型A/D 231
16.2.1实例功能 231
16.2.2典型器件介绍 231
16.2.3硬体设计 233
16.3.4程式设计及详解 233
16.2.5经验总结 235
16.3外接半闪烁型高速A/D 235
16.3.1实例功能 235
16.3.2典型器件介绍 236
16.3.3硬体设计 239
16.3.4程式设计及详解 239
16.3.5经验总结 242
16.4外接Σ→Δ型A/D 242
16.4.1实例功能 242
16.4.2典型器件介绍 242
16.4.3硬体设计 246
16.4.4程式设计及详解 246
16.4.5经验总结 249
16.5本章小结 249
第17章D/A接口实例 250
17.1D/A转换器概述 250
17.2外接倒T型D/A 251
17.2.1实例功能 251
17.2.2典型器件介绍 251
17.2.3硬体设计 254
17.2.4程式设计及详解 255
17.2.5经验总结 256
17.3外接权电流型D/A 256
17.3.1实例功能 256
17.3.2典型器件介绍 257
17.3.3硬体设计 259
17.3.4程式设计及详解 259
17.3.5经验总结 261
17.4本章小结 262
第18章可程式器件接口 263
18.1可程式器件概述 263
18.2可程式并行接口晶片接口 263
18.2.1实例功能 263
18.2.2典型器件介绍 264
18.2.3硬体设计 266
18.2.4程式设计及详解 267
18.2.5经验总结 269
18.3可程式中断控制器接口 270
18.3.1实例功能 270
18.3.2典型器件介绍 270
18.3.3硬体设计 273
18.3.4程式设计及详解 273
18.3.5经验总结 276
18.4可程式计数器/定时器接口 276
18.4.1实例功能 276
18.4.2典型器件介绍 276
18.4.3硬体设计 278
18.4.4程式设计及详解 279
18.4.5经验总结 281
18.5本章小结 281
第19章I2C汇流排接口 282
19.1I2C汇流排接口概述 282
19.2与AT24C64接口 283
19.2.1实例功能 283
19.2.2典型器件介绍 283
19.2.3硬体设计 286
19.2.4程式设计及详解 286
19.2.5经验总结 288
19.3与温湿度感测器SHT75接口 289
19.3.1实例功能 289
19.3.2典型器件介绍 289
19.3.3硬体设计 292
19.3.4程式设计及详解 292
19.3.5经验总结 297
19.4本章小结 297
第20章SPI汇流排接口 298
20.1SPI汇流排接口概述 298
20.2SPI接口的Flash的访问 299
20.2.1实例功能 299
20.2.2典型器件介绍 299
20.2.3硬体设计 301
20.2.4程式设计及详解 301
20.2.5经验总结 307
20.3利用SPI汇流排实现单片机之间的通信 307
20.3.1实例功能 307
20.3.2典型器件介绍 307
20.3.3硬体设计 307
20.3.4程式设计及详解 308
20.3.5经验总结 309
20.4本章小结 309
第21章CAN汇流排接口 310
21.1CAN汇流排接口概述 310
21.2利用SIA1000实现数据传输 311
21.2.1实例功能 311
21.2.2典型器件介绍 311
21.2.3硬体设计 315
21.2.4程式设计及详解 316
21.2.5经验总结 320
21.3利用CAN汇流排实现单片机间的通信 320
21.3.1实例功能 320
21.3.2典型器件介绍 320
21.3.3硬体设计 320
21.3.4程式设计及详解 320
21.3.5经验总结 325
21.4本章小结 325
第4篇综合系统实例
第22章MP3播放器设计 329
22.1硬体电路设计 329
22.1.1实例背景 329
22.1.2硬体设计流程 330
22.1.3典型器件选型及介绍 330
22.1.4硬体电路 333
22.2软体设计 337
22.2.1软体设计流程 337
22.2.2软体模组分析 337
22.2.3程式设计及详解 337
22.3经验总结 341
22.4本章小结 342
第23章小型印表机系统 343
23.1硬体电路设计 343
23.1.1实例背景 343
23.1.2硬体设计流程 344
23.1.3典型器件选型及介绍 347
23.1.4硬体电路 347
23.2软体设计 350
23.2.1 软体设计流程 350
23.2.2软体模组分析 351
23.2.3程式设计及详解 351
23.3经验总结 354
23.4本章小结 355
第24章智慧型充电器 356
24.1硬体电路设计 356
24.1.1实例背景 356
24.1.2硬体设计流程 357
24.1.3典型器件选型及介绍 357
24.1.4硬体电路 360
24.2软体设计 362
24.2.1软体设计流程 362
24.2.2软体模组分析 363
24.2.3程式设计及详解 363
24.3经验总结 368
24.4本章小结 368
第25章直流电机的控制 369
25.1硬体电路设计 369
25.1.1实例背景 369
25.1.2硬体设计流程 369
25.1.3典型器件选型及介绍 370
25.1.4硬体电路 373
25.2软体设计 376
25.2.1软体设计流程 376
25.2.2软体模组分析 377
25.2.3程式设计及详解 377
25.3经验总结 383
25.4本章小结 383
第26章温湿度感测器 384
26.1硬体电路设计 384
26.1.1实例背景 384
26.1.2硬体设计流程 385
26.1.3典型器件选型及介绍 385
26.1.4硬体电路 387
26.2软体设计 390
26.2.1软体设计流程 390
26.2.2软体模组分析 390
26.2.3程式设计及详解 390
26.3经验总结 399
26.4本章小结 399
第27章手持无线遥控器 400
27.1硬体电路设计 400
27.1.1实例背景 400
27.1.2硬体设计流程 401
27.1.3典型器件选型及介绍 402
27.1.4硬体电路 405
27.2软体设计 408
27.2.1软体设计流程 408
27.2.2软体模组分析 408
27.2.3程式设计及详解 408
27.3经验总结 418
27.4本章小结 418
……