对电路不熟,学习过程相对要长些,给你推荐本好书参考,《51单片机轻松入门-基于STC15W4K系列》。 第1章 单片机高效入门 ………………………………………………………………………1 1.1单片机简介 …………………………………………………………………………………1 1.1.1 认识单片机 ………………………………………………………………………………1 1.1.2 单片机的用途 ……………………………………………………………………………2 1.1.3 典型芯片与C语言介绍 …………………………………………………………………2 1.1.4 本书的配套实验板及相关学习工具介绍 ………………………………………………4 1.2点亮一个发光二极管 ………………………………………………………………………13 1.2.1 单片机型号命名规则 ……………………………………………………………………13 1.2.2 单片机引脚功能说明 ……………………………………………………………………14 1.2.3 制作一个最简单的单片机实验电路 ……………………………………………………19 1.2.4 使用KeilμVision3环境编写最简单的程序 …………………………………………20 1.2.5 ISP下载程序到单片机 …………………………………………………………………25 1.2.6 程序解释 …………………………………………………………………………………27 1.3 Keil仿真 ……………………………………………………………………………………28 1.3.1 软件仿真 …………………………………………………………………………………28 1.3.2 硬件仿真 …………………………………………………………………………………34 1.4 经典流水灯实例 ……………………………………………………………………………36 1.5 单片机C语言延时程序详解 ………………………………………………………………39 1.5.1学会使用计算软件 ………………………………………………………………………39 1.5.2 计算软件内部运算过程详解 ……………………………………………………………40 1.5.3 利用库函数实现短暂精确延时 …………………………………………………………46 1.5.4 使用定时器/计数器实现精确延时 ……………………………………………………46 1.6 main()、void main()和intmain()的区别 …………………………………………46 1.7 printf格式化输出函数 …………………………………………………………………47 第2章 单片机开发必须掌握的C语言基础 …………………………………………………51 2.1简单数据类型与运算符 ……………………………………………………………………51 2.1.1 原码、反码、补码、BCD码和格雷码 …………………………………………………52 2.1.2 常量 ………………………………………………………………………………………56 2.1.3 变量的数据类型(bit、char、int、long、float) …………………………………56 2.1.4 变量存储空间(code、data、bdata、idata、xdata) ………………………………65 2.1.5 变量存储类型(auto、static、extern) ………………………………………………66 2.1.6 变量作用域 ………………………………………………………………………………69 2.1.7 运算符 ……………………………………………………………………………………70 2.1.8 运算符的优先级与结合性 ………………………………………………………………76 2.2 C51构造数据类型 …………………………………………………………………………78 2.2.1 数组 ………………………………………………………………………………………78 2.2.2 结构体 ……………………………………………………………………………………80 2.2.3 共用体 ……………………………………………………………………………………83 2.2.4 指针 ………………………………………………………………………………………84 2.2.5 #define与typedef的区别 ……………………………………………………………88 2.3 流程与控制…………………………………………………………………………………90 2.3.1 分支结构 …………………………………………………………………………………90 2.3.2 循环结构 …………………………………………………………………………………92 2.3.3 跳转结构 …………………………………………………………………………………93 2.4 函数 …………………………………………………………………………………………95 2.4.1 函数定义 …………………………………………………………………………………95 2.4.2 调用格式 …………………………………………………………………………………96 2.4.3 传值调用与传地址调用的对比 …………………………………………………………96 2.4.4 数组作为函数参数 ………………………………………………………………………97 2.4.5 使用指针变量作为函数形式参数 ………………………………………………………98 2.4.6 使用结构体变量指针作为函数参数 ……………………………………………………98 2.4.7 函数作用域 ………………………………………………………………………………99 2.4.8 库函数 ……………………………………………………………………………………99 2.5 模块化编程…………………………………………………………………………………100 2.5.1 头文件的编写……………………………………………………………………………100 2.5.2 条件编译 ………………………………………………………………………………100 2.5.3 多文件程序(模块化编程)……………………………………………………………101 第3章 定时器/计数器、中断系统 …………………………………………………………104 3.1 定时器/计数器 ……………………………………………………………………………104 3.1.1 单片机定时器/计数器工作原理概述 …………………………………………………104 3.1.2 定时器/计数器的相关寄存 ……………………………………………………………105 3.1.3 定时器/计数器的工作方式 ……………………………………………………………108 3.1.4 初值计算 ………………………………………………………………………………111 3.1.5 编程举例 ………………………………………………………………………………112 3.2 可编程时钟输出 …………………………………………………………………………115 3.3 中断系统 …………………………………………………………………………………120 3.3.1 中断系统结构图 ………………………………………………………………………120 3.3.2 操作电路图中的开关(相关寄存器介绍)………………………………………………120 3.3.3 编写中断函数 …………………………………………………………………………124 3.3.4 中断程序举例 …………………………………………………………………………125 3.3.5 外部中断代码调试(按键的防抖技术) ……………………………………………129 第4章 串口通信 ……………………………………………………………………………131 4.1最基本的串口通信 …………………………………………………………………………131 4.1.1串口数据发送格式 ………………………………………………………………………132 4.1.2串口相关寄存器 …………………………………………………………………………133 4.1.3 波特率计算步骤 ………………………………………………………………………138 4.1.4 单片机与计算机通信的简单例子………………………………………………………140 4.2 彻底理解串口通信协议 …………………………………………………………………144 4.3 串口隔离电路 ……………………………………………………………………………149 4.4 计算机扩展串口(USB转串口芯片CH340G) …………………………………………151 4.5 RS485串行通信 …………………………………………………………………………155 4.6 SSI通信 …………………………………………………………………………………158 4.6.1 SSI数据通信格式 ……………………………………………………………………158 4.6.2 SSI硬件电路 …………………………………………………………………………159 4.6.3 SSI软件实现 …………………………………………………………………………160 4.7 数据通信中的错误校验 …………………………………………………………………162 4.7.1校验和(CheckSum)与重要的串口通信实例 ………………………………………163 4.7.2 CRC校验 ………………………………………………………………………………166 4.8 单片机向计算机发送多种格式的数据 …………………………………………………170 第5章 SPI通信………………………………………………………………………………175 5.1 SPI总线数据传输格式……………………………………………………………………175 5.1.1 接口定义…………………………………………………………………………………175 5.1.2 传输格式…………………………………………………………………………………176 5.2 SPI接口相关寄存器………………………………………………………………………177 5.2.1 SPI相关的特殊功能寄存器 ……………………………………………………………177 5.2.2 SPI接口引脚切换 ………………………………………………………………………181 5.3 SPI接口运用举例 …………………………………………………………………………181 第6章 I2C通信 ………………………………………………………………………………191 6.1 I2C总线数据传输格式 ……………………………………………………………………191 6.1.1 各位传输要求 …………………………………………………………………………191 6.1.2 多字节传输格式 ………………………………………………………………………194 6.2 程序模块功能测试 ………………………………………………………………………198 6.2.1 硬件仿真观察24C02读/写结果(R/C时钟:22.118 4MHz)…………………………198 6.2.2 硬件仿真观察24C32/64读/写结果(R/C时钟:22.118 4MHz)………………………204 6.3 24C02运用实例(断电瞬间存储整数或浮点数) ………………………………………207 第7章 单片机内部比较器与DataFlash存储器………………………………………………214 7.1 STC15W系列单片机内部比较器……………………………………………………………214 7.1.1比较器结构图 ……………………………………………………………………………214 7.1.2寄存器说明 ………………………………………………………………………………214 7.1.3电路讲解与程序实例 ……………………………………………………………………216 7.2 DataFlash存储器 …………………………………………………………………………217 7.2.1与DataFlash操作有关的寄存器介绍…………………………………………………218 7.2.2 DataFlash操作实例(断电瞬间存储数据) …………………………………………220 第8章 可编程计数阵列CCP/PCA/PWM模块(可用作DAC)…………………………………226 8.1 PCA模块总体结构图 ………………………………………………………………………226 8.2 PCA模块的特殊功能寄存器 ………………………………………………………………227 8.3 PCA模块的工作模式与应用举例 …………………………………………………………230 ====== 第20章 SD卡与znFAT文件系统 ……………………………………………………………366 20.1认识SD卡与SD卡驱动程序 ……………………………………………………………366 20.1.1 认识SD卡 ………………………………………………………………………………366 20.1.2 电路讲解 ………………………………………………………………………………368 20.1.3 通信时序与完整驱动程序说明 ………………………………………………………368 20.2 znFAT文件系统 …………………………………………………………………………377 20.2.1 znFAT的移植方法………………………………………………………………………377 20.2.2znFAT移植实例 …………………………………………………………………………381 第21章 MP3播放器实验………………………………………………………………………383 21.1 MP3的介绍与电路讲解……………………………………………………………………383 21.1.1 VS1003B引脚说明………………………………………………………………………384 21.1.2 VS1003寄存器 …………………………………………………………………………385 21.2 正弦测试 …………………………………………………………………………………387 21.3 通过SD卡播放MP3文件…………………………………………………………………390 第22 章数字存储示波器技巧与逻辑分析仪的操作…………………………………………394 22.1 测量直流电源开关机瞬间输出的毛刺浪涌 ……………………………………………394 22.2 测量稍纵即逝的红外发射信号 …………………………………………………………398 22.3 精确测量直流电源纹波 …………………………………………………………………400 22.4 示波器带宽选用依据 ……………………………………………………………………402 22.5 逻辑分析仪快速入门 ……………………………………………………………………403 附录ASCII码表…………………………………………………………………………………406 参考文献 ………………………………………………………………………………………408
|