单片机系统设计.docx
- 文档编号:14710169
- 上传时间:2023-06-26
- 格式:DOCX
- 页数:83
- 大小:1.86MB
单片机系统设计.docx
《单片机系统设计.docx》由会员分享,可在线阅读,更多相关《单片机系统设计.docx(83页珍藏版)》请在冰点文库上搜索。
单片机系统设计
单片机系统设计实训
指导书
邬志锋香永辉陈茜茹编
交通信息学院实训中心
二〇一二年一月版权所有禁止翻印
实训要求
使用专业:
电子类、信息类相关专业
一、实训目的
《单片机原理与应用》是一门理论性与实践性都较强的专业课程,对学生培养单片机开发与应用能力有重要作用。
实训环节是对课程理论的巩固,也是学生掌握课程核心内容的一种有效途径和方式,通过实训可以使学生单片机项目的开发流程、熟练掌握单片机的硬件设计及软件编程。
课程设计应强调以能力培养为主,在独立完成设计任务同时注意多方面能力的培养与提高,主要包括以下方面:
1.独立工作能力和创造力。
2.综合运用专业及基础知识,解决实际工程技术问题的能力。
3.查阅图书资料、产品手册和各种工具书的能力。
4.使用Protel等EDA工具进行单片机硬件系统设计的能力。
5.基于KeilIDE开发单片机应用程序的能力
6.写技术报告和编制技术资料的能力。
二、内容及要求
制作一基于8051单片机的最小系统,并在此基础上按照课程要求实现以下功能:
1、懒人闹钟:
实训时间为1周,
2、超声波测距:
实训时间为2周,前导课程:
Protel
3、声光控楼梯灯控制:
实训时间为2周,前导课程:
Protel
三、时间、地点安排
EDA实验室:
电路图的绘制
1
电子制作室:
PCB的制作
单片机实验室:
程序的编写与调试
四、组织管理
教师组织抽查、考勤
五、学生分组
2人1组。
六、考核评估
通过总结报告,并结合学生的动手能力,独立分析解决问题的能力和创新精神,及学习态度综合考评。
成绩分优、良、及格和不及格四等。
考核标准包括:
实训报告(30%)学生的动手能力(60%)考勤(10%)
2
项目1:
懒人闹钟
基于51单片机构成一个闹钟,可设置多个闹钟,包含循环型闹钟和单次闹钟。
所谓循环闹钟,即每天都有效的闹钟,所谓单次闹钟即当天才有效的闹钟。
不管是循环型闹钟还是单次闹钟,当闹铃启动时,人必须经过键盘输入密码才能关闭闹钟,否则闹钟一直响。
系统如图1所示。
实现的功能要求:
图0.1单片机系统
1、实现单片机最小系统50分
2、基于RTC/单片机实现LED上显示时间10分
3、实现时间设置10分
4、实现至少1个自由闹钟10分
4、实现至少3个以上的循环闹钟、2个自由闹钟10分
5、闹铃时间到时,如果不按键,则闹钟一直持续5分
6、其他功能5分
3
项目2:
超声波测距
基于51单片机构成一个控制系统使用超声波进行距离的测量,并可以进行接近告警。
如图2所示。
实现的功能要求:
图0.2单片机系统
1、实现单片机最小系统50分
2、能基于超声波测距的原理实现距离的测量15分
3、当距离小于某个设定值时能使用蜂鸣器或者LED报警15分
4、距离越小,蜂鸣器响的频率或者LED闪烁的频率越高5分
5、报警距离可通过键盘进行设置5分
6、其他功能10分
超声波测距原理超声波测距原理是通过超声波发射器向某一方向发射超声波,在发射时刻的
同时开始计时,超声波在空气中传播时碰到障碍物就立即返回来,超声波接收器收到反射波就立即停止计时。
超声波在空气中的传播速度为v,而根据计时器记录的测出发射和接收回波的时间差△t,就可以计算出发射点距障碍物的距离S,
即:
S=v•△t/2
4
项目3:
声光控楼梯灯
基于51单片机构成一个声光控楼梯灯控制系统,当有人声或者环境亮度降低到一定程度时,驱动继电器打开楼梯灯,并可通过键盘设置自动开启时间的长短。
系统框图如图3所示。
实现的功能要求:
图0.3单片机系统
1、实现单片机最小系统50分
2、按照要求制作、调试声音采集电路,实现声音的采集15分
3、按照要求制作、调试光度采集电路,实现亮度的采集15分
4、实现通过键盘设置自动开灯、关灯的时间10分
5、其他功能10分
5
第一阶段单片机最小系统
一、实训目的
学习单片机最小系统的构成,学习单片机内部资源的使用和常用外部设备的使用。
二、实训内容
实训内容1.1:
单片机最小系统的制作按照老师发送的元器件在规定的时间内焊接完单片机最小系统。
单片机最小系统指的是能单独运行的最简系统,一般只是包括5V电源、晶
震电路构成,为了使用方便,一般会在最小系统的基础上加入行列式键盘作为用户输入电路,加入LED或者LCD构成信息输出设备,从而构成与用户进行人机交互的通道。
1、电源
5V电源可使用通用的78XX系列来构成,也可以使用LDO来构成,一般而言,目前LDO为主流,常用的LDO主要为REG1117-XX系列,该部分的电路可参考图1.1,使用一个REG1117-5构成5V电源。
为了更好地了解系统电源的情况,一般会在电源的输出端加入一个LED进行电源的指示。
78XX和REG1117系列可以直接互换,实际应用是可根据自己的需要进行修改
J32
470uF
U4
3IN
OUT4
470uF
VCC
R10
3
1
PWR2.5
C8
1GNDREG1117-5
C9C10L2
图1.1电源电路
GND
我院的实验板采用的是USB供电方案,该方法简单快捷,而且电源稳定,
电路原理图如图1.2所示。
SHGNDD+
D-VBUS
4
3S
15
J3S1A3
52
R49
10
VCC
R50
C14
470
L9
2USBPORT
1
1B6470uF
4
GND
图1.2实验板电源
6
电源从J3口输入,先通过双刀带锁开关S1进行电源通断控制,实现电路板
的可控上电。
为了避免后端电路短路造成烧毁前端连接的USB口,在电源端口后使用了一个10欧姆/2W的电源然后再有R49进行功率限制,然后再使用一个
470uF的电容进行滤波。
为了指示电源是否正常工作,我院的电路板用一个
L9LED进行指示。
2、单片机电路单片机运行的最小条件除了电源以外,还要求具备复位电路、晶体振荡器、
和编程电路。
单片机部分的电路如图1.3所示,
200
U1
P1.0
P1.1
P1.2
P1.3
P1.4
P1.5/MOSIP1.6/MISOP1.7/SCK
P3.0/RXDP3.1/TXDP3.2/INT0
P3.3/INT1
P3.4/T0
P3.5/T1P3.6/WRP3.7/RD
P0.0/AD039
P0.1/AD138
P0.2/AD237
P0.3/AD336
P0.4/AD435
P0.5/AD534
P0.6/AD633
P0.7/AD732
P2.0/A821
P2.1/A922
P2.2/A1023
P2.3/A1124
P2.4/A1225
P2.5/A1326
P2.6/A1427
P2.7/A1528
P00
P01
P02
P03
P04
P05
P06
P07
P20
P21
P22
P23
P24
P25
P26
P27
1
11.0592MHz
C8
R16
P10
1
P11
2
P12
3
P13
4
P14
5
P15
6
P16
7
P17
8
P30
10
P31
11
P32
12
P33
13
P34
14
P35
15
P36
16
P37
17
VCC
40
C9
VCC
31EA
GND20
PSEN29
GND
30pF
GND
30
ALE
X219Y1
S2
SW_PB
10uF
R18
GND
9RST
AT89S51-DIPVCCC22
0.1uF
X118
GND
2
C11
30pF
2.1复位电路
图1.3单片机电路
单片机的复位电路包含两种:
上电复位和手动复位。
所谓上电复位,即当单
片机加电时由相关电路产生一个复位信号,从而使单片机复位。
手动复位指的是用户根据需要,使用按键等方式驱动单片机进行复位的一种电路。
STC单片机可以不使用复位电路,但是为了保证系统的稳定运行,一般要求至少要加上电复位电路。
复位电路的构成方法有很多,比如专用复位芯片、看门狗等,但是这些电路相对较为复杂,我院实验板的复位电路使用的是较为简单的
阻容复位电路。
7
R16
S2
200
SW_PB
VCC
C9
10uFR18
P3.7/RD
40VCC
31EA
30ALE
9RST
AT89S51-
VCC
GND
图1.4复位电路
如图1.4所示,由C9和R18构成一个上电复位电路,当单片机上电时,因为电容两端电压不能突变,所以在单片机的RST引脚产生一个高电平,从而使单片机复位,随着电容C9充电时间延长,电容充电电路逐渐下降,RST引脚的电压也随着下降,当电压下降到一定程度时,RST引脚的电压已经不足以使单片机复位,单片机从而进入到正常的工作状态。
手动复位电路使用的按键复位电路,当用户单击S2时,RST引脚出现一个高电平信号,强制驱使单片机进行复位。
当用户放开S2时,RST引脚恢复为低电平,单片机开始正常运行。
注意:
当用户单击S2时,由C19、R16和S2构成一个环路,C19在改回路上进行放电,所以R16不可缺少,如果缺少R16或者R16阻值太小,将可能会造成C19损坏。
2.2振荡电路震荡电路的作用是给单片机提供一个合适的工作频率信号,一般而言,单片
机的震荡信号产生由两种方法:
单端驱动和双端驱动。
单端驱动即时使用一个外部的稳定时钟信号直接输入给单片机,该方法要求外部存在一个稳定的时钟信号,一般由有源晶体振荡器或者是其他IC产生。
单端驱动目前已经很少使用,只有在严格要求系统同步的一些系统才会出现。
所谓双端驱动就是说使用一个简单的无源晶体振荡器来构成振荡电路。
.5/A13
2.6/A1427
2.7/A1528
P26
P27
11.0592MHz
C8
GND20
PSEN29
X219
X118
2
1
GND
30pFY1
C11
30pF
GND
8
图1.5振荡电路
我院实验板使用的就是双端方式,如图1.5所示。
在单片机18和19号两个振荡信号输入引脚间接入一个频率为11.0592MHz的无源晶体振荡器构成一个振荡电路。
对于这种无源晶体振荡器而言,其两端一般要加入负载电容进行频率的微调,对于11.0592MHz晶体振荡器而言,一般使用20~30pF的瓷片电容即可。
2.3编程电路对于单片机这类微控制器而言,其本质就是运行用户设定的程序,所以必须
在基本硬件的基础上加入一个下载线接口,用来下载用户编写的程序,下载线接
口如下图1.6所示。
U2
GND15J1
1
86
R2OUT
9
P30
12
7
TXO
14
R1OUTT2OUT
R2IN
R1IN13
T2IN10
RXO
TXO2
7
RXO
C15
C17
VCC
0.1uF6
0.1uF2
16
T1OUT
VS-VS+
VCCMAX232N
T1IN11
C2-5
C2+4
C1-3
C1+1
C16
C18
P31
0.1uF
0.1uF
3
8
4
9
5
DB9
VCC
C19
0.1uF
图1.6UART通信接口
STC系列单片机的编程接口使用的是串行口编程,所以该接口即可以用来对单片机编程,又可以用来进行串行通信使用。
单片机通过DB9母头与计算机的串行口相接,通过ISP软件行程序的擦除和下载,以及串行通信。
单片机使用的是+5V的的逻辑电压,而计算机的串行口使用的是+15和-15V的逻辑电压,两者不能直接相接,所以中间假如了一个MAX232的电平转换芯片对两者的电平进行转换,MAX232的外围电路如图2.6所示。
2.4其他部分为了保证单片机的运行,还有一些外围电路也需要注意,尤其要要注意EA
引脚,当程序在单片机内部时,EA一定要连接到高电路。
2.1LED
9
LED指示是经常用于简单工作场合的指示电路,可以用来显示系统当前的
各种状态,我院实验板所采用的指示如图1.7所示。
S4A
2
3
1
VCC
R41
470
R42
470
R43
P03
470
R44
P04
470
R45
P05
470
R46
470
R47
470
R48
470
DoubleSelSwitch
P00
P01
P02
P06
P07
L1L2L3L4L5L6L7L8
图1.7LED指示电路
8个LED与单片机的P0口相接,因为其他单元也要用到P0口,所以在LED指示灯电路的前面假如了一个自锁开关S4,当S4有效时,LED能正常指示,而当其他电路要用到P0时,将S4置为无效即可。
实训内容1.2:
编程实现流水灯。
即LED逐个单独亮,L1亮其他灭ÆL2亮
其他灭ÆL3亮其他灭….ÆL8亮其他灭ÆL1亮其他灭。
2.2数码管显示
8段LED数码管是单片机应用系统中常用的一种显示器,由8个发光二极管一起组成一个8字和一个小数点,有共阳极和共阴极两种结构,如图5所示。
共阳极数码管将8个LED的阳极连接在一起作为公共端,阴极分开控制,使用时使公共端接电源,要使哪根发光二极管亮,则使对应的阴极端接地。
共阴极数码管将8个LED的阴极连接在一起作为公共端,阳极分开控制,使用时使公共端接地,要使哪根发光二极管亮,则使对应的阳极端接高电平。
通常把控制每段LED点亮的引脚称为段选线,如图所示a,b,…,在实际使用时还应在每个段选线串接限流电阻。
COM
DPgfedcba
DPgfedcba
COM
10
我院实验板使用的是共阳极的LED数码管,具体电路如图1.8所示。
LED_A12
L10
AB
12C
9D
8E
6FGP
7R28
470P01
4R29
470P02
LED_B9
2R34
470P03
LED_C8
1R35
470P04
LED_D6
10R36
470P05
5R37
470P06
3R38
470P07
11R27
470P00
R22VCC
LN3461BX
R23VCC
R24VCC
R25VCC
P13
R30
470
4.7K
LED_A
Q4P12
R31
470
4.7K
LED_B
Q5P11
R32
470
4.7K
LED_C
Q6P10
R33
470
4.7K
LED_D
Q7
图1.8LED数码管
在每个段码端(A、B、C、D、E、F、G、H)串联了一个470欧姆的电阻进行限流,防止电流过大烧毁LED数码管的段码。
而对于单独一个LED管而言,因为其最多时需要点亮8个LED管,所以不能直接使用单片机的IO口进行控制,需要使用三极管进行扩流。
其中电阻R22、R23、R24、R25的作用是当控制电压无效时,保证三极管处于稳定的截至状态,其阻值为4.7K,而R30、R31、R32、R33是基级限流电阻,限制三极管的最大输出电流,阻值为470欧姆。
实训内容1.3:
使用动态扫描的方式在实验板的LED数码管上显示本人学
号的后四位。
2.3行列式键盘
行列式键盘也叫矩阵键盘,即用I/O口线组成行、列结构,将按键设置在行、列的交叉点上。
图4为我院单片机实验板的矩阵键盘部分的原理图,电阻R51、R52、R53、R54是上拉电阻,用来给列一个稳定的高电平。
11
VCC
R51
P20
4.7K
P21
R52
4.7K
R53
P22
P23
4.7K
R54
4.7K
P24
P25
P26
P27
S5
S9
S13
S17
SW_PB
SW_PB
SW_PB
SW_PB
S6
S10
S14
S18
SW_PB
SW_PB
SW_PB
SW_PB
S7
S11
S15
S19
SW_PB
SW_PB
SW_PB
SW_PB
S8
S12
S16
S20
SW_PB
SW_PB
SW_PB
SW_PB
图1.9行列式键盘
如图1.9所示,将16个按键排成4行4列,第一行将每个按键的一端连接在一起构成行线,第一列将每个按键的另一端连接在一起构成列线,这样便一共有4行4列共8跟线,将这8根线连接到单片机的8个I/O口上,通过程序扫描键盘就可检测到16个按键。
这种连接方式比一个按键用一根I/O连接的独立键盘节约一半的I/O口线。
因此,在按键数量较多时,往往采用矩阵键盘。
实训内容1.4:
对每一个按键进行编码,如图1.10所示。
然后用数码管显示按下的按键。
比如按下2号按键,则在数码管上显示2,按下11按键,在显示
11。
VCC
R51
P20
4.7K
R52
P21
P22
4.7K
R53
P23
4.7K
R54
4.7K
P24
P25
P26
P27
S5
S9
S13
S17
W_P
SB
W_P
W_P
SB
SB
SW_PB
S6
S10
S14
S18
W_PB
S
W_P
SB
SW_PB
SW_PB
S7
S11
S15
S19
_PB
SW
_PB
W_PB
SW
S
SW_PB
S8
S12
S16
S20
_PB
SW
_PB
SW
SW_PB
SW_PB
图1.10按键编码
2.3实时时钟
12
实时时钟的缩写是RTC(Real_TimeClock),RTC是集成电路,通常称为时
钟芯片。
RTC最重要的功能是提供到2099年内的日历功能,对于时间来说,无论快慢都是误差,而匹配电容在RTC的外围器件上起到非常重要的作用,它可以适当修正晶体与RTC之间匹配问题。
RTC通常情况下需要外接32.768kHz晶体,匹配电容、备份电源等元件。
RTC除了I/O口的定位不同,还有功能上的区别,比如与MCU的接口,现在常用的是I2C接口(距离短,可以与其他器件共用)还有RAM的数量、静态功耗大小、中断的数量,特别是精度的区别。
RTC的精度可以说与温度有很大的关系,而温度会影响晶体的频率。
所以就产生实时时钟的衍生产品:
时钟模块(内置晶体、电容、电池等等),其精度可保持在每天误差小于0.50秒。
但时钟模块相比时钟芯片而言会高出许多。
我院实验板使用的是DS1302实时时钟,电路如图1.11所示。
GND
C23VCC
0.1uF
U6
VCC
P35
P37
Y2
12
7SCLK
5RST
2X1
3X2
VCC18
VCC21
I/O6
P36
BT1
3V
GND
GND
30pFC12
30pF
C13
4GNDDS1302
图1.11实时时钟
该电路使用的是DS1302的典型电路,其中Y2是晶体振荡器,频率为
32768Hz,为了是该晶振能更好地工作,可在其两端接入匹配电容微调振荡,但是在实际使用中发现也可以不接。
RTC需要能够在系统停止供电的情况下还能继续进行时间的计算,所以一般都使用双电源,其中8脚连接到系统的+5V中,当系统上电后DS1302则由系统电源供电。
当系统电源掉电后,则由1脚连接的电池供电,即BT1纽扣电池给系统DS1302供电,从而继续保持其对时间的计算。
电容C23为0.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机 系统 设计
![提示](https://static.bingdoc.com/images/bang_tan.gif)