以前老资料,可继续下载参考。
目 录
第1章 点亮LED实例与经典延时程序介绍(看不懂就从第2章动手)
1.1 51单片机最小系统与芯片引脚图
1.2 点亮LED的多个常用实例
1.3 C语言各种延时程序详解
1.3.1 经典汇编延时程序时间计算(设晶振频率12Mz)
1.3.2 单片机C语言延时程序(大范围精确计算法:晶振频率任意)
1.3.3 单片机C语言延时程序(小范围精确计算法:晶振频率任意)
1.3.4 单片机C语言延时程序(利用库函数实现短暂精确延时)
1.3.5 使用定时器/计数器实现精确延时
1.4 main()、void main()和int main() 的区别
1.5 printf 格式化输出函数
第2章 建立Keil开发环境
2.1 快速建立工程和调试程序
2.1.1 安装Keil软件
2.1.2 第1个硬件实验
2.1.3工程的简单设置
2.1.4编译链接生成Hex目标文件
2.1.5 初步软件调试
2.2 程序烧录下载:
2.3.1 普通51单片机(如89C51,89C52)的硬件仿真。
2.3.2 STC高速51单片机的硬件仿真。
2.3.3 各种仿真方法对比
2.4 在keil中添加STC型号的3种方法
2.5 KEIL编辑器设置
2.6 代码调试与软件仿真
2.6.1 Keil 工程的详细设置
2.6.2 常用调试命令、在线汇编与断点设置
2.6.2.1 常用调试命令
2.6.2.2 在线汇编
2.6.2.3 断点设置
2.6.2.4 实例调试
2.6.3 Keil 程序调试窗口
2.6.3.1 存储器窗口
2.6.3.2 工程窗口寄存器页窗口
2.6.3.3 变量观察窗口
2.6.3.4 各种窗口在程序调试中的用途
2.6.4 Keil 的辅助工具和部份高级技巧
2.6.4.1 外围接口
2.6.4.2 性能分析窗口
2.6.4.3 变量来源浏览窗口
2.6.4.4 代码作用范围分析窗口
2.6.4.5 串行窗口与实际硬件相连
2.6.4.6 向普通IO端口送入信号
2.6.4.7 直接更改内存值
2.7 硬件实验环境的建立
第3章 KEIL环境的深入理解(难度较大)
3.1 Keil中的*.M51文件详解
3.1.1 完整的M51文件
3.1.2 KEIL编译器的编译过程
3.2 Keil中的STARTUP.A51文件详解
3.3 Keil优化技巧
3.3.1 KEILC的优化级别选项
3.3.3 编写代码时的优化
3.4 Keil中的变量和函数的绝对地址定位详解
3.4.1 变量绝对地址定位
3.4.2 函数绝对地址定位
3.5 Keil中的C语言与汇编语言混合编程
3.5.1 直接在C语言中嵌入汇编程序
3.5.2 在C语言中调用汇编程序
3.6 Keil中的错误警告集
第2篇 单片机中的C语言
第4章 数据类型与运算符
4.1 原码、反码、补码
4.2 BCD码详细介绍
4.3 二进制格雷码
4.4 常量
4.5 变量的数据类型
4.5.1 字符型数据
4.5.2 整型数据
4.5.3 实数(单片机上尽量不用以免大幅度降低程序速度)
4.5.4 空类型(void)
4.5.5 指针型
4.5.6 keil特有类型(位变量)
4.5.7 类型转换与强制类型转换技巧
4.6 变量存储空间
4.7 变量存储类型Auto、static、extern、register
4.7.1 Auto 自动存储类型变量(局部变量存储类型默认为auto型)
4.7.2 static静态存储类型变量
4.7.3 Extern(外部)变量
4.7.4 register(寄存器)变量
4.8 变量作用域
4.9 #define typedef const的差别
4.10 运算符(总 结)
4.10.1 算术运算符
4.10.2 关系运算符
4.10.3 逻辑运算符
4.10.4 赋值运算符
4.10.5 位操作运算符
4.10.6 条件运算符
4.10.7 特殊运算符
4.10.8 分隔符
4.11 各种运算符的优先级与结合性
第5章 C51构造数据类型
5.1 数组:将相同类型数据组合在一起就构成数组(如数码管显示缓冲区)
5.2 结构体:将不同类型数据组合在一起就构成结构体(如年月日2011-01-10)
5.3 共用体:不同变量占用相同内存地址就是共用体
5.4 枚举:把变量允许的取值一 一列举出来就构成了枚举
5.5 指针:用于直接读取或修改内存值
第6章 流程与控制
6.1 分支结构
6.2 循环结构
第7章 函 数
7.1 函数定义
7.2 调用格式
7.3 传值调用与传地址调用2种方式对比
7.4 用函数指针变量调用函数(本质是用函数入口地址调用函数)
7.5 函数作用域
第8章 模块化编程
8.1 头文件的编写
8.2 预处理指令
8.3 多文件程序
第3篇 单片机基本模块单元
第9章 定时计数器
第10章 中 断
9.1 使用中断最简单的方法
9.2 外中断代码调试(按键的防抖技术)
第11章 串 行 口
10.2 虚拟串口
10.4 USB 转串口
10.4.1 CH341A
10.4.2 CH340G(带光耦隔离)
10.4.3 PL2303HX
10.6 RS485串行通信
10.7 SSI通信
10.8 校验和(CheckSum)
10.9 CRC校验(全称:循环冗余码校验)
10.9.1 CRC原理
10.9.2 CRC8查表法和计算法在18b20中的运用
10.9.3 Visual Basic中实现CRC校验
10.10 串口输出汉字
第12章 IIC 通信
11.1 I2C总线数据传输格式
11.2 硬件仿真观察24C01读写结果
例11-1 有页面限制,只适合读写单字节
例11-2 无页面限制,慢速,适合连续读写多个字节,优先选用
例11-3 无页面限制,快速,适合连续读写多个字节, 要根据芯片型号对代码
一个常数值作修改
11.3 24C01运用实例
例11-4 使用计算机串口助手控制单片机读写24C01的数据。
例 11-5 利用24C01记录单片机上电次数
例 11-6 利用24C01断电瞬间存储数据
11.4 24C64硬件仿真与运用实例
第13章 SPI 通信
12.2 SPI总线数据传输格式
12.2 STC单片机的SPI硬接口
12.2.1 SPI相关的特殊功能寄存器
12.2.2 STC单片机SPI硬接口运用实例
例12-1 STC-SPI硬接口(单主单从_忽略片选)
例12-2 STC-SPI硬接口(单主单从_从机片选)
例12-3 STC-SPI硬接口(单主多从)
例12-4 STC-SPI硬接口(互为主从)
12.3 X5045存储器读写操作
12.3.1 X5045引脚功能描述
12.3.2 X5045内部原理
12.3.3 X5045存储器读写实例(模拟SPI方式)
第4篇 编 程 实 例
第14章 常用单片机接口程序
14.1 数码管显示程序设计与输入输出IO口扩展
14.2 74LS165并入串出实验
14.3 独立键盘
14.4 矩阵键盘
14.5 LED点阵(8×8)
第15章 1602液晶
第16章 模数转换ADC
15.1 8位AD转换芯片TLC0831(或ADC0831)
15.2 使用STC12C5A60S2内部的10位模/数转换器
15.3 12位AD转换芯片MCP3202
15.4 单通道16位AD转换芯片ADS1110
15.5 单通道18位AD转换芯片MCP3421
第17章 数模转换DAC
17.1 TLC5615数/模转换电路图与简单测试程序
17.2 TLC5615产生锯齿波
17.3 TLC5615的高级运用(播放歌曲)
17.4 TLC5615输出正弦波或其它函数信号
第18章 单总线18B20 通信
17.1 DS18B20运用基础(引脚排列与通信时序)
17.2 单只DS18B20的温度检测
17.3 多只DS18B20的温度检测
17.3.1 读取传感器代码
17.3.2 读取传感器温度
第19章 DS1302时钟芯片
第20章 红外通信
第21章 步进电机测试
第22章 频率检测
第23章 通用显示器制作
第24章 2M字节FLASH存储器W25Q16 (W25X16)
第25章 SD卡
25.1 认识SD卡与SD卡读写测试
25.2 MMC + SD1.0 + SD2.0卡的初始化
25.3 SD卡的单扇区读写
25.4 SD卡的多扇区读写擦除
25.2 znFAT文件系统
25.2.1 znFAT文件系统总体结构
25.2.2 znFAT 10.89的移植方法
25.2.3 znFAT移植基础实例
25.2.3.1 文件系统初始化
25.2.3.2 打开根目录下的短名文件
25.2.3.3 打开深层目录下的短名文件
25.2.3.4 打开根目录下的文件(长名,无中文)
25.2.3.5 打开深层长名目录下的文件(长名,无中文)
25.2.3.6 打开深层目录下的文件(长名,含中文)
25.2.3.7 打开文件时使用带有通配符的文件名
25.2.3.8 文件定位读取数据( A )
25.2.3.8 文件定位读取数据( B )
25.2.3.9 读取文件(数据重定向)
25.2.3.10 在根目录下创建文件(短名)
25.2.3.11 在深层目录下创建文件(短名)
25.2.3.12 在根目录下创建文件(长名,无中文)
25.2.3.13 在根目录下创建文件(长名,含中文)
25.2.3.14 在深层目录下创建文件(长名,含中文)
25.2.3.15 在根目录下创建子目录(短名)
25.2.3.16 创建多级子目录(短名)
25.2.3.17 在根目录下创建多级子目录(长名,含中文)
25.2.3.18 打开根目录下的子目录(短名)
25.2.3.19 打开根目录下的子目录(长名,含中文)
25.2.3.20 打开根目录下的通配子目录(长名,含中文)
25.2.3.21 文件数据写入(新建文件写入数据)
25.2.3.21 文件数据写入(添加数据)
25.2.3.22 文件拷贝
25.2.3.23 文件数据截断
25.2.3.24 删除文件
25.2.3.25 删除通配文件
25.2.3.26 删除目录
25.2.3.27 删除通配目录
25.2.3.28 磁盘格式化
第26章 MP3播放器实验(znFAT运用实例)
26.1 MP3介绍与电路讲解
26.2 正弦测试
26.3 播放简易的MP3文件
26.4 其它音频格式的支持
26.5 读取解码时间
26.6 VS1003的频谱功能
26.7 通过SD卡播放MP3文件
第27章 TFT彩色触摸屏运用(znFAT运用实例)
27.1 TFT液晶简介
27.2 TFT模块的坐标系统
第28章 单片机扩展32K外部数据存储器62256
28.1 电路讲解
28.2 软件实例
第29章 USB 通信
第30章 网络通信
第32章 数字存储示波器技巧与逻辑分析仪的操作
第33章 数制转换(含小数部分)与ASCII表
参 考 文 献