51单片机C语言编程一学就会
作者:何应俊,曾祥云 主编
出版时间:2014年版
内容简介
《51单片机C语言编程一学就会》以STC89C52(AT89S52)为例,介绍了51单片机的结构和特点、入门和提高所需的C语言知识,51单片机的输入/输出、定时器、中断、串行通信、A?D和D?A转换、交流和直流电动机及步进电动机的驱动。所有内容围绕着密切联系实际的典型应用(开发)示例而进行和展开。《51单片机C语言编程一学就会》充分考虑初学者的特点,对程序可能存在的疑难点进行了详细解释。 《51单片机C语言编程一学就会》适合单片机的初学者作自学教材,也适合职业院校电类专业作培训教材,还适合作中职单片机技能大赛的辅导用书。
目录
前言
第1篇入门篇
第1章学习单片机的必备基础
1?1单片机的基本概念
1?1?1初步了解单片机
1?1?2熟悉51单片机的引脚功能
1?1?3理解单片机的最小系统
1?2不同数制及相互转换简介
1?2?1十进制数
1?2?2二进制数
1?2?3十六进制数
1?2?4八进制数
1?2?5各种数制之间相互转换的方法
1?3搭建51单片机开发环境
1?3?1硬件开发系统
1?3?2搭建软件开发环境(Keil μVision)
1?3?3Keil μVision4的最基本应用——第一个C51工程
第2章花样流水灯和电动机的控制
2?1花样流水灯电路精讲
2?1?1花样流水灯电路原理图
2?1?2单片机控制花样流水灯工作原理简介
2?2相关的C51语言知识精讲
2?2?1数据类型概述
2?2?2常量和变量
2?2?3标识符和关键字
2?2?4C51的函数简介
2?2?5单片机C语言程序的基本结构
2?2?6再论局部变量与全局变量
2?2?7C语言的算术运算符和算术表达式
2?2?8关系运算符和关系表达式
2?2?9自增减运算符
2?2?10单片机的几个周期介绍
2?2?11while循环语句和for循环语句
2?2?12不带参数和带参数函数的写法和调用
2?3“位操作”控制流水灯
2?3?1编程思路
2?3?2参考程序
2?3?3部分程序代码详解
2?4字节控制(即并行I/O口控制)流水灯
2?4?1编程思路
2?4?2参考程序
51单片机C语言编程一学就会
目录
2?5使用移位运算符控制流水灯
2?5?1逻辑运算符和位运算符
2?5?2使用移位运算符控制流水灯的编程示例
2?6使用库函数实现流水灯
2?6?1循环移位函数
2?6?2使用循环移位函数实现流水灯
2?7使用条件语句实现流水灯
2?7?1条件语句
2?7?2使用if语句实现流水灯
2?8使用swtich语句控制流水灯
2?8?1switch语句介绍
2?8?2使用swtich语句控制流水灯
2?9使用数组控制流水灯
2?9?1C51的数组
2?9?2使用数组控制流水灯
2?10使用指针控制流水灯
2?10?1指针的概念和用法
2?10?2使用指针控制流水灯
2?11开关与灯的灵活控制
2?11?1钮子开关控制单片机
2?11?2轻触按键控制单片机
2?12按钮控制电动机的起动、停止、顺序起动、正反转、PWM调速
2?12?1按钮控制直流电动机和交流电动机的起动和停止
2?12?2按键控制交流电动机的顺序起动和正反转
2?13典型训练任务
第3章数码管数字钟
3?1数码管的显示原理
3?2数码管的静态显示
3?3数码管的动态显示
3?3?1YL?236单片机实训台数码管显示电路
3?3?2数码管动态显示入门示例
3?4数码管24h时钟
3?4?1单片机的中断系统
3?4?2定时器T0和T1工作方式1应用示例
3?4?3独立按键调时的数字钟
3?5典型训练任务
第4章综合应用之物料传送机模拟装置
4?1物料传送机模拟装置
4?1?1物料传送机模拟装置简介
4?1?2硬件连接
4?1?3程序代码示例
4?2典型训练任务
第2篇提高篇
第5章单片机的串行通信
5?1串行通信的基础知识
5?1?1串行通信标准和串行通信接口
5?1?2波特率
5?1?3同步通信与异步通信简介
5?1?4硬件连接
5?1?5读写串行口数据
5?1?6串行控制与状态寄存器
5?1?7串行口的工作方式
5?2串口通信设置
5?2?1计算机端串口通信设置
5?2?2单片机端串口通信的设置
5?3单片机串口通信的基础程序范例
5?4串口通信应用示例(用串口校准时间的数字钟)
第6章自动恒温箱
6?1自动恒温箱介绍
6?2LED点阵显示屏的应用
6?2?1LED点阵显示屏基础
6?2?2YL?236单片机实训台LED点阵显示屏
6?2?3LED点阵显示屏的编程
6?3DS18B20温度传感器
6?3?1DS18B20简介
6?3?2DS18B20的控制方法
6?3?3DS18B20的编程方法示例
6?4自动恒温箱的实现
6?5典型训练任务
第7章温度及市电电压监测仪
7?1温度及市电电压监测仪介绍
7?2A?D转换
7?2?1A?D和D?A转换简介
7?2?2典型A?D转换芯片ADC0809介绍
7?2?3ADC0809应用示例(I/O口方式编程)
7?3LM35温度传感器的认识和使用
7?3?1LM35的外形及特点
7?3?2LM35的典型应用电路分析
7?3?3LM35的应用电路连接及温度转换编程
7?4LCD1602液晶显示器的认识和使用
7?4?1LCD1602液晶显示器引脚功能
7?4?2LCD1602模块内部结构和工作原理
7?4?3LCD1602的时序
7?4?4LCD1602指令说明
7?4?5LCD1602的编程
7?5电压源介绍
7?6电子温度计及市电电压监测仪的程序代码示例及分析
7?7知识链接——D?A转换芯片DAC0832及应用
7?7?1DAC0832的内部结构和引脚功能
7?7?2YL?236实训台D?A转换模块介绍
7?7?3ADC0832采用I/O方式编程示例
7?7?4ADC0832采用扩展地址方式编程示例
7?8典型训练任务
第8章电子密码锁(液晶显示器、矩阵键盘的综合应用)
8?1电子密码锁简介
8?2矩阵键盘的应用方法
8?2?1矩阵键盘的结构
8?2?2矩阵键盘的编程方法——扫描法和利用二维数组存储键值
8?3LCD12864
8?3?1LCD12864的引脚说明
8?3?2YL?236单片机实训台LCD12864模块介绍
8?3?3LCD12864的读写时序和指令说明
8?3?4LCD12864的点阵结构
8?3?5LCD12864的指令说明
8?3?6LCD12864字模的获取
8?3?7LCD12864的应用示例
8?4电子密码锁的实现
8?4?1硬件连接及编程思路和技巧
8?4?2程序代码示例及讲析
8?5拓展
8?5?1LCD12864的跨屏显示
8?5?2带字库的LCD12864的显示编程
8?6典型训练任务
第9章步进电动机的控制
9?1步进电动机简介
9?2步进电动机的参数
9?3YL?236实训台的步进电动机模块介绍
9?3?1步进电动机及驱动器
9?3?2步进电动机位移装置与保护装置
9?4步进电动机的控制示例
9?4?1步进电动机模块游标的归零
9?4?2步进电动机的定位
9?5典型训练任务
第10章单片机I/O口的扩展
10?18255芯片的认识及应用
10?1?18255芯片的认识
10?1?28255芯片的典型应用示例
10?274LS245芯片及其应用
10?3端口复用的一些经验
10?3?1端口复用的一些具体策略
10?3?2使用8255芯片时单片机及8255芯片的端口分配建议
第3篇综合应用篇
第11章方便面生产线控制系统模拟
11?1方便面模拟生产线任务书
11?2方便面模拟生产线的实现
11?2?1方便面模拟生产线硬件模块接线和编程思路
11?2?2程序代码示例
11?3模块化编程
第12章煤矿自动运输车模拟控制系统
12?1煤矿自动运输车模拟装置系统说明
12?2煤矿自动运输车模拟系统的实现
12?2?1煤矿自动运输车模拟系统硬件接线
12?2?2煤矿自动运输车模拟系统的程序代码示例及解释
附录C51中的关键字
〖=?(〗11124666777991111222222242424242627282829293030303234343436363636373737393940414142
434344454546474747484849525254616262636666687171
767783858585869097999999101101102102103103104104105106107113113113113116117
124124127129129135136136137137137140141141141142143143144145146147149149153153154154154157164164165165167171172172173173173174
175179179179193193196200204204205206206207209209210213217217217219
226226226228229229231231232246247247250250251275
〖=〗