描述
开 本: 16开纸 张: 胶版纸包 装: 平装-胶订是否套装: 否国际标准书号ISBN: 9787121322457
本书所有内容围绕着密切联系实际的典型应用示例进行和展开;充分考虑了初学者的特点,本书配有相关的视频讲解,对程序可能的疑难点进行了详细解释。
第1篇 入 门 篇
第1章 学习单片机的基础 (2)
1.1 单片机的基本知识 (2)
1.1.1 单片机的结构 (2)
1.1.2 单片机封装示例 (3)
1.1.3 单片机的应用场合 (4)
1.1.4 单片机控制系统的基本结构 (4)
1.1.5 单片机控制系统的开发过程 (5)
1.2 51单片机的引脚 (5)
1.2.1 51单片机的引脚功能 (5)
1.2.2 TTL电平和COMS电平的概念 (7)
1.3 单片机的小系统 (8)
1.3.1 直流供电 (8)
1.3.2 时钟电路 (8)
1.3.3 复位电路 (9)
1.4 数制及相互转换简介 (10)
1.4.1 十进制数 (10)
1.4.2 二进制数 (10)
1.4.3 十六进制数 (10)
1.4.4 八进制数 (11)
1.4.5 各种数制之间相互转换的方法 (11)
1.5 搭建51单片机开发环境 (13)
1.5.1 搭建硬件系统 (13)
1.5.2 搭建软件开发环境(Keil ?Vision) (17)
1.5.3 Keil ?Vision4的基本应用—个C51工程 (17)
第2章 入门关—花样流水灯的实现 (28)
2.1 花样流水灯电路精讲 (28)
2.1.1 花样流水灯原理图 (28)
2.1.2 单片机控制花样流水灯的工作原理 (30)
2.2 本章相关的C51语言知识精讲 (31)
2.2.1 C51的函数简介 (31)
2.2.2 数据类型 (33)
2.2.3 常量 (34)
2.2.4 变量 (35)
2.2.5 标识符和关键字 (37)
2.2.6 单片机C语言程序的基本结构 (38)
2.2.7 算术运算符和算术表达式 (38)
2.2.8 关系运算符和关系表达式 (39)
2.2.9 自增减运算符 (40)
2.2.10 单片机的周期 (40)
2.2.11 while循环语句和for循环语句 (40)
2.2.12 不带参数和带参数函数的声明、定义和调用 (43)
2.3 使用“位操作”控制流水灯 (45)
2.3.1 编程思路 (45)
2.3.2 参考程序及解释 (45)
2.3.3 观察效果 (46)
2.4 使用字节控制(即并行I/O口控制)流水灯 (46)
2.4.1 编程思路 (46)
2.4.2 参考程序及解释 (47)
2.5 使用移位运算符控制流水灯 (47)
2.5.1 逻辑运算符和位运算符 (47)
2.5.2 使用移位运算符控制流水灯的编程示例 (49)
2.6 使用库函数实现流水灯 (50)
2.6.1 循环移位函数 (50)
2.6.2 使用循环移位函数实现流水灯 (51)
2.7 使用条件语句实现流水灯 (52)
2.7.1 条件语句 (52)
2.7.2 使用if语句实现流水灯 (53)
2.8 使用switch语句控制流水灯 (54)
2.8.1 switch语句介绍 (54)
2.8.2 使用switch语句控制流水灯的编程示例 (55)
2.9 使用数组控制流水灯 (56)
2.9.1 C51语言的数组 (56)
2.9.2 使用数组控制流水灯的编程示例 (57)
2.10 使用指针实现流水灯 (58)
2.10.1 指针的概念和用法 (58)
2.10.2 使用指针实现流水灯的编程示例 (59)
第2篇 常用资源使用
第3章 按键和单片机对灯和电机等器件的控制 (62)
3.1 独立按键的原理及应用 (62)
3.1.1 常见的轻触按键的实物 (62)
3.1.2 轻触按键的通、断过程及消抖 (63)
3.1.3 实现按键给单片机传指令的硬件结构 (64)
3.1.4 独立按键的典型应用示例──按键控制蜂鸣器鸣响 (65)
3.2 矩阵按键的应用 (68)
3.2.1 矩阵按键的原理和硬件设计 (68)
3.2.2 矩阵键盘的典型编程方法—扫描法和利用二维数组存储键值 (69)
3.3 按键和单片机控制电机的运行状态 (74)
3.3.1 按钮控制直流电机和交流电机的启动和停止 (74)
3.3.2 按键控制交流电机的顺序启动 (76)
3.3.3 按键控制电机的正反转 (80)
3.3.4 直流电机的PWM调速 (82)
3.4 开关与灯的灵活控制 (84)
3.4.1 钮子开关控制单片机实现停电自锁与来电提示 (85)
3.4.2 按键和单片机控制灯 (86)
第4章 单片机的中断系统及应用示例 (88)
4.1 单片机的中断系统 (88)
4.1.1 中断的基本概念 (88)
4.1.2 中断优先级和中断嵌套 (90)
4.1.3 应用中断需要设置的4个寄存器 (91)
4.1.4 中断服务程序的写法(格式) (94)
4.2 定时器T0和T1的工作方式1 (94)
4.2.1 单片机的几个周期 (94)
4.2.2 定时器的工作方式1工作过程详解 (94)
4.2.3 定时器T0和T1的工作方式1应用示例 (95)
4.3 外部中断的应用 (96)
4.3.1 低电平触发外部中断的应用示例 (96)
4.3.2 下降沿触发外部中断的应用示例 (99)
第5章 数码管的静态显示和动态显示 (100)
5.1 数码管的显示原理 (100)
5.2 数码管的静态显示 (102)
5.3 数码管的动态显示 (105)
5.3.1 典型数码管显示电路 (105)
5.3.2 数码管动态显示编程入门示例 (109)
5.4 使用数码管实现24小时时钟 (110)
5.4.1 任务书 (110)
5.4.2 典型程序示例及解释 (111)
第6章 单片机的串行通信 (117)
6.1 RS-232串行通信的基础知识 (117)
6.1.1 串行通信标准和串行通信接口 (117)
6.1.2 通信的几个基本概念 (120)
6.1.3 RS-232串行通信的硬件连接 (121)
6.1.4 读写串口数据 (122)
6.1.5 串行控制与状态寄存器 (123)
6.1.6 串口的工作方式 (123)
6.2 串口通信设置 (124)
6.2.1 计算机串口通信设置 (124)
6.2.2 单片机串口通信设置 (125)
6.3 单片机串口通信的基础程序范例 (126)
6.4 串口通信应用示例(用串口校准时间的数字钟) (127)
6.5 知识链接 (131)
6.5.1 字符型数据 (131)
6.5.2 单片机与单片机之间的通信 (132)
6.5.3 字符串数组 (132)
第7章 液晶显示屏和OLED屏的使用 (133)
7.1 LCD1602的认识和使用 (133)
7.1.1 LCD1602的引脚功能及其和单片机的连接 (134)
7.1.2 LCD1602模块的内部结构和工作原理 (135)
7.1.3 LCD1602的工作时序 (137)
7.1.4 LCD1602的指令说明 (138)
7.1.5 LCD1602的编程 (139)
7.2 不带字库LCD12864的使用 (142)
7.2.1 LCD12864的引脚说明 (142)
7.2.2 LCD12864的模块介绍 (143)
7.2.3 不带字库LCD12864的读写时序 (144)
7.3 LCD12864的点阵结构 (145)
7.4 LCD12864的指令说明 (146)
7.5 LCD12864显示字符的取模方法 (147)
7.6 LCD12864显示信息操作示例 (147)
7.7 LCD12864的跨屏显示 (151)
7.8 带字库LCD12864的显示编程 (153)
7.8.1 带字库LCD12864简介 (153)
7.8.2 带字库LCD12864的基本指令 (154)
7.8.3 汉字显示坐标 (155)
7.8.4 带字库LCD12864显示编程示例 (156)
7.9 OLED屏 (158)
7.9.1 OLED简介 (158)
7.9.2 OLED屏的应用(模块化编程示例) (160)
第8章 A/D与D/A的应用入门 (171)
8.1 任务书—温度及电压监测仪 (171)
8.2 A/D转换 (172)
8.2.1 A/D和D/A简介 (172)
8.2.2 典型A/D芯片ADC0809介绍 (173)
8.2.3 ADC0809应用示例 (176)
8.3 LM35温度传感器的认识和使用 (177)
8.3.1 LM35的外形及特点 (177)
8.3.2 LM35的典型应用电路分析 (178)
8.3.3 LM35的应用电路连接及温度转换编程 (179)
8.4 电压源 (179)
8.5 温度及电压监测仪的程序代码示例及分析 (180)
8.6 知识链接—D/A转换芯片DAC0832及应用 (183)
8.6.1 DAC0832的内部结构和引脚功能 (183)
8.6.2 单片机实训台典型D/A模块介绍 (184)
8.6.3 ADC0832采用I/O方式编程示例 (185)
8.6.4 ADC0832采用扩展地址方式编程示例 (186)
第3篇 综合应用—实践篇
第9章 步进电机的控制 (190)
9.1 步进电机的基础知识 (190)
9.2 步进电机的参数 (192)
9.3 步进电机的驱动及精确定位系统示例 (193)
9.3.1 步进电机及驱动器 (193)
9.3.2 步进电机的位移装置及保护装置 (194)
9.4 单片机实训台的典型步进电机模块 (196)
9.5 步进电机的控制示例 (197)
9.5.1 步进电机模块游标的归零 (197)
9.5.2 步进电机的定位 (198)
9.6 典型训练任务—自动流水线系统 (200)
第10章 DS18B20温度传感器及智能换气扇 (203)
10.1 智能换气扇任务书 (203)
10.2 智能换气扇实现思路 (205)
10.3 DS18B20温度传感器 (206)
10.3.1 DS18B20简介 (206)
10.3.2 DS18B20的控制方法 (209)
10.4 模拟智能换气扇的程序代码示例及讲解 (213)
第11章 电子密码锁 (液晶、矩阵键盘的综合应用) (223)
11.1 电子密码锁简介 (223)
11.2 电子密码锁的实现 (225)
11.2.1 硬件接线及编程思路和技巧 (225)
11.2.2 程序代码示例及讲析 (226)
11.3 典型训练任务 (240)
任务一 增设控制键 (240)
任务二 自动点焊机控制系统的实现 (240)
附录 (242)
附录A C51中的关键字 (242)
附录B ASCII码表 (244)
附录C C语言知识补充 (247)
前 言
单片机在智能控制领域的应用已非常普遍,发展也很迅猛,学习和使用单片机的人员越来越多。虽然新型微控制器在不断推出,但51单片机价格低廉、易学易用、性能成熟,在家电和工业控制中有一定的应用,而且学好了51单片机,也就容易学好其他的新型微控制器(AVR、PIC、STM8、STM32等),另外,51单片机的例程很容易移植到其他单片机系统中。因此,现在的大中专院校学生都将51单片机作为入门。为了帮助零基础(指没有单片机基础和C语言编程经验)的初学者快速入门和提高,我们总结教学和辅导学生参加技能大赛的经验和教训,充分考虑初学者的认知特点,编写了本书。
【本书特点】
(1)按照先易后难的顺序编排。每章设有“本章导读”“学习目标”和“学习方法建议”,有利于初学者在学习过程中掌握重点,有的放矢,符合初学者的特点。
(2)知识和技能都围绕着具体的应用(开发)示例展开,初学者能感受到学习单片机的应用价值,能看到学习效果,体会到成功的喜悦,容易激发进一步学习、探索的积极性。
(3)为了使初学者轻松阅读,本书对可能对初学者造成阅读障碍的内容做了详细的解释,读者可以选择性阅读(若能看懂,则不需要看解释)。
(4)部分章节后附有典型的训练题。部分训练题比较典型,有一定的应用价值,如点焊机、生产线的控制等。读者可先独立去做,若有障碍,再阅读本书所赠视频教程中的参考程序。
(5)本书各项目的程序代码都已在YL-236单片机实训考核装置上得到验证。读者若没有YL-236单片机实训考核装置,可以在其他实验板或自制的实验板、实验模块上完成实验(注意:不同的单片机实验板,原理和方法实质是一样的。读者不需要拘泥于某种实验板,这也有利于增强对硬件的灵活应用能力)。
(6)本书目录较为详细,有利于需要选择性阅读的读者阅读相关知识点和相关章节。
【本书所赠视频教程说明】
? 包含的内容
C语言入门讲解视频;常用的单片机开发工具软件的安装、使用视频。
? 本视频的特点
力求符合初学者的学习特点,理论联系实际,通俗易懂。本视频按内容共分为21讲(按内容的连贯性编写序号),以便读者连续性学习或根据需要选择性地学习。
? 如何使用
读者可以登录华信教育资源网(www.hxedu.com.cn)注册后免费下载与本书相关的视频教程;初学者在学习本书入门篇时若遇到障碍,建议先系统学习视频教程,再学习本书入门篇。
? 其他附赠内容及索取方式
本书的附赠内容除视频文件外,还包括单片机常用的工具软件(如Keil、STC下载工具、取模工具等)、书中部分例程相关硬件的搭建、实现的效果展示等。如有需要的读者可发邮件至邮箱([email protected]),索取百度网盘提取码后进行下载。
本书适合欲学习单片机的初学者、大中专学生,用于入门和初步提高,不适合单片机应用的熟手和高手。
本书由何应俊、高波(长阳职教中心)、蔡红珍(长阳二中)担任主编。参编人员有长阳职教中心向阳、许红英、杨洲、刘江龙、高光俊等。
由于编者水平有限,书中若有错漏和不妥之处,恳请广大读者批评指正(邮箱:[email protected],qq:948832374)。
编 者
评论
还没有评论。