AVR单片机C语言编程及应用实例
AVR单片机C语言编程及应用实例:本书针对Atmel公司的AVR系列单片机和ImageCraft公司的ICC AVR开发环境,详细地介绍了AT90LS8535的C语言程序设计。全书共有13章,其内容既涉及到了单片机的结构原理、指令系统、内容资源和外部功能扩展,又包含了单片机的编程工具——ICC AVR C编程器的数据类型、控制流、函数和指针等。本书的特点是:深入浅出,从最基本的概念开始,循序渐进地讲解单片机的应用开发;列举了大量实例,使读者能从实际应用中掌握单片机的开发与应用技术。本书适合作为从事单片机开发人员的参考用书。书中先后讲解了C语言基础、AVR单片机基础,并举了一些简单的实例。本书非常适合初学者。
【AVR单片机C语言编程及应用实例目录信息】
第1章 单片机系统概述
1. 1 AVR系列单片机的特点
1. 2 AT90系列单片机简介
第2章 AT90LS8535单片机的基础知识
2. 1 AT90LS8535单片机的总体结构
2. 1. 1 AT90LS8535单片机的中央处理器
2. 1. 2 AT90LS8535单片机的存储器组织
2. 1. 3 AT90LS8535单片机的I/O接口
2. 1. 4 AT90LS8535单片机的内部资源
2. 1. 5 AT90LS8535单片机的时钟电路
2. 1. 6 AT90LS8535单片机的系统复位
2. 1. 7 AT90LS8535单片机的节电方式
2. 1. 8 AT90LS8535单片机的芯片引脚
2. 2 AT90LS8535单片机的指令系统
2. 2. 1 汇编指令格式
2. 2. 2 寻址方式
2. 2. 3 伪指令
2. 2. 4 指令类型及数据操作方式
2. 3 应用程序设计
2. 3. 1 程序设计方法
2. 3. 2 应用程序举例
第3章 AT90LS8535单片机的C编程
3. 1 支持高级语言编程的AVR系列单片机
3. 2 AVR的C编译器
3. 3 ICCAVR介绍
3. 3. 1 安装ICCAVR
3. 3. 2 设置ICCAVR
3. 4 用ICCAVR编写应用程序
3. 5 下载程序文件
第4章 数据类型. 运算符和表达式
4. 1 ICCAVR支持的数据类型
4. 2 常量与变量
4. 2. 1 常量
4. 2. 2 变量
4. 3 AT90LS8535的存储空间
4. 4 算术和赋值运算
4. 4. 1 算术运算符和算术表达式
4. 4. 2 赋值运算符和赋值表达式
4. 5 逻辑运算
4. 6 关系运算
4. 7 位操作
4. 7. 1 位逻辑运算
4. 7. 2 移位运算
4. 8 逗号运算
第5章 控制流
5. 1 C语言的结构化程序设计
5. 1. 1 顺序结构
5. 1. 2 选择结构
5. 1. 3 循环结构
5. 2 选择语句
5. 2. 1 if语句
5. 2. 2 switch分支
5. 2. 3 选择语句的嵌套
5. 3 循环语句
5. 3. 1 while语句
5. 3. 2 do…while语句
5. 3. 3 for语句
5. 3. 4 循环语句嵌套
5. 3. 5 break语句和conTInue语句
第6章 函数
6. 1 函数的定义
6. 1. 1 函数的定义的一般形式
6. 1. 2 函数的参数
6. 1. 3 函数的值
6. 2 函数的调用
6. 2. 1 函数的一般调用
6. 2. 2 函数的递归调用
6. 2. 3 函数的嵌套调用
6. 3 变量的类型及其存储方式
6. 3. 1 局部变量
6. 3. 2 局部变量的存储方式
6. 3. 3 全局变量
6. 3. 4 全局变量的存储方式
6. 4 内部函数和外部函数
6. 4. 1 内部函数
6. 4. 2 外部函数
第7章 指针
7. 1 指针和指针变量
7. 2 指针变量的定义和引用
7. 2. 1 指针变量的定义
7. 2. 2 指针变量的引用
7. 2. 3 指针变量作为函数参数
7. 3 数组与指针
7. 3. 1 指向数组元素的指针变量
7. 3. 2 数组元素的引用 通过指针
7. 3. 3 数组名作为函数参数
7. 3. 4 指向多维数组的元素的指针变量
7. 4 字符串与指针
7. 4. 1 字符串的表示形式
7. 4. 2 字符串指针变量与字符数组的区别
7. 5 函数与指针
7. 5. 1 函数指针变量
7. 5. 2 指针型函数
7. 6 指向指针的指针
7. 7 有关指针数据类型和运算小结
7. 7. 1 有关指针的数据类型的小结
7. 7. 2 指针运算的小结
第8章 结构体和共用体
8. 1 结构体的定义和引用
8. 1. 1 结构体类型变量的定义
8. 1. 2 结构体类型变量的引用
8. 2 结构类型的说明
8. 3 结构体变量的初始化和赋值
8. 3. 1 结构体变量的初始化
8. 3. 2 结构体变量的赋值
8. 4 结构体数组
8. 4. 1 结构体数组的定义
8. 4. 2 结构体数组的初始化
8. 5 指向结构体类型变量的指针
8. 5. 1 指向结构体变量的指针
8. 5. 2 指向结构体数组的指针
8. 5. 3 指向结构体变量的指针做函数参数
8. 6 共用体
8. 6. 1 共用体的定义
8. 6. 2 共用体变量的引用
第9章 A190LS8535的内部资源
9. 1 I/O 口
9. 1. 1 端口A
9. 1. 2 端口B
9. 1. 3 端口C
9. 1. 4 端口D
9. 1. 5 I/O口的编程
9. 2 中断
9. 2. 1 单片机的中断功能
9. 2. 2 AT90LS8535单片机的中断系统
9. 2. 3 1CCAVRC编译器的中断操作
9. 2. 4 中断的编程
9. 3 串行数据通信
9. 3. 1 数据通信基础
9. 3. 2 AT90LS8535的同步串行接口
9. 3. 3 AT90LS8535的异步串行接口
9. 4 定时/计数器
9. 4. 1 定时/计数器的分频器
9. 4. 2 8位定时/计数器0
9. 4. 3 16位定时/计数器1
9. 4. 4 8位定时/计数器2
9. 5 EEPROM
9. 5. 1 与EEPROM有关的寄存器
9. 5. 2 EEPROM读/写操作
9. 5. 3 EEPROM的应用举例
9. 6 模拟量输入接口
9. 6. 1 模数转换器的结构
9. 6. 2 ADC的使用
9. 6. 3 与模数转换器有关的寄存器
9. 6. 4 ADC的噪声消除
9. 6. 5 ADC的应用举例
9. 7 模拟比较器
9. 7. 1 模拟比较器的结构
9. 7. 2 与模拟比较器有关的寄存器
9. 7. 3 模拟比较器的应用举例
第10章 AT90LS8535的人机接口编程
10. 1 键盘接口
10. 1. 1 非矩阵式键盘
10. 1. 2 矩阵式键盘
10. 2 LED显示输出
10. 2. 1 LED的静态显示
10. 2. 2 LED的动态扫描显示
10. 2. 3 动态扫描显示专用芯片MC14489
10. 3 LCD显示输出
10. 3. 1 字符型LCD
10. 3. 2 点阵型LCD
10. 4 ISD2500系列语音芯片的编程
10. 4. 1 ISD2500的片内结构和引脚
10. 4. 2 ISD2500的操作
10. 4. 3 ISD2500和单片机的接口及编程
10. 5 TP-uP微型打印机
10. 5. 1 TP-uP打印机的接口和逻辑时序
10. 5. 2 P-uP打印机的打印命令和字符代码
10. 5. 3 AT90LS8535与TP-uP系列打印机的接口及编程
10. 6 IC卡
10. 6. 1 IC卡读写装置
10. 6. 2 IC卡软件
第11章 AT90LS8535的外围扩展
11. 1 简单I/O扩展芯片
11. 1. 1 用74LS377扩展数据输出接口
11. 1. 2 数据输入接口
11. 2 模拟量输出
11. 2. 1 D/A转换器简介
11. 2. 2 8位数模转换器DAC0832
11. 2. 3 8位数模转换器与单片机的接口及编程
11. 2. 4 12位数模转换器DACl230
11. 2. 5 12位数模转换器与单片机的接口及编程
11. 3 可编程I/O扩展芯片8255A
11. 3. 1 8255A的引脚和内部结构
11. 3. 2 8255A的工作方式
11. 3. 3 8255A的控制字
11. 3. 4 AT90LS8535和8255A的接口
11. 4 带片内RAM的I/O扩展芯片8155
11. 4. 1 8155的引脚和内部结构.
11. 4. 2 8155的I/O口工作方式
11. 4. 3 8155的定时/计数器
11. 4. 4 8155的命令和状态字
11. 4. 5 AT90LS8535与8155的接口及编程
11. 5 定时/计数器芯片8253
11. 5. 1 8253的信号引脚和逻辑结构
11. 5. 2 8253的工作方式
11. 5. 3 8253的控制字
11. 5. 4 AT90LS8535与8253的接口及编程
11. 6 实时时钟芯片DS1302
11. 6. 1 DS1302的引脚和内部结构
11. 6. 2 DS1302的控制方式
11. 6. 3 AT90LS8535与DS1302的接口与编程
11. 7 数字温度传感器DS18B20
11. 7. 1 DSl8B20的引脚和内部结构
11. 7. 2 DS18B20的温度测量
11. 7. 3 AT90LS8535与DS18B20的接口与编程
第12章 AT90LS8535的通信编程
12. 1 串口通信
12. 1. 1 异步串口UART通信
12. 1. 2 同步串口SPI通信
12. 2 I2C总线
12. 2. 1 I2C总线协议
12. 2. 2 采用AT90LS8535的并行I/O口模拟I2C总线
12. 3 CAN总线
12. 3. 1 CAN总线的特点
12. 3. 2 CAN协议的信息格式
12. 3. 3 CAN控制器SJA1000
12. 3. 4 AT90LS8535与SJA1000的接口及编程
12. 4 AT90LS8535单片机与PC的串行通信
12. 4. 1 基于VC 6. 0的PC串口通信
12. 4. 2 应用实例
第13章 系统设计中的程序处理方法
13. 1 数字滤波处理
13. 1. 1 平滑滤波
13. 1. 2 中值滤波
13. 1. 3 程序判断滤波
13. 2 非线性处理
13. 2. 1 查表法
13. 2. 2 线性插值法