目前单片机教学的绝大多数内容仍然停留在51单片机最初进入课堂的那个年代(1984年前后),与单片机技术相关的许多新知识、新器件的内容却极少加入,学生在单片机课程中学到的知识很难应对大学生电子设计竞赛中的大多数竞赛题,更无法应对在未来工程实践中出现的诸多问题。本书保留了经典51系列单片机的基本教学内容,但许多内容突破了传统的单片机应用理念,增加了实用的ADC/DAC内容以及单片机与FPGA扩展和基于单片机IP软核的片上系统构建及应用的知识,从而开拓了一个将普通单片机技术、FPGA开发技术、EDA技术、片上系统应用技术有机融合、综合运用和培养自主创新能力的平台。
本书主要介绍单片机原理及应用技术,讲解深入浅出,内容新颖实用。主要章节保留了经典51系列单片机的基本教学内容,并沿袭了传统的教学流程,但其中的许多内容突破了传统的单片机应用理念,对此课程的教学目标有了全新的拓展和延伸,例如,删除了许多在传统情况下必讲而已无任何实用价值的内容,增加了实用的adc/dac内容以及单片机与fpga扩展和基于单片机ip软核的片上系统构建及应用的知识,从而开拓了一个将普通单片机技术、fpga开发技术、eda技术、片上系统应用技术有机融合、综合运用和培养自主创新能力的平台。全书共9章,主要内容包括51系列单片机结构、汇编指令及程序设计、定时/计数器与中断应用、串行通信接口技术、单片机普通扩展技术、高速串行adc/dac扩展、单片机c语言编程设计、单片机与fpga接口及软硬件联合设计技术、基于单片机ip软核的fpga片上系统应用技术。
本书可作为高等院校电子信息、通信工程、工业自动化和仪器仪表等学科或专业的本科生或高职生的单片机技术或电子设计竞赛培训等课程的教材或参考书,同时也可作为相关专业技术人员的自学参考书。
第1章 概述
1.1 基本概念
1.2 单片机的发展概况
1.3 单片机的特性
1.4 常用单片机系列及其特性
1.5 MCS-51系列单片机
1.6 单片机系统应用
1.7 SOC与单片机
思考练习题
第2章 单片机硬件结构
2.1 单片机的基本结构
2.1.1 单片机基本功能模块配置
2.1.2 单片机内部逻辑结构
2.1.3 CPU的结构和特点
2.1.4 单片机其他结构模块
2.2 单片机的封装与引脚功能
2.3 I/O结构及功能
2.4 单片机存储器的组织结构
2.4.1 程序存储器
2.4.2 数据存储器
2.5 单片机辅助电路
2.5.1 时钟电路
2.5.2 复位和复位电路
2.6 单片机的工作时序
2.6.1 单片机CPU时序基本概念
2.6.2 单片机的取指和执行时序
2.6.3 单片机访问外部存储器的时序
2.7 单片机的低功耗和编程工作方式
2.8 看门狗定时器
思考练习题
第3章 指令系统与汇编语言程序设计
3.1 指令系统简介
3.2 寻址方式
3.3 单片机汇编指令
3.3.1 数据传送指令
3.3.2 算术运算指令
3.3.3 逻辑运算指令
3.3.4 移位指令
3.3.5 控制转移类指令
3.3.6 子程序调用/返回指令
3.3.7 位操作指令
3.4 单片机汇编程序设计
3.4.1 单片机编程语言
3.4.2 汇编语言伪指令
3.4.3 汇编语言程序设计的流程
3.5 汇编语言程序的基本结构
3.5.1 顺序程序设计
3.5.2 分支程序设计
3.5.3 循环程序设计
3.5.4 子程序设计
思考练习题
第4章 单片机的定时/计数器与中断
4.1 定时/计数器概述
4.1.1 定时/计数器基本构成
4.1.2 对TO和T1的控制方式
4.2 定时/计数器的4种工作方式
4.3 定时/计数器T2
4.3.1 控制寄存器T2CON
4.3.2 模式寄存器T2MOD
4.4 定时/计数器使用示例
4.5 单片机的中断系统
4.5.1 单片机的中断源
4.5.2 中断控制寄存器的设置
4.5.3 中断响应过程
4.5.4 中断请求的撤销方法
4.6 中断应用编程实例
思考练习题
第5章 串行通信接口
5.1 串行通信简介
5.1.1 串行通信数据传输方式
5.1.2 串行通信的方式
5.2 单片机串行通信接口
5.2.1 单片机串行口的硬件结构
5.2.2 串行口的工作方式
5.2.3 串行通信波特率的计算
5.3 单片机串行通信应用示例
5.3.1 串行口工作方式0的应用
5.3.2 单片机间双机通信
5.3.3 单片机间多机通信
5.3.4 单片机与PC机的通信
5.4 RS-232C标准
5.4.1 RS-232C标准串行通信接口
5.4.2 RS-232C标准与TTL标准之间的转换
5.5 RS-485串行通信
5.5.1 RS-485串行总线标准
5.5.2 RS-485接口标准的半双工和全双工
思考练习题
第6章 单片机基本扩展技术
6.1 51单片机最小系统
6.1.1 片内有ROM型单片机最小系统
6.1.2 片内无ROM型单片机最小系统
6.1.3 单片机系统总线
6.2 存储器的扩展
6.2.1 单片机常用接口存储器的分类
6.2.2 程序存储器的扩展
6.2.3 随机存储器的扩展
6.3 单片机并行I/O扩展
6.4 单片机键盘接口技术
6.4.1 按键抖动问题
6.4.2 独立式按键接口和键盘消抖动程序编写
6.4.3 矩阵式键盘接口编程
6.5 LED显示器及其接口技术
6.5.1 LED数码显示器的结构
6.5.2 单片机与LED数码管的接口电路设计
6.5.3 键盘、LED显示器组合接口电路设计
6.5.4 串行I/O口扩展技术
6.5.5 利用串行口实现键盘/显示器接口
6.6 LCD液晶显示器接口技术
6.6.1 LCM 1602简介
6.6.2 LCM 1602模块应用举例
6.7 单片机串行总线扩展技术
6.7.1 单总线及单总线器件
6.7.2 单总线温度传感器DS18820
6.7.3 单片机红外串行通信
思考练习题
第7章 单片机扩展DAC和ADC
7.1 DAC基本原理和重要参数
7.2 DAC器件接口技术
7.2.1 8位D/A转换器DAC0832
7.2.2 SPI串行DAC TLV5637与单片机的接口
7.3 ADC器件接口技术
7.3.1 A/D转换器的性能指标
7.3.2 并行ADC器件ADC0809的接口技术
7.3.3 串行ADC器件MAX187/189的接口技术
7.3.4 串行精密ADC器件ADS1100的接口技术
7.3.5 串行高速ADC器件ADS7816的接口技术
7.3.6 高速微功耗串行ADC器件TLV2541的接口技术
7.3.7 双通道A/D转换芯片ADC0832的接口技术
7.3.8 高速同步10位串行A/D转换器的接口技术
思考练习题
第8章 基于单片机核的SOC技术
8.1 单片机扩展FPGA及单片机核应用技术
8.1.1 FPGA扩展方案及其系统设计流程
8.1.2 基于单片机IP软核的SOC设计方案
8.2 单片机扩展FPGA设计实例
8.2.1 串进并出/并进串出双向端口扩展模块设计
8.2.2 8位四通道数据交换扩展模块设计
8.2.3 存储器读写的FPGA扩展模块设计
8.2.4 四通道PWM信号发生器接口模块设计
8.2.5 移相信号发生器扩展模块设计
8.2.6 里萨如图波形发生器扩展模块设计
8.2.7 数字电压表扩展模块设计
8.2.8 数字频率计扩展模块设计
8.2.9 等精度频率计扩展模块设计
8.2.10 直流电机闭环控制扩展电路模块设计
8.3 基于单片机IP核的FPGA片上系统设计
8.3.1 单片机扩展串进并出/并进串出模块的FPGA片上系统设计
8.3.2 单片机扩展SRAM模块的FPGA片上系统设计
8.3.3 单片机扩展ADC采样控制模块的FPGA片上系统设计
8.3.4 单片机扩展移相信号发生器模块的FPGA片上系统设计
8.3.5 单片机扩展直流电机控制模块的FPGA片上系统设计
8.3.6 单片机扩展数字频率计模块的FPGA片上系统设计
8.3.7 单片机扩展等精度频率测试模块的FPGA片上系统设计
实验与设计
8-1 单片机串口扩展FPGA片上系统设计
8-2 单片机数据交换FPGA扩展电路设计
8-3 扩展外部数据存储器的FPGA单片系统设计
8-4 四通道PWM信号发生器及其单片机控制系统设计
8-5 移相信号发生器的FPGA片上系统设计
8-6 里萨如图波形发生器的FPGA片上系统设计
8-7 数字电压表FPGA单片系统设计
8-8 数字频率计与单片机串行通信接口功能设计
8-9 直流电机测控FPGA单片系统设计
8-10 等精度频率计FPGA单片系统设计
8-11 其于FPGA的红外双向通信电路设计
第9章 单片机C51语言程序设计
9.1 单片机的C语言概述
9.2 C51入门
9.2.1 C51的数据类型
9.2.2 特殊功能寄存器
9.2.3 C51的存储类型
9.2.4 C51的运算符及表达式
9.2.5 C51的流程控制语句
9.2.6 函数与C51中断服务函数
9.2.7 指针与指定地址的存储器访问
9.2.8 51应用要点归纳
9.3 C51编程举例
9.3.1 C51程序实现I/O端口的操作
9.3.2 C51实现内部定时器操作
9.3.3 C51实现简易交通灯控制
9.3.4 C51实现串口操作
9.4 Keil C51集成开发环境
9.4.1 Keil C51的编译流程
9.4.2 创建工程
9.4.3 输入C源文件
9.4.4 C程序编译
9.4.5 程序调试
9.4.6 生成HEX目标文件
9.5 C语言与汇编语言的混合编程
9.5.1 C51程序中嵌入汇编代码
9.5.2 C51程序中调用汇编子程序
思考练习题
参考文献
附录A MCS-51单片机指令表
附录B 单片机SOC实验开发系统简介
B.1 KX 7C5E+型单片机SOC开发系统
B.2 KX DN5/7系列单片机SOC系统
B.3 单片机SOC设计实验标准扩展模块
附录C STC89C单片机编程下载方法