智能交通灯控制系统设计Word格式文档下载.docx
《智能交通灯控制系统设计Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《智能交通灯控制系统设计Word格式文档下载.docx(36页珍藏版)》请在冰豆网上搜索。
致谢
参考文献
附录A系统硬件电路原理图
附录B程序清单
评分表
进度安排
设计时间为两周
第一周
星期一、上午:
布置课题任务,讲课及课题介绍
下午:
借阅有关资料,总体方案讨论
星期二、确定总体设计方案
星期三、硬件模块方案设计
星期四、软件模块方案设计
星期五小系统焊接与调试;
第二周
星期一、各硬件模块设计
星期二、各软件模块设计
星期三、各软件模块设计
星期四、写说明书
星期五、上午:
写说明书,整理资料
交设计资料,答辩
[1]王迎旭等.单片机原理及及应用.机械工业出版社.2012年
[2]
[3]
[4]
第1章概述
1.1课题设计要求-------------------------------------1
1.2课题设计目的及意义-------------------------------2
第2章系统总体方案选择与说明
2.1系统方案设计------------------------------------3
2.2系统总体方案说明-------------------------------3
第3章硬件电路设计
3.1时钟振荡电路和复位电路----------------4
3.2交通灯指示灯电路模块----------------------------5
3.2.1指示灯-----------------------------5
3.2.2各交通灯正常状况下转换表-----------5
3.37段共阳极数码管显示电路------------------------6
3.4按键电路-----------------------------------------7
3.5门铃电路-----------------------------------------9
第4章应用软件设计
4.1主程序模块--------------------------------------10
4.2按键模块---------------------------------------12
4.2.1按键查询模块------------------------------12
4.2.2K5k6k7按键模块-------------------------14
4.2.3K1按键模块--------------------------------15
第5章硬件调试与结果分析
5.1硬件调试操作过程-----------------------------------16
5.2各键的调试----------------------------------16
5.2.1按下K1键调试--------------------------16
5.2.2K2键的调试----------------------------17
5.2.3K3键的调试----------------------------18
5.2.4K4键的调试---------------------------18
5.2.5K5键的调试---------------------------19
5.2.6K6键的调试---------------------------19
5.2.7K7键的调试---------------------------20
5.2.8K8键的调试---------------------------20
第6章总结
6.1课程设计的总结---------------------------21
6.2特色-----------------------------------21
6.3不足-----------------------------------21
附件
附件A-------------------------------------22
附件B-------------------------------------23
第1章概述
1.1课题设计要求
当今社会机动车数量多,十字路口交通经常出现拥堵和交通事故的问题。
为解决此问题。
本课题是秉着为交通提供便利,减少堵车时间和交通事故的原则设计的智能交通灯系统。
利用STC89C52单片机,KEIL软件,PROTUES软件完成智能交通灯的原理设计,软件设计,硬件调试。
设计要求如下
1)控制十字路口四个方向的红、黄、绿型号灯的正常工作,规则应符合我国交通法规的规定;
2)南北方向的准行基本时间均为60秒(可在线调整);
3)在交通状况发生特殊情况时,可进行特殊处理:
K1为紧急情况处理键。
消防车、救护车通过时,按下K1建,关闭倒计时器,四个路口同时黄色灯闪烁5秒然后,转为红灯亮,只允许紧急车辆通过,K1建松开,交通控制回复正常;
K2、K3键分别为南北和东西方向车辆多时的特殊处理,功能自行定义。
K4键为复位键。
K5、K6键分别为交警人员根据现场情况对东西方向通行时间做出调整的自动加1和减1功能键。
K7键为暂停键。
按一次暂停,显示当前时间。
再按一次从调整好的时间开始显示并倒计时。
K8为夜晚至凌晨期间车辆较少情况处理键,所有方向黄灯闪烁并所有显示时间为六十。
1.2课题设计目的及意义
1)用来指导车辆和人群正确的通行,以减少交通事故的发生率。
2)系统有东西和南北方向车辆多的处理键,可减少交通道路拥挤情况发生。
3)系统有紧急情况处理键,可以为110,120,119,节约时间。
更好的服务人民群众。
4)交警人员根据现场情况对东西方向通行时间做出调整的自动加1和减1功能键。
可以更实时有效的调节灯,疏导交通。
5)K8为夜晚至凌晨期间车辆较少情况处理键,所有方向黄灯闪烁并所有显示时间为六十,期间车辆可以观察周围车辆情况,通过交通路口。
为夜间行驶车辆节约时间。
第2章系统总体方案选择与说明
2.1系统总体方案设计
该系统采用STC89C52单片机。
主要分为时钟震荡电路,指示灯电路,7段共阳极数码管显示电路和倒计时电路,按键电路。
图2-1系统设计总框图
2.2系统总体方案说明
时钟振荡电路和复位电路由单片机内部构成。
P1口连接六个模拟交通灯信号灯的发光二极管做指示灯显示电路。
P0口做数码显示管的段码,P2口做数码显示管的位码,两者结合构成数码显示管电路。
按键电路由P2口直接驱动,P2.5,P2.4做行线,P2.0-P2.3做列线,构成4*2矩阵键盘。
P3.7接蜂鸣器构成响铃电路。
第3章硬件电路设计
3.1时钟振荡电路和复位电路
时钟振荡电路由单片机内部构成。
单片机外部引脚XTAL1,XTAL2分别接在晶振两端,XTAL1,XTAL2分别通过电容C1,C2后接地。
电容C1为30PF,C2为30PF。
图3-1时钟振荡电路接线图
复位电路由按键和一个上拉电阻R1,下拉电阻R2和电容C3构成。
按下按键,系统复位,同时C3充电。
其中C3和R2构成放电释放通道,是保护电路。
C3为22uF,R1,R2为10K。
图3-2复位电路接线图
3.2交通灯指示灯电路模块
3.2.1指示灯
该交通灯系统采用六个发光二极管来模拟东西方向和南北方向交通指示灯情况。
每个方向都有红绿黄三个灯。
D1,D2,D3为东西方向红绿黄灯,D4,D5,D6为南北方向红绿黄灯。
P1口通过各指示灯与上拉电阻相连。
各指示灯的点亮顺序和倒计时的时间由单片机扫描按键和调用程序来实现控制。
表2-1P1口各I/O口与指示灯的对应情况
P1口各I/O口与指示灯的对应情况
东西方向
南北方向
P1.0
红灯
P1.5
P1.1
绿灯
P1.6
P1.2
黄灯
P1.7
图3-3指示灯电路接线图
3.2.2各交通灯正常状况下转换表
上电后,东西南北方向所有黄灯闪烁5秒后,东西方向绿灯亮30秒并进入倒计时。
南北方向红灯亮35秒并进入倒计时。
当东西方向红灯熄灭同时,南北方向黄灯闪烁5秒,结束后,切换成南北方向绿灯亮30秒并进入倒计时,东西方向红灯亮35秒并进入倒计时,当南北方向红灯熄灭同时,东西方向黄灯闪烁5秒,结束后,切换成东西方向绿灯亮30秒,南北方向红灯亮35秒南北方向,黄灯闪烁。
表2-2各交通灯正常状况下转换表
状态
注释
1
灭
亮
通行提示
2
红灯亮
黄灯闪烁
绿灯亮
3
闪烁
全灭
4
5
3.37段共阳极数码管显示电路
7段共阳极数码管显示电路分段码和位码两部分。
P0通过电阻接段码,位选通过9015和电阻连接P2口的高4位。
四个显示管都共用段码,用STC89C52单片机的P0口送数码管的段码,紧接着用P2口给数码管送位码。
通过这种方法,逐步的给4个数码管送段码、位码,实现动态显示。
表3-3P0口各I/O口与显示管段码的对应情况
P0口各I/O口与显示管的对应情况
P0.0
a
P0.4
e
P0.1
b
P0.5
f
P0.2
c
P0.6
g
P0.3
d
P0.7
dp
表3-4P2口与显示管位选线的对应情况
位线1
位线2
位线3
位4
P2.7
P2.6
P2.5
P2.4
图3-4数码管显示电路接线图
3.4按键电路
系统总共有K1,K2,K3,K4,K5,K6,K7,K8八个按键,故采用4*2的矩阵键盘。
行线接P2口的P2.5和P2.4。
列线接P2口的低四位。
在按下键时,STC89C52单片机根据程序来查询按键和执行相应的按键功能。
1)K1为紧急情况处理键。
消防车、救护车通过时,按下K1建,关闭倒计时器,四个路口同时黄色灯闪烁5秒然后,转为红灯亮,只允许紧急车辆通过。
第二次按下K1键,交通控制恢复正常;
2)K2、K3键分别为东西和南北方向车辆多时的特殊处理。
通行时间为60秒,红灯亮65秒,黄灯闪5秒。
3)K4键为复位键。
按下该键交通灯恢复上电的情况。
4)K5、K6键分别为交警人员根据现场情况对东西方向通行时间做出调整的自动加1和减1功能键。
通常该键与K7配合使用。
5)K7键为暂停键。
通常该键与K5,K6配合使用.
6)K8为夜晚至凌晨期间车辆较少情况处理键,所有方向黄灯闪烁并所有显示时间为六十。
可避免交通事故发生。
表2-4各键与行线.列线的对应关系
行线
列线
S1
S2
S3
S4
H1
K1
K2
K3
K4
H2
K5
K6
K7
K8
其中H1接P2.5,H2接P2.4,S1接P2.0,S2接P2.1,S3接P2.2,S4接P2.3.
图3-5按键电路接线图
3.5门铃电路
门铃电路由蜂鸣器构成,由P3口的P3.7控制。
单片机则通过控制P3.7从而控制蜂鸣器的响与不响。
在此次设计中,按键则调用门铃程序,即按键的同时,门铃响。
故我们可以根据门铃有无响声判断是否有键按下,或者说按下是否有效。
图3-5门铃电路接线图
第4章应用软件设计
本次智能交通灯控制系统可以将系统分为几个模块,每个模块通过相对应的接线连接组成一个完整的系统。
包括以下系统模块:
(1)主程序模块,通过主程序模块完成主要计时显示工作。
(2)数码管显示模块,通过数码显示完成倒计时时间的显示。
(3)按键扫描模块,通过按键扫描完成对于基准时间调整的功能模块。
4.1主程序模块
上电初始化后,查询有无键按下,有键按下执行该按键功能模块,并且通过按键扫描来确定倒计时时间。
无键按下时,首先南北方向所有黄灯闪烁5秒后,东西方向绿灯亮30秒并进入倒计时。
通过按键来调用bell程序和延时程序,并进行延时时间初始化设置。
东西为红灯时比南北方向的绿灯多5s,5s为南北的黄灯闪烁时间,然后东西方向由红灯跳为绿灯,南北方向的绿灯先跳到5s黄灯再跳为红灯,反之一样,方向发生改变。
图4-1主程序流程总图
4.2按键模块
4.2.1按键查询模块
先调用键盘查询程序查询有无键按下,然后判断是K1按下吗?
是则门铃响,执行K1键功能,不是则查询K2是否按下?
是则门铃响,执行K2功能,延长东西方向通行时间为60秒,南北方向红灯亮;
不是则转查询K3是否按下?
是则门铃响,执行K3功能,延长南北方向通行时间为60秒,东西方向红灯亮;
不是则转查询K4是否按下?
是则门铃响,复位上电的情况,东西南北方向所有黄灯闪烁5秒后,东西方向绿灯亮30秒并进入倒计时。
南北方向红灯亮35秒并进入倒计时;
不是则转查询K5是否按下?
是则门铃响,东西方向通行时间加一,南北方向红灯亮的时间加一;
不是则转查询K6是否按下?
是则门铃响,东西方向通行时间减一,南北方向红灯亮的时间减一;
是则门铃响,判断K7是第一次按下?
是则暂停;
不是则查询K7是第二次按下?
是则恢复显示,并且对计数单元初始化为0.不是跳出K7查询,查询K8是否按下?
按下则门铃响,东西南北方向所有黄灯闪烁5秒后,东西南北方向数码管均显示为60秒。
不是则再进入查询入口,开始新的一轮查询。
以此类推,重复执行上述操作。
图4-2按键查询流程图
4.2.2K5,k6,k7按键模块
K7按键有两个功能,第一次按下时暂停,第二次按下时,则按当前显设定值显示。
其中7FH单元用来存按下的次数,初始化为0.并且按一次自动加一。
按下K7,暂停,可对东西方向通行时间进行调整,K5东西方向通行时间加一,K6东西方向通行时间减一,再按K7,按当前显设定值显示。
图4-3按键k5k6k7功能流程图
4.2.3K1按键模块
K1按键有两个功能,第一次按下时暂停,第二次按下时,则恢复正常。
其中B用来存按下的次数,初始化为0.并且按一次自动加一。
图4-4按键k1功能流程图
第5章硬件调试与结果分析
5.1硬件调试操作过程
硬件调试前,把编好的汇编程序写进KEIL软件,经编译无错误后,通过调试工具,把程序生成HEX文件并下载到单片机里,接好硬件的接线,进行调试。
接线方法如下:
A到DP接P0.0到P0.7,VCC,GND分别接VCC,GND.W1到W4接P2.7到P2.4,S1到S4接P2.0到P2.3,H1接P2,.5,H2接P2.4。
5.28个键的调试
5.2.1按下K1键调试
K1按键有两个功能,第一次按下时暂停,所有黄灯闪五秒后,东西方向和南北方向数码管显示为99。
第二次按下时,则恢复正常。
图5-1第一次按下K1的调试图
图5-2为按下K1后五秒后的显示图
5.2.2K2键的调试
按下K2,延长东西方向通行时间为60秒。
南北方向红灯亮65秒,5秒倒计时时,南北方向黄灯闪烁5秒。
倒计时为0时,东西方向和南北方
交换交通灯亮灭情况。
图5-3按下K2键的调试图
5.2.3K3键的调试
按下K3,延长南北方向通行时间为60秒。
东西方向红灯亮65秒,5秒倒计时时,东西方向黄灯闪烁5秒。
图5-4按下K3键的调试
5.2.4K4键的调试
按下K4,进行复位。
恢复上电后的情况,所有黄灯闪五秒后,南北绿灯亮30秒,东西红灯亮35秒,倒计时为5秒时,南北方向黄灯闪烁5秒。
倒计时为0时,东西方向和南北方向交换交通灯亮灭情况。
图5-5按下K4键的调试
5.2.5K5键的调试
按下K7时暂停,再按下K5,对东西方向的时间进行加一手动调节,同时南北方向的红灯时间加一。
图5-6按下K5键的调试
5.2.6K6键的调试
按下K7时暂停,再按下K6,对东西方向的时间进行减一手动调节,同时南北方向的红灯时间减一。
图5-7按下K6键的调试
5.2.7K7键的调试
图6-8按下k7键的调试
5.2.8K8键的调试
按下K8,开启深夜模式。
所有黄灯闪五秒,所有方向灯显示60秒。
图6-9按下k8键的调试
第6章总结
6.1课程设计的总结
两个星期的单片机课程设计,分两个阶段。
第一个星期我们查阅了相关资料,制定出相关的总体方案,画出相关的原理图和仿真图。
第二个星期我们进行边调试边修改程序。
完成了由STC89C52控制的,较为满意的智能交通灯控制系统,并提供自动和手动程序。
但在此过程中,也遇到了许多麻烦。
仿真时,刚开始出现数码管不亮的问题,加入驱动后,数码管未能按期待的显示。
而在调试过程中,出现了按键时门铃不响,按键按下时,不能进行紧急情况处理功能和东西方向加一的功能。
在检查程序无错后,检查电路发现接线无错,但接线时没把S1线接触不良,纠正错误后,调试,既能实现按键时响铃,也可以实现各按键的功能。
在这两个星期内,我很感谢李老师和王老师的指导,她们的指导使得我们能在思维和知识上得到更好的认识。
也很感谢同学的帮助和讨论,他们及时的指出我的错误,并帮助我改正。
在这个过程,我学会了团结和合作,也学会了感恩。
6.2特色
1)因采用发光二极管做指示灯,具有节能的特点。
2)具有多功能按键,操作简单,可实时处理事务。
3)系统提供自动和手动程序,可以灵活选择。
4)在按键时提供门铃功能,可以通过门铃来判别是否有键按下或者说按键是否有效。
6.3不足
系统为能提供南北方向手动调节时间的程序,不能对南北方向实时的调节;
系统没有提供拐弯的功能和拐弯的指示图案。
附录
附录A汇编程序
附录B汇编程序
ORG0000H
SJMPMAIN
ORG0030H
MAIN:
MOVSP,#0A0H;
设置指针指向A0H单元
MOV7AH,#05H;
数据缓存区7A
MOV7BH,#00H;
数据缓存区7B
MOV7CH,#05H;
数据缓存区7C
MOV7DH,#00H;
数据缓存区7D
MOVP1,#0FFH;
S6:
CLRP1.3;
清0,点亮东西方向黄灯
CLRP1.7;
清0.
LCALLDELAYEX
CJNEA,#0FFH,KEY_1
SETBP1.3
SETBP1.7
LCALLDELAYEX
CJNEA,#0FFH,KEY_1;
DEC7CH;
减一
DJNZ7AH,S6;
MOV70H,#00H;
(绿灯)时间缓存区
MOV71H,#03H;
MOV72H,#05H;
(红灯)时间缓存区
MOV73H,#03H;
MOVR4,#30
M1:
MOVB,#00H
MOV7FH,#00H;
MOVP1,#0FFH
CLRP1.0
CLRP1.6
MOV7DH,73H
MOV7CH,72H
MOV7BH,71H
MOV7AH,70H
MOVA,R4
MOVR0,A
M2:
LCALLR_AND_G
DJNZR0,M2
LCALLYELLOW2
MOVP1,#0FFH
CLRP1.1
CLRP1.5
MOV7DH,71H
MOV7CH,70H
MOV7BH,73H
MOV7AH,72H
MOVR1,A
M3:
DJNZR1,M3
M4:
LCALLYELLOW1
LJMPM1;
1键--紧急状态。
。
KEY_1:
CJNEA,#01H,KEY_2;
判断按键是否为1,不是则跳到KEY_2
LCALLBELL
MOV7FH,#00H
INCB;
加一
MOVR0,B
CJNER0,#01H,S3
MOV7AH,#05H
MOV7BH,#00H
MOV7CH,#05H
MOV7DH,#00H
MOVP1,#0FFH
S1:
CLRP1.3
CLRP1.7
CJNEA,#0FFH,KEY_1
SETBP1.3
SETBP1.7
LCALLDELAYEX
CJNEA,#0FFH,KEY_1
DEC7CH
DJNZ7AH,S1
M