一、教材的基本信息
1.适用对象
本教材适用于高等院校本、专科单片机课程,特别适合51单片机的初学者,也可作为物联网、嵌入式、电子工程、自动化等专业技术人员的学习和参考资料。
2.具备的知识和能力基础
学习本课程,需要具备基本的电路知识、编程基础,最好先修过《模拟电路》《数字电路》《计算机组成原理》《程序设计基础(C语言)》之类的课程,并且已经具有了基本的计算机基础知识、查阅资料与文献以及书面表达等能力。
3.预期学习效果
学习本课程,将为后续的硬件类课程打下一定的基础,并且从以下几方面培养学生的能力,分别是:
(1)专业能力目标:定义单片机及其内部资源;阐释内部资源的基本原理、简单外设控制方式和常用总线通信协议;应用C51语言实现对单片机硬件资源的控制。
(2)素质能力目标:积极向上的学习态度和认真自觉的学习习惯。
(3)工程能力目标:分组合作,使用单片机内部资源和外围接口器件,设计并实现一个基于单片机的综合应用系统;通过查阅数据手册或电子文档,实施芯片/模块的基本应用。
4.教材编写团队
本教材是单片机课程组所有教师多年单片机课程授课以及指导学科竞赛和项目开发经验的结晶,编写团队由具备多年一线教学经验的教师构成,其中副教授3名,高级工程师1名,以及企业工程师1名,平均教龄10年。在教材的编写过程中,多位有相关行业经验和教学经验的专家学者对本教材提出了宝贵的意见和建议。
5.本教材使用方法
(1)读者使用时可以扫描教材中二维码获取对应章节的慕课。
(2)学习效果测评中评估表的填写说明:
①掌握程度填写,参考以下说明:
熟练编程,能够给其他人讲解,思路清晰:****
熟练编程,能够给其他人讲解主要流程:***
能够编程实现,思路不是很清晰:**
理解工作原理,不能编程实现:*
②“已掌握内容”和“待加强内容”一列可以在知识点/技能点对应的位置打“√”。
③学习反思:对应知识点/技能点的学习思考、下一步提升计划等,建议每一章学完画一张思维导图,对本章知识进行脉络梳理。
二、教材的基本结构与内容组织
1.教材的基本结构
本教材从单片机入门者的角度,以项目为驱动,由内到外、由浅入深,循序渐进地讲述了MCS51单片机内、外部资源的使用方法。
教材首先通过项目导学,使学生全面了解教材项目;然后将项目分解技术(知识点)到每一章,通过构思、分析子项目涉及的技术(知识点)介绍新知识点,开始子项目的实施和运行。除了教材项目,在模块知识的学习上还配备了丰富的案例,以便让读者更熟练地掌握如何使用C51语言进行编程控制。本教材以工程教育理念为背景,遵从构思、设计、实施、运行的全过程,以能力训练为主,所有的案例都包括案例分析、案例设计和案例实现。每章课后还有自测单元,用以加深相关知识的理解和运用,同时也检验学习效果。通过案例和项目训练,最终达到教学总体目标。
本教材的逻辑结构如图1所示。
图1教材逻辑图说明:第16~19章为拓展内容。
2.教材的内容组织
本教材按照TOPCARES的教学理念,以项目为导向,组织全教材内容。本教材共分为6篇,20章。
项目导学:介绍教材项目的整体情况,项目需求,通过分析和设计,让读者初步了解本教材所学知识和学习方法。
第1篇:知识准备篇(第1~4章)
主要讲解单片机相关基本知识、开发环境的安装与使用、开发流程以及开发语言C51编程基础。
第2篇:基础功能篇(第5~8章)
主要讲解单片机的内部资源及其简单应用。其中每一种资源的学习都设计了具体的案例,通过对案例的分析、设计、实现和运行,从而更好地理解如何使用C51语言实现对单片机资源的应用。同时针对每一种内部资源还设计了拓展项目,强化对知识的深入理解和熟练运用。
第3篇:进阶功能篇(第9~12章)
在第2篇的基础上,本篇从外围扩展的角度讲解了继电器、蜂鸣器和步进电机等执行模块,以及用于显示的1602液晶屏模块。通过这些外围模块的扩展,可以使读者设计出一个完整的单片机应用系统。
第4篇:总线协议篇(第13~15章)
本篇依然是从模块扩展的角度,讲解了常用总线通信及协议,包括I2C总线、1Wire总线和SPI总线。与第3篇不同的是,本篇的通信方式需要遵循其相应的通信协议,相比第3篇要复杂一些。因为与更高级的处理器相比,MCS51单片机自身所具有的资源相对要少一些,通过总线的通信方式节省资源的同时可以提高单片机的执行效率。同时,读者在进行应用系统设计时可以扩展更多的外围模块,使系统功能更加完善。
第5篇:拓展篇(第16~19章)
本篇的设置是为了方便读者进行学习扩展,讲解了直流电机、舵机、双色点阵屏、模数/数模转换模块。到此,单片机的核心及外围资源模块全部学习完,读者可以灵活选用以上资源,设计并完成一个自己的创意作品。
第6篇:综合实践篇(第20章)
本篇是综合运用前面所学的章节内容,完成教材项目智能温控系统的综合设计、实施与运行。
三、教材的编写情况
本教材由从事多年嵌入式系统及物联网项目开发的曹新、李瑛达、窦乔、李缙栋和具有多年嵌入式竞赛指导经验的杨涛,以及上海朗译电子科技有限公司的技术开发人员师访联合编写。根据教学与自学的规律,结合TOPCARES的教育理念,本教材将单片机的内、外部资源以及通信方式通过一个课程项目案例贯穿始终。教材1、3章由师访编写,第2章由李缙栋编写,第4、5、9、10、14章及项目1由曹新编写,第6、7、8、11、16章由窦乔编写,第12、15、17、18、19章由李瑛达编写,第13、20章及项目2、3、4由杨涛编写,最后由曹新统稿完成。
另外,感谢张福艳老师对本教材章节目录安排的指导,同时感谢参考文献的作者们,本教材借鉴了他们的部分成果,他们的工作给了我们很大的帮助和启发。
其次,感谢参与本教材编写和审阅的所有老师,感谢他们认真、严谨的工作,保证教材高质量地完成。最后,感谢大连东软信息学院计算机与软件学院领导以及教材建设委员会对本教材编写的帮助和支持,感谢东软电子出版社为该教材编写、出版创造的优良条件。
《MCS51单片机原理与实践》集所有编者多年教学经验和项目开发经验的积累于一体,全体参编人员已尽心尽力,但限于自身水平,教材中难免出现错误或不妥之处,恳请广大读者不吝指正,在此深表感谢!
目录第1篇知识准备篇
第1章单片机概述2
1.1什么是单片机3
1.2单片机的发展3
1.3单片机的特点4
1.4单片机的用途5
1.5如何学习单片机5
1.6本章小结6
1.7学习效果测评7
1.7.1测试题7
1.7.2评估表7
第2章开发准备8
2.1开发环境9
2.1.1硬件连接9
2.1.2下载器驱动安装10
2.1.3程序下载软件安装与使用15
2.1.4集成开发环境安装与使用21
2.2开发流程25
2.2.1Keil C51工程创建及程序编译25
2.2.2程序运行34
2.3开发语言38
2.3.1C51与标准C语言38
2.3.2C51的数据类型39
2.3.3C51常用头文件41
2.4本章小结42
2.5学习效果测评42
2.5.1测试题42
2.5.2评估表43
第3章硬件基础知识44
3.1LY51S开发板简介44
3.2板载元器件46
3.2.1电子元器件46
3.2.2集成电路52
3.2.3接插件53
3.2.4导线53
3.3本章小结54
3.4学习效果测评54
3.4.1测试题54
3.4.2评估表55
第4章单片机基本原理56
4.1MCS51单片机基本特性56
4.2单片机内部结构57
4.3单片机外部引脚58
4.3.1单片机外部引脚图58
4.3.2单片机引脚分类59
4.4单片机时序61
4.5单片机最小系统62
4.6单片机存储器结构65
4.6.1程序存储器66
4.6.2数据存储器67
4.7本章小结71
4.8学习效果测评71
4.8.1测试题71
4.8.2评估表72
第2篇基础功能篇
项目1系统本地设置与显示74
第5章 I/O端口77
5.1单片机的I/O端口78
5.1.1I/O端口概述78
5.1.2I/O端口基本原理79
5.1.3I/O端口基本操作80
5.2端口输出控制——发光二极管81
5.2.1案例51:点亮一个发光二极管83
5.2.2案例52:发光二极管流水显示86
5.3端口输出控制——数码管91
5.3.1数码管结构与显示原理91
5.3.2数码管静态显示驱动93
5.3.3案例53:独立共阳数码管循环显示0~994
5.3.4数码管动态显示驱动96
5.3.5案例54:8位数码管同时显示0~798
5.4端口输入控制——独立按键101
5.4.1独立按键的连接方式101
5.4.2独立按键的检测原理102
5.4.3按键去抖及按键处理流程103
5.4.4案例55:抢答器105
5.5端口输入控制——矩阵键盘107
5.5.1矩阵键盘的连接方式107
5.5.2矩阵键盘的检测原理107
5.5.3案例56:矩阵键盘键号LED显示108
5.6本章小结114
5.7学习效果测评114
5.7.1测试题114
5.7.2评估表116
第6章中断系统(外部中断)117
6.1中断系统概述118
6.1.1中断原理118
6.1.2中断的作用118
6.1.3中断实现的功能119
6.1.4中断相关概念119
6.2单片机中断资源121
6.2.1中断源及入口地址121
6.2.2中断控制及设置121
6.3C51中断服务函数的编写123
6.4外部中断编程实践125
6.5本章小结129
6.6学习效果测评129
6.6.1测试题129
6.6.2评估表132
项目2系统时间维护133
第7章定时/计数器136
7.1定时/计数器简介137
7.2定时/计数器的结构及相关寄存器137
7.2.1定时/计数器的结构137
7.2.2定时/计数器的相关寄存器138
7.3定时/计数器的工作原理139
7.3.1定时功能139
7.3.2计数功能140
7.4定时/计数器的工作方式141
7.4.1方式0141
7.4.2方式1141
7.4.3方式2141
7.4.4方式3142
7.5定时/计数器编程实践143
7.5.1定时/计数器的程序设计流程143
7.5.2案例71:按键10次翻转LED状态143
7.5.3案例72:发光二极管定时闪烁145
7.5.4案例73:定时器产生任意占空比PWM波形148
7.6本章小结150
7.7学习效果测评151
7.7.1测试题151
7.7.2评估表153
项目3系统远程控制154
第8章串口通信158
8.1串口通信概述159
8.1.1通信的基本概念159
8.1.2串行通信的工作方式159
8.1.3串行通信的时钟及传输速率160
8.1.4串行通信协议161
8.2串口通信接口电路原理162
8.3串口结构及相关寄存器165
8.3.1串口结构165
8.3.2串口相关寄存器166
8.4串口的工作方式及波特率设置167
8.4.1方式0167
8.4.2方式1168
8.4.3方式2和方式3169
8.4.4波特率设置170
8.5串口应用编程实践172
8.5.1串口应用的程序设计流程172
8.5.2案例81:串口扩展并行输出流水灯显示172
8.5.3案例82:双机通信单字符收发176
8.6本章小结182
8.7学习效果测评182
8.7.1测试题182
8.7.2评估表184
第3篇进阶功能篇
项目4温度采集与控制186
第9章继电器190
9.1什么是继电器190
9.2继电器的结构及工作原理191
9.3继电器的驱动电路192
9.4继电器编程实践194
9.4.1继电器的程序设计流程194
9.4.2案例91:继电器状态切换及LED显示194
9.5本章小结195
9.6学习效果测评195
9.6.1测试题195
9.6.2评估表197
第10章蜂鸣器198
10.1什么是蜂鸣器198
10.2蜂鸣器的结构原理199
10.3蜂鸣器的驱动电路199
10.4蜂鸣器编程实践200
10.4.1蜂鸣器的程序设计流程200
10.4.2案例101:蜂鸣器模拟救护车声音201
10.5本章小结202
10.6学习效果测评202
10.6.1测试题202
10.6.2评估表203
第11章步进电机204
11.1什么是步进电机205
11.1.1步进电机简介205
11.1.2步进电机分类205
11.2步进电机的硬件结构206
11.2.1步进电机硬件结构206
11.2.2步进电机术语解释207
11.2.3步进电机的转动原理207
11.3步进电机的驱动方式208
11.4步进电机控制编程实践209
11.4.1步进电机的程序设计209
11.4.2案例111:电机正转反转210
11.4.3案例112:按键控制步进电机正反转212
11.5本章小结213
11.6学习效果测评214
11.6.1测试题214
11.6.2评估表215
第12章1602液晶屏216
12.11602液晶屏概述216
12.21602液晶屏的基本原理及控制方式218
12.2.11602液晶屏的引脚结构218
12.2.21602液晶屏的显示内容218
12.2.31602液晶屏的控制方式219
12.31602液晶屏的驱动函数222
12.41602液晶屏编程实践223
12.4.11602液晶屏模块的程序设计流程223
12.4.2案例121:1602液晶屏滚动显示字符串223
12.5本章小结227
12.6学习效果测评228
12.6.1测试题228
12.6.2评估表229
第4篇总线协议篇
第13章I2C总线与E2PROM(24C02)231
13.1I2C总线概述232
13.1.1I2C总线简介232
13.1.2I2C总线特点232
13.1.3I2C总线连接方式232
13.1.4I2C总线通信机制232
13.2I2C通信协议233
13.2.1I2C通信协议233
13.2.2单片机模拟I2C总线234
13.3E2PROM(24C02)应用概述235
13.3.124C02芯片简介235
13.3.224C02硬件原理与连接235
13.3.324C02存储结构与寻址236
13.3.424C02读写操作时序236
13.4PCF8591模拟采集与输出237
13.4.1PCF8591芯片简介237
13.4.2PCF8591硬件原理及连接238
13.4.3PCF8591寻址及功能选择240
13.5I2C总线应用编程实践241
13.5.1I2C总线应用程序设计流程241
13.5.2案例131:24C02记忆开机次数241
13.5.3案例132:PCF8591 1路AD数码管显示248
13.5.4案例133:PCF8591 DA输出模拟250
13.6本章小结253
13.7学习效果测评253
13.7.1测试题253
13.7.2评估表254
第14章1Wire总线与DS18B20255
14.11Wire总线概述255
14.2DS18B20数字温度传感器介绍256
14.2.1DS18B20传感器特性256
14.2.2DS18B20的引脚结构257
14.2.3DS18B20的硬件连接258
14.2.4DS18B20的内部结构259
14.2.5DS18B20的工作原理260
14.2.6DS18B20的工作时序264
14.2.7DS18B20使用中注意事项266
14.31Wire总线应用编程实践267
14.3.1DS18B20模块的程序设计流程267
14.3.2案例201:温度采集液晶显示267
14.4本章小结271
14.5学习效果测评271
14.5.1测试题271
14.5.2评估表271
第15章SPI总线与DS1302272
15.1SPI总线协议定义273
15.1.1SPI简介273
15.1.2SPI通信模式273
15.2DS1302时钟芯片275
15.3DS1302的引脚结构及相关寄存器275
15.3.1DS1302的引脚结构275
15.3.2DS1302的寄存器设置276
15.4SPI总线应用编程实践278
15.4.1SPI总线应用的程序设计流程278
15.4.2案例151:DS1302时钟显示278
15.5本章小结283
15.6学习效果测评284
15.6.1测试题284
15.6.2评估表284
第5篇拓展篇
第16章直流电机286
16.1什么是直流电机286
16.2直流电机的原理及分类287
16.2.1直流电机的原理287
16.2.2直流电机的分类288
16.3直流电机的驱动方式289
16.4直流电机编程实践290
16.4.1案例161:直流电机按键控制290
16.4.2案例162:直流电机PWM调速292
16.5本章小结295
16.6学习效果测评295
16.6.1测试题295
16.6.2评估表296
第17章舵机297
17.1什么是舵机297
17.2舵机的工作原理298
17.3舵机的角度控制原理299
17.4舵机编程实践299
17.4.1舵机的程序设计流程299
17.4.2案例171:按键调节舵机转角300
17.5本章小结302
17.6学习效果测评302
17.6.1测试题302
17.6.2评估表303
第18章双色点阵屏304
18.1双色点阵的基本原理304
18.2双色点阵的驱动芯片306
18.3双色点阵的硬件连线306
18.4双色点阵编程实践307
18.4.1双色点阵的控制流程307
18.4.2案例181:双色点阵显示特定图形308
18.5本章小结312
18.6学习效果测评312
18.6.1测试题312
18.6.2评估表313
第19章模数/数模转换314
19.1模数/数模转换原理314
19.2模数/ADC转换类型及应用315
19.3数模/DAC转换类型及应用317
19.4本章小结318
19.5学习效果测评318
19.5.1测试题318
19.5.2评估表319
第6篇综合实践篇
第20章智能温控系统321
20.1项目构思321
20.2项目设计322
20.2.1系统功能设计322
20.2.2硬件设计322
20.2.3软件设计324
20.3项目实施与运行327
20.3.1项目实施要求327
20.3.2项目运行测试要求327
20.4本章小结327
附录A:ASCII表328
附录B:进制转换表329
附录C:C51数据类型及运算符330
参考文献331
2016年6月,中国成为国际本科工程学位互认协议《华盛顿协议》的正式会员,这是中国工程教育国际化进程的重要里程碑。“回归工程”、培养学生的“大工程观”是当今国际工程教育的主流理念。《华盛顿协议》对毕业生提出的12条素质要求中,不仅要求工程知识、工程能力,还强调通用能力和品德伦理;在实践上,以学生为中心,以产出为导向,注重对目标达成的支撑及持续改进,与CDIO工程教育实质等效。
CDIO工程教育是近年来国际工程教育改革的最新成果,以“预期学习结果”集合来驱动课程内容、教学方法、教育文化的设计,重视营造工程教育文化,其注重工程能力培养和基于工程项目全生命周期的一体化设计思想,对于国内工程类和相关专业的建设具有重要的实施价值。
作为承载了教学改革思想的载体,融入CDIO工程教育理念的高品质教材,东软CDIO工程教育教材在注重理实结合的同时,也注重对学生八大能力的培养,即:技术知识与推理能力,开放式思维与创新,个人职业能力,沟通表达与团队合作,态度与习惯,责任,价值观,实践构思、设计、实现和运行对社会的贡献。
CDIO工程教育教材是 CDIO教育教学改革在教学实施过程中的集中体现,它不仅承载着课程和项目的教学内容,而且贯穿和体现了CDIO工程教育的理念、思想与方法,是在系统化理论的指导下,将知识、能力、素质培养进行一体化设计,有机融合在教材体系中。教材的编写以能力培养为主线,以案例教学为引导,以项目为载体,充分体现“做中学”和“学中做”的思想,具有以下优势:
(1)以能力培养为主线,培养学生专业知识学习能力和工程实践能力;
(2)以案例为驱动,在做案例的过程中学习新知识,充分体现了“做中学”;
(3)以项目为载体,基于工程化教育方法,按照分析、设计、实施、运行展开项目及知识点的讲解;
(4)围绕专业知识结构和能力体系设计教材,实现同一专业下不同教材紧密的关联性;
(5)内容编排循序渐进,符合人的认知规律;
(6)适应柔性化教学变革,构建一体化、立体化教学资源。
CDIO工程教育教材可供以应用型人才为培养目标的高等院校以及职业培训机构作为教材使用。
目前,CDIO工程教育教材的建设还处于探索阶段,是一项创造性的工作,尚需要通过改革的实践不断加以深化和持续改进,任重而道远。