交通灯控制 汇编_第1页
交通灯控制 汇编_第2页
交通灯控制 汇编_第3页
交通灯控制 汇编_第4页
交通灯控制 汇编_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、单片机系统开发交通灯控制姓名:班级:座号:指导老师:2008.12单片机课程设计一一交通灯控制一、设计说明根据生活实际,一个可以正确指挥十字路口的交通灯必须具备的基本条件包括:最基本的硬件系统和 基于该硬件系统的可靠的软件系统。根据所学的单片机知识可知,硬件系统包括单片机、单片机所控制的 LED交通灯和倒计时数码管以及单片机正常运行所需的其它硬件环境。软件系统则是基于硬件系统的完整 的,可靠的控制程序,这也是本课程设计的最重要部分。下面将逐步给出软硬件系统的设计方案。二、硬件模型设计根据实际情况,在不区分行进方向的情况下,仅需要两组(每组3个,分别为红黄绿三色)LED信号灯, 一组控制东西方向

2、,一组控制南北方向。设定红黄绿三种灯的显示时间分别为10秒,2秒,10秒。LED信 号灯在切换的同时,相应的数码管将信号灯剩下的显示时间显示在数码管上(相当于倒计时)。设定初始状 态,东西方向按绿一黄一红顺序亮起,南北方向按红一绿一黄亮起。随着时间推移,LED和数码管自动切换, 如此循环下去。此外多设计了一个RESET按钮,功能是使硬件从初始状态开始运行,以备不时之需。根据以上的设计思路,交通灯控制系统的硬件连接可如下图所示:VmVuUEr-IL MIL:%BB0B详细连接:1、P1 口接六枚LED交通灯,其中P1.3, P1.4两脚悬空2、X1, X2 接 6MHz 晶振3、RESET引脚接

3、RESET按钮4、P0 口低七位与74HC240对应输入引脚相连,输出引脚与共阴极七段数码管对应引脚连接,P0.7悬空, 且两个使能端接地5、P1 口高四位与75452反向驱动芯片相连 元件的选择及依据1、微控制器AT89S51 一片整个硬件系统的核心部件2、限流电阻220/0.25W 14个为发光二极管分压使之工作在安全电压下 阻值计算方法:R= (5V-VF) /IF=200Q于是就近选择220档3、下拉电阻10K 一个接地4、电解电容30pF两个与晶振组成外部振荡电路5、电容10uF确保复位信号(放电时间)保持2TM以上6、按钮(不带锁)一个作为RESET键7、LED灯6枚 工作电压VF

4、=3V工作电流IF=10mA8、晶振6MHZ 一个一一为微控制器题供时钟信号9、74HC240 芯片一枚10、7段*2数码管2个11、75452两枚一一反向驱动数码管12、+5V直流稳压电源三、控制程序设计根据硬件模型的设计要求,我们可以很容易地画出控制程序的流程图:注:根据硬连线图,交通灯由P1 口控制,故改变P1 口的值即改变交通灯的显示状态;另个两个计时数码 管倒计时初始分别存放在3BH和3CH单元中,改变这两个单元的值就改变倒计时的初值。控制程序设计分析1、为了降低程序的复杂性和充分利用单片机资源,设计中将两组数码管的控制分开,分别用一个中断 控制。即两个定时器全部开启,用定时器0的中

5、断服务程序控制东西方向交通灯的显示和对应数码管 的显示,用定时器1的中断服务程序控制南北方向交通灯所对应的数码管的显示。为了避免两个定时 器同时产生中断,这里人工设置定时器0和定时器1的计时长度分别为:500us和400 us,具体点就 是把TL0,TH0都设置为06H,把TL1和TH1都设置为38H。2、由于在交通灯显示发生切换后,相应的数码管显示的内容不完全一样,但某一时刻显示的初值又是 固定的,因此有必要把两个数码管各个时刻所显示的内容分别保存到存储器的某个区域当中,以方便 交通灯状态切换的时候把相应的初值从存储器中取出来。根据硬件的设计,在10秒,12秒,20秒, 22秒(相当于0时刻

6、)四个时刻,交通灯的状态发生改变,各个时刻对应的数码管应当显示(10,10),(02, 10),(10,08),(02,02),显然,东西数码管四个时刻对应的值为(10H,02H,10H,02H), 将它们保存在40H至43H单元中;南北数码管四个时刻对应的值为(10H,10H,08H,02H),将它们保 存在44H至47H单元中。3、除了数码管的内容相对固定以外,交通灯的显示的状态在四个时刻也是固定的,又因为交通灯是由 P1 口控制,故而四个时刻P1 口应当分别输出:81H,44H,24H,22H。程序中也把这些值存放于50H 至53H的单元中。4、此外,由于定时器只能按规定时间间隔(500

7、us和400 us )产生中断,具体要计时多长时间是由 人工设置软件计数器实现的。这里我们只为两个定时器分别都设定满0.1秒标志和满1秒标志(200,10) 存放在36H,37H中,以及(250,10)存放在38H和39H中。5、内存中,3AH作为交通灯状态字的存放地址,3BH和3CH分别作为东西和南北数码管显示内容的存 放地址。31H、32H作为3BH的显示缓冲单元,33H、34H作为3CH的显示缓冲单元。6、如硬连线图所示:P0 口应输出字段码,P2 口应输出字位码 时序图:各信号灯对应控制引脚:东西方向:绿(P1.7)黄(P1.6)红(P1.5)南北方向:绿(P1.2)黄P1.1红(Pl

8、. 0)东西方向:绿黄010一 a1 TOC o 1-5 h z 南北方向: HYPERLINK l bookmark39 o Current Document I.i : I r 红 I ; qIR4I1 HYPERLINK l bookmark42 o Current Document 绿 04|一;1程序代码:ORG 0000HLJMP MAINORG 000BH;定时器0中断入口LJMP TP0ORG 001BH;定时器1中断入口LJMP TP1ORG 0030HMAIN:MOV SP,#6FH;设栈底指针MOV TMOD,22H;定时器 0/1 模式 2MOV TL0,06H;计时器

9、 0 初值 500usMOV TL1,38H;计时器 1 初值 400usMOV TH0,06HMOV TH1,38HMOV 40H,#10;计时板初值MOV 41H,#02MOV 42H,#10MOV 43H,#O2MOV 44H,#10;计时板初值MOV 45H,#10MOV 46H,#08MOV 47H,#02MOV 50H,#81H;LED 控制字MOV 51H,#44HMOV 52H,#24HMOV 53H,#22HMOV 36H,#200;定时器T0 0.1秒判断MOV 37H,#10;1 秒判断MOV 38H,#250;定时器T1 0.1秒判断MOV 39H,#10;1 秒判断S

10、ETB EA;全局中断允许开SETB ET0;T0中断允许开SETB ET1;T1中断允许开SETB TR0;T0开始计时SETB TR1;T1开始计时MOV 3AH,#81H;LED灯初始状态MOV 3BH,#10H ;计时板初始状态LOOP:MOV A,3AHMOV 90H,A;LED初始状态LCALL CZLCALL DISPSJMP LOOPTP0:PUSH ACCPUSH PSWDJNZ 36H,DONE0;满 0.1S?MOV 36H,#200;软件计时器恢复DJNZ 37H,DONE0;满 1SMOV 37H,#10 ;软件计时器恢复MOV R0,#50HMOV R1,#40HN

11、STEP0:MOV A,R1ADD A,#99HDAAMOV R1,ACJNE A,#0,DONE0;计时板倒计完?INC R0;下一个LED状态字INC R1;下一个计时板初始值CJNE R0,#54H,NEXT;下一步MOV 40H, #10MOV 41H, #2MOV 42H, #10MOV 43H, #2SJMP DONE0NEXT: MOV 3AH, R0SJMP NSTEP0DONE0:POP PSWPOP ACCRETITP1:PUSH ACCPUSH PSWDJNZ 38H,DONE1;满 0.1S?MOV 38H,#250;软件计时器恢复DJNZ 39H,DONE1;满 1S

12、MOV 39H,#10;软件计时器恢复MOV R1,#44HNSTEP1:MOV A,R1ADD A,#99HDAAMOV R1,ACJNE A,#0,DONE1;计时板计完?INC R1;下一个计时板初值CJNE R1,#48H,NSTEP1;下一步MOV 44H, #10MOV 45H, #10MOV 46H, #8MOV 47H, #2SJMP DONE1DONE1:POP PSWPOP ACCRETICZ:MOV R0,#3BHMOV R1,#31HCZ1:MOV A,R0ANL A,#0FHMOV R1,AINC R1MOV A,R0ANL A,#OF0HSWAP AMOV R1,AINC R0INC R1CJNE R0,#3DH,CZ1MOV 37H,33H;把33H,34H两个单元的内容移动到37H,38H中MOV 38H,34HRETDISP:MOV R0,#31HMOV R3,#80H;字位码初值MOV A,R3DISP1:MOV 0A0H,A; P2 口输出字位码MOV A,R0AD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论