本书是面向应用型本科和高职高专院校技术应用型和技能型人才的教学而编写的教材。在内容编排上针对高职高专教学及自学者学习的特点,从基础着手,深入浅出,引导读者举一反三;举例丰富,实用性强。全书共8个项目,项目1、2是理论基础,讲解单片机芯片的基本硬件以及仿真软件的安装与使用,为后面的项目打基础;项目3以发光二极管为主要控制对象,实现对单片机并行I/O口的控制并介绍中断系统的应用;项目4以蜂鸣器为主要控制对象,介绍单片机定时器/计数器的应用;项目5以数码管和按键为主要控制对象,实现对显示和键盘接口的控制并介绍串行通信的应用;项目6主要介绍AD转换与DA转换的应用;项目7完成温度计系统设计;扩展项目通过点阵屏与LCD12864两种显示方式给出俄罗斯方块的设计。
本书可作为应用型本科和高职高专院校应用电子技术专业、电子信息工程技术、电气自动化技术等专业的教材,不同专业在学习过程中可根据具体情况进行合理取舍。本书也可供对单片机有兴趣的学生和其他非专业技术人员学习使用。
为方便教学,本书配有电子课件、习题解答、模拟试卷及答案,并提供书中例程的汇编语言与C语言源程序。选用本书作为授课教材的老师可来电索取或登录机械工业出版社教育服务网(www.cmpedu.com)免费下载。咨询电话:01088379375。
本书遵循职业教育教材编写规律和职业院校学生学习规律,配套齐全
单片机已经渗透到我们生产、生活的各个领域,几乎很难找到哪个领域没有单片机的踪迹。因此,无论是电子信息类专业,还是装备制造类专业,单片机技术课程在专业培养中都尤为重要。单片机技术实践性极强,理论与实践结合紧密。这些年,我们根据课程的特点,采用了项目式教学,并在校内外各种竞赛中初见成效。
本书有如下特点:
1)结合单片机技术课程特点,注重职业精神和创新精神的培养,落实立德树人,厚植爱国情怀,激发学生创业信心。
2)项目式教学。以典型的项目为载体,将知识点分解到具体任务中,通过完成任务,学习任务相关知识与技能。部分有兴趣的同学还可以通过提高任务,巩固所学知识。
3)双语言编写。根据不同专业的编程需要,除了扩展项目外,本书其他项目均同时采用了汇编语言、C语言编写程序。
4)硬件与仿真结合。对于最小系统可完成的项目,均采用了以硬件为对象的程序编写,同时进行仿真验证,对于少数硬件与仿真的差别也做了简单介绍。
5)配有数字化教学资源。包括课程标准、授课计划、课件等资源包。本书设置若干二维码,链接教学视频,读者可扫码学习。同时在百应慕课http://www.bymooc.net/MajorCourses/NewCourses配套在线课程,搜索“单片机技术与应用(项目式)”,读者可注册免费学习。
本书由广西机电职业技术学院曹华、林勇坚任主编,广西机电职业技术学院谭艳梅、秦培林和马子龙任副主编,参加编写的还有广西机电职业技术学院蒋朝宁、方羽和广西好学科技有限公司黄庆模。具体分工为:曹华、林勇坚对本书的编写思路与大纲进行总体策划,指导全书的编写,对全书统稿,并完成了项目1、项目3和项目6的编写;谭艳梅协助完成统稿工作,并编写了项目5和附录A;秦培林协助完成统稿工作,并编写了项目7;方羽编写了项目4;蒋朝宁编写了项目2;马子龙编写了扩展项目和附录C;黄庆模编写了附录B和附录D,并负责项目设计。
本书编写过程中,得到了广西好学科技有限公司的大力支持,在此也向对本书编写提供帮助的企业以及人士表示感谢。
本书虽几经修改,但因编者水平有限,书中难免存在错误,恳请读者提出宝贵意见。
编者
职业院校教师
前言
二维码索引
项目1数制初步1
任务1数制及其转换1
111几种常用数制1
112不同数制之间的相互转换3
任务2机器数与真值5
121计算机的带符号数5
122计算机的溢出6
123编码9
项目小结10
练习一10
项目2单片机系统设计12
任务1单片机开发板电路设计12
211单片机初步介绍12
212单片机引脚排列17
213存储器与特殊功能寄存器23
214单片机的并行口28
215单片机最小应用系统37
216单片机应用系统电路42
217从传统8051单片机过渡到
STC12C5A60S2系列单片机44
任务2单片机开发板仿真电路设计44
221软件的安装45
222原理图的绘制46
项目小结49
练习二49
项目3灯光控制设计53
任务1编译软件使用53
311软件安装53
312软件的使用54
任务2五角星点亮设计59
321关于P1口59
322延时子程序的编写59
323任务实施步骤59
任务3交通灯设计64
331中断概念64
332中断系统64
333任务实施步骤70
项目小结75
练习三76
项目4报警系统设计79
任务1蜂鸣器控制(软件延时)79
411蜂鸣器工作原理79
412单片机对蜂鸣器的控制80
413任务实施步骤80
任务2蜂鸣器控制(定时器控制)82
421结构与功能83
422定时器/计数器的控制寄存器83
423定时器/计数器的工作方式86
424定时器/计数器的初始化编程
步骤88
425定时器/计数器的计数初值89
426任务实施步骤89
任务3音乐播放控制94
431音调95
432节拍96
433任务实施步骤97
项目小结101
练习四102
项目5医院呼叫系统设计104
任务1数码管显示104
511数码管的基本工作原理105
512任务实施步骤106
任务2简易按键控制112
521键盘及接口112
522任务实施步骤116
任务3串行通信119
531串行通信的概念119
532串行通信技术120
533串行通信的接口电路121
534单片机串行口的结构与控制
寄存器122
535任务实施步骤130
任务4医院病人呼叫系统133
项目小结136
练习五136
项目6电子仪器设计138
任务1数字电压表设计(AT89S51
芯片)138
611ADC0809的主要特性139
612ADC0809的内部结构和外部
引脚139
613任务实施步骤140
任务2数字电压表设计(STC芯片)146
621STC12C5A60S2单片机的内部
ADC结构146
622ADC相关寄存器146
623任务实施步骤149
任务3信号发生器设计152
631单片机产生波形的原理153
632DAC0832的内部结构与引脚
功能153
633任务实施步骤154
项目小结156
练习六156
项目7电子温度计设计158
任务1液晶显示158
711LCD1602的引脚159
712LCD1602的控制指令160
713LCD1602模块的读写操作时序161
714任务实施步骤163
任务2温度计设计168
721DS18B20的引脚168
722DS18B20的通信时隙169
723任务实施步骤171
项目小结181
练习七181
扩展项目俄罗斯方块游戏的设计182
任务1点阵显示182
811LED点阵的结构182
812LED点阵显示原理182
813任务实施步骤183
任务2俄罗斯方块游戏设计(点阵)187
821俄罗斯方块游戏的基本规则188
822任务实施步骤188
任务3俄罗斯方块游戏设计
(LCD12864)200
831LCD12864模块引脚说明200
832LCD12864模块指令说明200
833LCD12864的写操作202
834任务实施步骤202
附录213
附录A单片机汇编语言指令表213
附录BASCII字符代码表217
附录C单片机开发板218
附录DSTCISP下载控制软件使用
说明220
参考文献228