当前位置:首页 > 工业技术
手把手教你学AVR单片机C程序设计
手把手教你学AVR单片机C程序设计

手把手教你学AVR单片机C程序设计PDF电子书下载

工业技术

  • 电子书积分:17 积分如何计算积分?
  • 作 者:周兴华编著
  • 出 版 社:北京:北京航空航天大学出版社
  • 出版年份:2009
  • ISBN:9787811245158
  • 页数:573 页
图书介绍:本书以实践(实验)为主线,以生动短小的实例为灵魂,穿插介绍C语言语法及新型高性价比AVR单片机的结构、特性及编程,使理论与实践完美结合,牵引着读者逐步推进,牢牢把握住循序渐进的节奏。
《手把手教你学AVR单片机C程序设计》目录

第1章 概述 1

1.1 采用C语言提高编制单片机应用程序的效率 1

1.2 C语言具有突出的优点 2

1.3 AVR单片机简介 3

1.4 AVR单片机的C编译器简介 5

第2章 学习AVR单片机C程序设计所用的软件及实验器材介绍2.1 IAR Embedded Workbench IDE C语言编译器 6

2.2 AVR Studio集成开发环境 6

2.3 PonyProg2000下载软件及SL-ISP下载软件 8

2.4 AVR DEMO单片机综合实验板 9

2.5 AVR单片机JTAG仿真器 15

2.6 并口下载器 16

2.7 通用型多功能USB编程器 16

第3章 AVR单片机开发软件的安装及第一个入门程序3.1 安装IAR for AVR 4.30集成开发环境 17

3.2 安装AVR Studio集成开发环境 19

3.3 安装PonyProg2000下载软件 21

3.4 安装SLISP下载软件 22

3.5 AVR单片机开发过程 22

3.6 第一个AVR入门程序 24

第4章 AVR单片机的主要特性及基本结构 49

4.1 ATMEGA16(L)单片机的产品特性 49

4.2 ATMEGA16(L)单片机的基本组成及引脚配置 51

4.3 AVR单片机的CPU内核 55

4.4 AVR的存储器 60

4.5 系统时钟及时钟选项 67

4.6 电源管理及睡眠模式 73

4.7 系统控制和复位 76

4.8 中断 81

第5章 C语言基础知识 83

5.1 C语言的标识符与关键字 83

5.2 数据类型 84

5.3 AVR单片机的数据存储空间 85

5.4 常量、变量及存储方式 87

5.5 数组 87

5.6 C语言的运算 90

5.7 流程控制 95

5.8 函数 99

5.9 指针 101

5.10 结构体 105

5.11 共用体 109

5.12 中断函数 111

第6章 ATMEGA16(L)的I/O端口使用 113

6.1 ATMEGA16(L)的I/O端口 113

6.2 ATMEGA16(L)中4组通用数字I/O端口的应用设置 116

6.3 ATMEGA16(L)的I/O端口使用注意事项 117

6.4 ATMEGA16(L)PB口输出实验 118

6.5 8位数码管测试 121

6.6 独立式按键开关的使用 125

6.7 发光二极管的移动控制(跑马灯实验) 128

6.8 0~99数字的加减控制 131

6.9 4×4行列式按键开关的使用 134

第7章 ATMEGA16(L)的中断系统使用 138

7.1 ATMEGA16(L)的中断系统 138

7.2 相关的中断控制寄存器 139

7.3 INT1外部中断实验 142

7.4 INT0/INT1中断计数实验 144

7.5 INT0/INT1中断嵌套实验 147

7.6 2路防盗报警器实验 150

7.7 低功耗睡眠模式下的按键中断 153

7.8 4×4行列式按键的睡眠模式中断唤醒设计 155

第8章 ATMEGA16(L)驱动16×2点阵字符液晶模块8.1 16×2点阵字符液晶显示器概述 161

8.2 液晶显示器的突出优点 162

8.3 16×2字符型液晶显示模块(LCM)特性 162

8.4 16×2字符型液晶显示模块(LCM)引脚及功能 162

8.5 16×2字符型液晶显示模块(LCM)的内部结构 163

8.6 液晶显示控制驱动集成电路HD44780特点 163

8.7 HD44780工作原理 165

8.8 LCD控制器指令 168

8.9 LCM工作时序 171

8.10 8位数据传送的ATMEGA16(L)驱动16×2点阵字符液晶模块的子函数 173

8.11 8位数据传送的16×2 LCM演示程序1 175

8.12 8位数据传送的16×2 LCM演示程序2 181

8.13 4位数据传送的ATMEGA16(L)驱动16×2点阵字符液晶模块的子函数 186

8.14 4位数据传送的16×2 LCM演示程序 187

第9章 ATMEGA16(L)的定时/计数器 194

9.1 预分频器和多路选择器 194

9.2 8位定时/计时器T/C0 194

9.3 8位定时/计数器0的寄存器 196

9.4 16位定时/计数器T/C1 200

9.5 16位定时/计数器1的寄存器 202

9.6 8位定时/计数器T/C2 207

9.7 8位T/C2的寄存器 209

9.8 ICC6.31A C语言编译器安装 215

9.9 定时/计数器1的计时实验 216

9.10 定时/计数器0的中断实验 221

9.11 4位显示秒表实验 224

9.12 比较匹配中断及定时溢出中断的测试实验 230

9.13 PWM测试实验 234

9.14 0~5 V数字电压调整器 240

9.15 定时器(计数器)0的计数实验 245

9.16 定时/计数器1的输入捕获实验 249

第10章 ATMEGA16(L)的USART与PC机串行通信 254

10.1 ATMEGA16(L)的异步串行收发器 254

10.2 USART的主要特点 255

10.3 时钟产生 256

10.4 帧格式 258

10.5 USART的寄存器及设置 259

10.6 USART的初始化 263

10.7 数据发送——USART发送器 263

10.8 数据接收——USART接收器 265

10.9 ATMEGA16(L)与PC机的通信实验1 268

10.10 ATMEGA16(L)与PC机的通信实验2 275

10.11 ATMEGA16(L)与PC机的通信实验3 281

10.12 ATMEGA16(L)与PC机的通信实验4 287

第11章 ATMEGA16(L)的两线串行接口TWI 298

11.1 AVR单片机两线串行接口TWI的特点 298

11.2 两线串行接口总线定义 298

11.3 TWI模块综述 299

11.4 ATMEGA16(L)的TWI寄存器 301

11.5 使用TWI 303

11.6 ATMEGA16(L)的内部EEPROM 305

11.7 与EEPROM相关的寄存器 305

11.8 ATMEGA16(L)内部EEPROM读/写操作实验1 306

11.9 ATMEGA16(L)内部EEPROM读/写操作实验2 311

11.10 长期保存预置定时的电子钟实验 320

11.11 EEPROM AT24CXX的性能特点 334

11.12 AT24CXX引脚定义 334

11.13 AT24CXX系列存储器特点 334

11.14 AT24CXX系列EEPROM的内部结构 335

11.15 AT24CXX系列EEPROM芯片的寻址 336

11.16 写操作方式 338

11.17 读操作方式 339

11.18 ATMEGA16(L)对AT24C01A的读/写实验 340

11.19 使用库函数读/写内部的EEPROM 347

11.20 利用ATMEGA16(L)的内部EEPROM设计电子密码锁 352

第12章 ATMEGA16(L)的模拟比较器 362

12.1 模拟比较器介绍 362

12.2 模拟比较器实验1 364

12.3 模拟比较器实验2 367

12.4 模拟比较器实验3 370

第13章 ATMEGA16(L)的模/数转换器 375

13.1 ATMEAG16(L)的模/数转换器介绍 375

13.2 ADC工作过程 376

13.3 启动一次转换 377

13.4 预分频及ADC转换时序 378

13.5 差分增益信道 378

13.6 改变通道或基准源 379

13.7 ADC输入通道 379

13.8 ADC基准电压源 380

13.9 模/数转换器相关寄存器 380

13.10 模/数转换器的使用 383

13.11 0~5 V数字式直流电压表实验 383

13.12 “施密特”电压比较器实验 388

13.13 用模/数转换器测量PWM输出的电压值 395

第14章 ATMEGA16(L)的同步串行接口SPI 404

14.1 ATMEGA16(L)的SPI特点 404

14.2 主机和从机之间的SPI连接及原理 404

14.3 SPI的配置及使用 407

14.4 SPI的相关寄存器 407

14.5 两片ATMEGA16(L)的同步串口数据高速通信实验1 409

14.6 两片ATMEGA16(L)的同步串口数据高速通信实验2 415

14.7 两片ATMEGA16(L)的同步串口数据高速通信实验3 422

14.8 同步串行EEPROM AT93CXX的性能特点 431

14.9 AT93CXX引脚定义 431

14.10 AT93CXX系列存储器特点 432

14.11 AT93CXX系列EEPROM的内部结构 432

14.12 AT93CXX系列EEPROM的指令集 432

14.13 器件操作 434

14.14 ATMEGA16(L)驱动AT93C46的子函数 437

14.15 ATMEGA16(L)对AT93C46的读/写实验 441

第15章 ATMEGA16(L)驱动128×64点阵图形液晶模块15.1 128×64点阵图形液晶模块特性 451

15.2 128×64点阵图形液晶模块引脚及功能 451

15.3 128×64点阵图形液晶模块的内部结构 452

15.4 HD61203特点 454

15.5 HD61202特点 454

15.6 HD61202工作原理 455

15.7 HD61202的工作过程 459

15.8 点阵图形液晶模块的控制器指令 459

15.9 HD61202的操作时序图 461

15.10 ATMEGA16(L)驱动128×64点阵图形液晶模块子函数 462

15.11 在AVR单片机综合实验板上实现液晶的汉字显示 466

15.12 在AVR单片机综合实验板上实现液晶的汉字滚屏显示 477

15.13 在AVR单片机综合实验板上实现液晶的图片显示 486

第16章 ATMEGA16(L)的系统控制、复位和看门狗定时器16.1 ATMEGA16(L)的系统控制和复位 498

16.2 ATMEGA16(L)的复位源 499

16.3 看门狗定时器的使用 501

16.4 具有看门狗功能的流水灯实验 502

16.5 看门狗失控的流水灯实验 506

16.6 熔丝位的设置 509

第17章 多功能测温汉字时钟实验 512

17.1 实验目的 512

17.2 实验要求 513

17.3 控制指令的定义 517

17.4 单线数字温度传感器DS18B20 519

17.5 程序设计 525

17.6 实验操作 558

第18章 C++语言开发AVR单片机初步 560

18.1 C++语言简介 560

18.2 对象和类 561

18.3 类的定义 561

18.4 对象的创建 562

18.5 对象的初始化和构造函数 562

18.6 析构函数 563

18.7 C++语言开发AVR单片机的一个实例 564

参考文献 573

相关图书
作者其它书籍
返回顶部