单片机proteus仿真设计交通灯

上传人:博****1 文档编号:563640802 上传时间:2023-05-20 格式:DOCX 页数:15 大小:947.43KB
返回 下载 相关 举报
单片机proteus仿真设计交通灯_第1页
第1页 / 共15页
单片机proteus仿真设计交通灯_第2页
第2页 / 共15页
单片机proteus仿真设计交通灯_第3页
第3页 / 共15页
单片机proteus仿真设计交通灯_第4页
第4页 / 共15页
单片机proteus仿真设计交通灯_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《单片机proteus仿真设计交通灯》由会员分享,可在线阅读,更多相关《单片机proteus仿真设计交通灯(15页珍藏版)》请在金锄头文库上搜索。

1、课程设计成果说明书题 目:城市交道口交通灯控制系统姓名:学号:学院:班级:指导教师:任务:设计并制作一个城市交道口交通灯控制糸统要求:根据下图交道口模型,装上交通灯。交道口模型如图所示。车道晌车道I 双 I黄 |线晌车道 一双尊西晌车道彳加车道二人mt人行人行晌车道晌车道晌车道二彳叭车道人僦交通灯控制规则如如下:1)每个街口有左拐、种颜色。自行车与汽车共用左拐、右拐和直行灯。2)共有四种通行方式:道直示灯。每个灯有红、绿两 车辆南北直行、各路右拐,南北向行人通行。南北向通行时间为 1 分钟,各路右拐比直行滞后 10 秒钟开放。 南北向左拐、各路右拐,行人禁行。通行时间为 1 分钟。 东西向直行

2、、各路右拐,东西向行人通行。东西向通行时间为 1 分钟, 各路右拐比直行滞后 10 秒钟开放。 东西向左拐、各路右拐。行人禁行。通行时间为 1 分钟。3)在通行结束前 10秒钟,绿灯闪烁直至结束。1, 基本部分:按照上述控制要求,用发光二极管代替交通灯,用 PROTEUS 绘制电路图,并仿真调试实现之。2, 发挥部分: 1.有倒计时时间显示。2 若交道口出现紧急情况,交警可将糸统设置成手动:全路口车辆禁行 行人通行。紧急情况结束后再转成自动状态。3 当有 119、 120 等特种车辆通过时,糸统自动转为特种车放行,其它车 辆禁止状态。特种车辆通过15秒钟后,糸统自动恢复,用模型车演示。4 其它

3、自选措施。城市交道口交通灯控制系统1. 系统功能的确定 功能一:可以实现红绿灯的转换以及控制路口的基本功能。 功能二:有倒计时功能和最后十秒绿灯闪烁的功能。 功能三:出现紧急情况时,可以警察手动控制特殊状态,并维持交通。 功能四:119 或 120 等特种车经过时,可转换成为特种车道行驶状态,并在 情况消除后 15 秒,恢复原状。2. 方案论证2.1 方案一:如下图所示,为 proteus 仿真图。Ir:alB口DqmE3i-ZE*5sa5SS3弧w騎皤 n_n_n_n_n_n_n_n_d d d d d dwrid .E-mIJEd Lsmd OLWrid 匚EEEd QLE-rlEd Ax

4、t_-.nL 艮百EdH.H nlx 二-Klxc其中,P1,PO端口的8位分别来控制东西,南北方向的红绿灯。且运用了 4个 74LS164的8位移位寄存器(串行输入,并行输出)来控制4个LED的数码显示,通过 AT89C51 单片机的 P3.0,P3.1 两个扩展端口来接 4 个并行连接的 74LS164 的 DIN 和 CLK 两个端口来显示倒计时的功能,这会产生乱码使得显示杂乱,而主 程序以顺序执行为主,其中穿插着对 P3.7 的端口高低电平的测试和跳转语句来 实现功能三,并且功能一、二在主程序中实现,没有功能四的的实现程序。所以 该方案可行却不完善,故不选用。2.2 方案二:如下图所示

5、,为 proteus 仿真图。下岗Fl宵內得F舁3.qTE:B .qTE:6.;TTTTl;TTT7 TEG:EDJ-51- *ET-67FfF-r-Ed .Hr&IJEd 匸听爱 LLLEd 匚gEEd ELL N一诃Ed tDUJLnd mwNd LVHZd EL 盍 Nd NLW*Nd LLHEZd EW丙 Nd 豈 LNd SVHZd1 : :sl :ml :卩扁:-r-4m*ijqr1*viU_piliP1.1P1Pin P1.1 P2 Pid pi.P1S Pi .5口iTl其中,P0,P2端口的8位分别来控制东西,南北方向的红绿灯。而P1端口的 P1.0P1.6 来控制四个 LE

6、D 的码值显示,而 P3.0P3.3 这四位用来片选这四个 LED。并且,依旧用P3.7高低电平来实现功能三的内容,并且考虑用P3.6的高 低电平来实现功能四的内容。程序依旧与方案一相似,却可以消除显示乱码,程 序杂乱,不易读写。所以,该方案可行却仍不完善,故不选用。2.3 方案三:如下图所示,为 proteus 仿真图。如下页所示仿真图。其中,在方案二的基础上,将四个LED分开的显示器用两个 一起的 LED, 并且运用动态扫描显示倒计时,而 P0,P2 端口的 8 位分别来控制东 西,南北方向的红绿灯。而 P1 端口的 P1.0P1.7 来连接两个 LED 的数码管的 AF,DP这8个接口处

7、。P3.0,P3.1分别接每个LED的1,2接口处来控制数码管 显示的高低位。顺次执行的主程序采用中断程序来实现,用P3.2,P3.3的电位变 化分别来实现功能三,四。其中,这可以用跳变触发中断或电平触发中断来实现 主要是ITO,IT1置位就是跳变触发方式,置零就是电平触发方式。这样,软硬件 对于该实验所要求的功能的实现均较易实现,而且程序较易编写和读取。所以,综上所述,最终选择方案三来进行实验。3. 系统硬件的设计3.1 主控制器的设计以及接口电路的设计(电路图及设计说明)该电路图的 proteus 仿真图即和方案三的一致,正常运行时如下所示:LLMlErld H J-E-rqnd N OX

8、LLTEil貝百nd ag?J?S衲貝押旺gJLHJ-r-Ed .H_.t=-IJEd LEEd PTJ-ntm 二二二二二二:二二二二二二二二二二二二二二m 二二二二二二二主要运用到的硬件是:一块AT89C51单片机,两个两段共阴LED显示器,SW1, SW2 两个双掷开关以及 32 个发光二极管。其中, 16 个红色, 16 个绿色发光二极管,每两个为一组。若P0端口得电压输出电流不足以驱动LED,就利 用上拉电阻使LED能正常工作,但不需电阻亦可。单片机晶振选用12MHz。4. 系统软件的设计4.1 程序的编写思想: 本次实验设计的程序主要包含:主程序,两个中断程序,显示程序(显示程序里

9、 含延时1ms的程序)。具体见以下叙述。4.2 主程序的设计主程序中,是顺次执行,从SETB P3.7开始运行南北方向为主的两个60秒,接 着CLR P3.7再运行东西方向为主的两个60秒,接着P3.7重新置位,再次循环。流程图如下:4交通灯控制系统定乂中断系统开始程序:SETB P3.7CLR P3.74判断P3.7的电位南北直行和行人均绿灯, 其余均红灯,并延时 10秒东西直行和行人均绿灯,其余均红灯,并延时 10秒I南北直行、行人和右拐均绿灯,其余红灯,并延时 40秒东西直行、行人和右拐均绿 灯,其余红灯,并延时 40秒南北直行、行人和右拐均绿灯,且闪烁。其余红灯,并延时10秒东西直行、

10、行人和右拐均绿灯,日闪烁。苴余红灯.并延时 10秒南北左拐,右拐绿灯,东西右拐绿灯.其余红灯. 并延时50秒东西左拐,右拐绿灯,南北右拐绿灯,其余红灯,并延时 50秒南北左拐,右拐绿灯,东西右拐绿 灯,且闪烁。其余红灯,并延时10秒东西左拐,右拐绿灯,南北右拐绿 灯,且闪烁。其余红灯,并延时 10秒4.3 两个中断程序的设计两个中断程序分别靠双掷开关 SW1 和 SW2 控制高低电位而实现,中断程序STARTO和中断程序START1为了实现功能三和四。流程图如下:.恢复原状并返回4.4 显示程序的设计流程图如下所示:显示程序开始返回循环 5次调用延时程序(1毫秒的延时)调用延时程序(1毫秒的延

11、时)将时间转化为十进制,高低位分别存在50H , 51H 处选通低位,显示51H 内值选通高位,显示50H 内值该显示程序主要是为了实现倒计时的显示,先将存在SECOND内的数值从十六进 制数转化为十进制,并存在DBUF, DBUF+1(即50H,51H)单元中,然后通过LEDMAP 取出字形,并选通每个两段共阴 LED 的显示管的高,低位显示出来。 5系统调试5.1 硬件调试 设计小程序让发光二极管导通,点亮二极管,并向两段共阴 LED 显示管赋值,观 察是否显示,调试到所有硬件设备均可正常即可。5.2 软件调试 主要是编程,以下是实现本次实验功能的程序:SECOND EQU 30HDBUF

12、 EQU 50HORG 0000HLJMP STARTORG 0003HLJMP START0ORG 0013HLJMP START1START: MOV R7,#5MOV SP,#60HSETB EASETB EX0SETB EX1SETB IT0SETB IT1MOV TCON,#00HMOV TMOD,#01HMOV TH0,#3CHMOV TL0,#0B0HCLR TF0SETB TR0MOV A,#0FFHMOV P2,AMOV P0,A(以上程序主要是一些赋值程序,和定时 器,中断等的开启,以及初始化红绿灯等).Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx

13、 Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx TxLOOPM: SETB P3.7LJMP LOOPLOOPK: CLR P3.7LOOP: MOV R2,#20MOV R3,#10MOV SECOND,#60JNB P3.7,LP1LCALL STATE1LJMP Z1LP1:LCALL STATE4Z1:LCALL DISPLAYJNB TF0,Z1CLR TF0MOV TH0,#3CHMOV TL0,#0B0HDJNZ R2,Z1MOV R2,#20DEC SECONDLCALL DISPLAY

14、DJNZ R3,Z1 (以上程序主要是通过对 P3.7 电位的高低 来选择红绿灯的状态,状态一和四的选择)*1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* *1* .Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx Tx TxMOV R2,#20MOV R3,#40MOV SECOND,#50JNB P3.7,LP2LCALL STATE2LJMP Z2LP2:LCALL STATE5Z2:LCALL DISPLAYJNB TF0,Z2CLR TF0MOV TH0,#3CHMOV

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号