ImageVerifierCode 换一换
格式:DOCX , 页数:32 ,大小:433.47KB ,
资源ID:942571      下载积分:11 金币
快捷注册下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

开通VIP
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.zixin.com.cn/docdown/942571.html】到电脑端继续下载(重复下载【60天内】不扣币)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(十字路口交通灯设计.docx)为本站上传会员【可****】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

十字路口交通灯设计.docx

1、 前 言 在今天,红绿灯安装在各个道口上,已经成为疏导交通车辆最常见和最有 效的手段。但这一技术在19世纪就已出现了。交通信号灯的出现,使交通 得以有效管制,对于疏导交通流量、提高道路通行能力,减少交通事故有 明显效果。通过三个星期的学习,本人对单片机的结构和功能已有了初步 的了解和认识。单片机在交通控制中起到了举足轻重的作用,掌握了单片 机的工作原理也就基本了解了交通灯的运做原理。作为一个学生,为了更 好地掌握单片机的结构和功能,为了进一步加强自己的实践能力,本人设 计了以下的一款交通灯。

2、 目录 前言……………………………………………………3 目录……………………………………………………4 一、毕业设计的要求和内容…………………………5 二.硬件电路说明……………………………………6 三.软件部分说明……………………………………11 四.系统设计及总结……………………………………21 附录一主要材料……………………………………22 附录二 原理图……………………………………23 附录三PCB板型……………………………………24 附录四3D效果图……………………………………25 附录五 流程图……………………………………26 附录六

3、 源程序和注释说明…………………………27 致谢……………………………………………………35 参考文献…………………………………………………35 一、毕业设计的要求和内容 1.1工作要求 本次毕业设计,是针对实际要求,灵活应用所学知识,独立进行系统综合设计的过程,以达到巩固单片机基础知识、掌握单片机系统开发过程和提高动手实践能力的目的。 1.2、技术要求 某十字路口,如下图所示,设计一个十字路口交通灯信号控制器,指挥交通车的通行。要求如下: 1)东西通道和南北通道交替通行,东西通道每次放行时间大于南北通道每次放行时间。 2)绿灯亮表示可以通行,红灯亮表示禁止通行。

4、3)每次绿灯变红灯时,绿灯先闪转变黄灯(此时另一干道上的红灯不变)。 4)十字路口要有数字显示,作为时间提示,以便人们更直观地把握时间。具体要求东西通道、南北通道通行时间及黄灯亮的时间均以秒为单位作减计数。 二.硬件电路说明 2.1电路设计原理图 见附录 2.2电路工作原理 本设计是以89S51为主控芯片 ,利用P1口控制74LS240(八反相缓冲器,线驱动器)驱动发光二极管模拟交通灯。倒计时显示部分采用串口实现。串口工作在方式0时通过外接移位寄存器74LLS164实现串并转换。需要显示的数据经RXD端输出 经过74LS164串

5、并转换输出到共阳极的LED数码管显示,利用T0定时器进行1S定时。 2.3 89S51 单片机介绍 2.3 关于74LS240 由于单片机的驱动能力太弱 所以给加了 驱动电路 有因为发光二极管驱 动 功率不大所以我选用了八反相缓冲器/8位三态门电路74LS240 无锁存功能 2.4 介绍74LS164 本设计采用164把串行口逐位输出的数据进行串并转换进而控制LED的显示 2.5 单片机最小系统 2.6 改进部位 本设计添加了应急通行 用按钮开关控制东西南北的应急通行信号 其中东西方向接外中断

6、0 南北接外中断1。按一下按钮该方向通行 另外方向停止 按两下恢复原样 。具体看原理图 2.8 框图 状态 持续时间/S 东西方向 南北方向 绿 黄 红 绿 黄 红 1 1 灭 灭 亮 灭 灭 亮 2 30 亮 灭 灭 灭 灭 亮 3 3 亮 亮 灭 灭 灭 亮 4 20 灭 灭 亮 亮 亮 灭 5 3 灭 灭 亮 闪 亮 灭 6 30 亮 灭 灭 灭 灭 亮 循环 三.软件部分说明 3.1.1 利用定时器定时1S 定时/计数器的四种工作方式 工

7、作方式0:定时/计数器的工作方式0称之为13位定时/计数器方式。它由TL的低5位和TH的8位构成13位的计数器,此时TL的高3位不用。 工作方式2:在工作方式2中,只有8位参与计数,而高8位是不参与计数的,用作预置数的存放,这样计数范围就小了,每当计数溢出,就会打开T0的高、低8位之间的开关,预置数就进入低8位。当然这是由硬件自动完成的,不需要我们去操心。通常工作方式2用于波特率发生器,对于这种用途,定时器就是为了提供一个时间基准,计数溢出后不需做任何的事情,要做的 仅仅只有一件,就是重新装入预置数,再开始计数,而且中间不能有任何的延迟,可见这个任务用这种工作方式来完成是最妙不

8、过了。 工作方式3:在这种工作方式下,T0被拆成2个独立的定时/计数器来用。其中,TL0可以构成8位的定时器或计数器工作方式;而TH0则只能作为定时器用,我们知道定时/计数器使用时需要有控制,计满后溢出需要有溢出标记,T0被分成两个来用,那就要两个控制及溢出标记了,从何而来呢?TL0还是用原来的T0的标记,而TH0则借用T1的标记,如此一来T1不是标记、控制可用了吗?是的,在一般情况下,只有在T1以工作方式2运行时,才让T0工作于方式3。 工作方式1:工作方式1是16位的定时/计数器方式,将TMOD的M1M0设为“01”即可,其他特性与工作方式0相同。 3.1.2 定时1S 十

9、字路口交通灯模拟控制器定时器采用工作方式1,先定时125MS,然后在定时中断程序中累加中断次数,8次为一秒,这样就可以起到定时1S的功能。 工作方式由工作方式控制寄存器(TMOD)决定,FR寄存器TMOD用于2个定时器/计数器T1/T0的工作方式设定,各位的含义表示如下: GATE:门控位,定义T1/T0的启动方式, C/T-:定时/计数功能选择位。为“0”作定时器用;为“1”,作计数器用。 M1M0:工作方式选择位。 00 方式0 13位计数器 01 方式1 16位计数器 10 方式2 初值自动重装8位计数器 11 方式3 2个8位计数器,仅适用于T0 十字

10、路口交通灯模拟控制器设计采用6M晶振,因此定时125MS,可用下列语句实现。工作方式1是16位计数结构的工作方式,计数器由TH全部8位和TL全部8位构成。 所以初始化定时器T0工作方式1,定时125MS的语句如下: MOV TMOD,#01 MOV TH0,#3CH MOV TL0,#0B0H 定时1S在定时器0中断程序中完成,即计数八次为1S。定时器中断初始化 进入定时器0中断 程序如下 : SETB EA ;开中断 定时是否到1S SETB ET ; 定时器0允许中断

11、 SETB TR ;开始定时 定时器定时1S的中断流程图 定时时间减1 计数值加1 定时不变 出定时器0中断 3.2外中断程序 对于外中断必须有中断的初始化程序、中断服务程序。 3.2.1 中断的初始化步骤 1) 要使用中断则首先必须中断中断允许。 2) 硬件的初始化:设置引脚连接设置I/O口的输入输出。 3) 软件的初始化:设置中断寄存器,设置中断服务地址,清除中断标志,设置中断触发模式。 4) 使能中断。 外中断是由外部原因引起的中断,有两个中断源,即外中断0和外中断1,中断请求信号由引脚P3.2和P3.3输入。 外中断请求信

12、号弹有两种方式,一是电平方式,二是脉冲方式,可通过有关控制位的定义进行规定。电平方式为低电平有效,只需在单片机的(INT0)和(INT1)中断请示输入端采样到有效的低电平时,就会激活外部中断。脉冲方式则在脉冲的后负跳沿有效,即在相邻两个机器周期对中断请求引入端电平进行采样中,如前一次为高,后一次为低即为有效中断请求。这就要求在这种中断方式,中断请求信号的脉冲宽度必须大于一个机器周期,以保证电平变化能被单片机采样到。 3.2.2 定时器控制寄存器(TCON) 外中断请求方式的控制位在定时控制寄存器TCON中的位(IT0)和(IT1)两个位,当IT0(IT1)=0为电平方式,IT0(IT1

13、1为脉冲方式。同时此寄存器中的位89(IE0)和(IE1)为外中断请求标志位,当CPU采样到INT0(INT1)端出现有效中断请求时,此位由硬件 置1。在中断响应完成后转向中断服务时,再由硬件自动清除。 3.2.3 中断允许控制寄存器(IE) 下面本文对有关控制位作说明:EA——中断允许总控制位。EA=0,中断总禁止,禁止所有中断。EA=1,中断总允许,总允许位打开后,各中断的允许或禁止由各中断允许控制位设置决定。 .EX0(EX1)——外部中断允许控制。EX0(EX1)=0,禁止外部中断。EX0(EX1)=1,允许外部中断。 .EX0(ET1)——定时/计数中断允许控制位

14、ET0(ET1)-0,禁止定时/计数中断。ET0(ET1)=1,允许外部中断。ET0(ET1)=1,允许定时/计数中断。 .ES——串行中断允许控制位。ES=0,禁止串行中断。ES=1,允许串行中断。 中断的允许和禁止就是中断的开放和关闭,中断允许就是开放中断的禁止就是关闭中断。从以上说明我们可看出,MCS-51的中断允许是通过两级控制的,以EA位作为总中断控制位,以各中断挖掘位为分控制位。当总中断位为禁止状态时,不管分控制位是允许或禁止,整个中断都是禁止的。MCS-51单片机复位后,IE=00H,因此中断处于禁止状态。 值得一提的是:单片机中断响应后还会自动关闭中断,因此在转入中断服

15、务程序后,应由软件指令禁止中断。 3.2.4 中断优先级控制寄存器(IP) MCS-51的中断优先级控制比较简单,只设置了高、低两个级别的有限级,各中断源的优先级别先级别由优先寄存器(IP)进行控制。 .PX0——外中断0(INT0)优先级控制位。 .PI0——定时中断0优先级控制位。 .PX1——外中断1优先级控制位。 .PT1——定时中断1优先级控制位。 .PS——串行中断优先级控制位。 控制位=0,优先级为低。控制位=1,优先级为高。 中断优先级是为了中断嵌在服务的,控制原则为: 1) 低优先级中断不能打断高优先级的中断服务,而高优先级的中断服务可以打断低优先级的中

16、断服务。 2) 同级的中断已经响应,其他中断将被禁止。 3) 如果同级的多个中断源同时出现,CPU将按查询次序确定哪个中断被响应,次序为:外中断0-定时中断0-外中断1-定时中断1-串行中断。 3.2.5中断控制寄存器的状态设置 本例设计要采用定时器中断,外中断0,外中断1。定时器中断、外中断、串口中断控制如下,其中外中断0、1优先级最高,保证了应急通行的需求。 MOV SCON,#00H ; 工作于工作方式0,既移位寄存器状态 SETB ES ;开总中断 SETB ET0 ;开定时器中断 SETB TR0 ;启动T0定时器 SETB IT0 ;

17、外中断0为脉冲触发方式 SETB IT1 ;外中断0为脉冲触发方式 MOV IP,#05 ;外中断0,1为高优先级 SETB EX0 ;开个中断0 SETB EX1 ;开外中断1 外中断程序逻辑流程 进入外中断 标志位是否1 否 是 复位 指标志位,关外中断 开外中断 出外中断

18、 3.3.串口工作方式设计 3.3.1串口工作方式 串口有4种方式:方式0、1、2、3,由串口控制寄存器SCON和PCON控制。 0 0 方式0 同步移位寄存器 0 1 方式1 10位异步收发 1 0 方式2 11位异步收发 2 1 方式3 11位异步收发 1) 方式1:10位异步收发 方式1下,串行口位10位通用异步接口。发送或接收数据信息为10位,包括1位起始位“0”、8位数据、1位停止“1”。 方式1发送:数据从TXD端口输出,当数据写入发送缓冲器SB

19、UF时,启动发送器发送。发送完数据后,置中断标志T1=1,申请中断,通知CPU可以发送下一个数据。 方式1接收:首先使REN=1,串行口从RXD接收数据,当采样到1至0跳变时,确认是起始位“0”,就开始接收数据,当接收完数据时,置中断标志RI=1,申请中断,通知CPU从SBUF取走接收到的数据。 2) 方式2 :11位异步收发方式。发送或接收信息包括1位起始“0”、8位数据库位、1位可编程位、1位停止位“1”。 方式2发送:发送前,先根据通信协议由软件包设置TB8为“奇偶校验位”或“数据标识位”,然后将要发送的数据SBUF,即能启动发送器。发送过程是由执行任何一条以SBUF为目的的寄存器

20、的指令而启动的,把8位数据装入SBUF,同时还把TB8装到发送移位寄存器的第9位上,然后从TXD(P3.1)端口输出数据。 方式2接收:先置REN=1,使串行口为允许接收状态,同时还要将RI清“0”。然后再根据SM2的状态和所接收到的RB8的状态决定此串行口在信息到来后是否置R1=1,并申请中断,通知CPU接收数据。 当SM2=0时,不管RB8为“0”还是为“1”,都置RI=1,此串行接收发送来的信息。 当SM2=1时,且RB8=0,表示在多机通信情况下,接收的信息为“数据帧”,但不是发给本从机的,此时RI不置“1”,因而SBUF中接收的数据帧将丢失。 3) 方式3:11位异步收发。方

21、式3为波特率可变的11位异步通信方式,除了波特率区别之外,其他方式都与方式2相同。 4) 方式0:在方式0下,串行口作同步移位寄存器用,以8位数据为一帧,先发送或接收最低位,每个机器周期发送或接收一位,故其波特率固定为“F/12”。串行数据由RXD(P3.0)端输入或输出,同步移位脉冲由TXD(P3.1)端送出.这种方式常用于扩展I/O口,可以外接74165或者74164. 方式0发送:当1个数据写入发送缓冲器SBUF时,串行口即把8位数据以F/12的波特率从RXD端口送出,发送完后将中断标志TI置“1”。 方式0接收:REN是串行接收允许控制位。REN=0时禁止接收;REN=1时允许接

22、收。当接收到8位数据时,将中断标志RI置“1”。 3.3.2 十字路口交通灯模拟控制器串口设计 本例设计串口若悬河工作于工作方式0,即同步移位寄存器状态 MOV SCON,#00H ;串口工作方式0 传送数据语句如下: MOV DPTR,#SEGTABI;字形码0~9地址 MOV A,DIS-LB ;低位数据 MOVC A,@A+DPTR ;查表 MOV SBUF ,A ;发送数据 DL1:JNB TI,DLI ;查询是否发送完一个字节 CLR TI 3.3.3关于字形编码 根据各管的接线形式,可分成共阴极型和共阳极型。给LED数码管的七个发光二极管加

23、不同的电平,二极管显示不同亮暗的组合就可以形成不同的字形,这种组合称之为字形码。 显示字型 H G F E D C B A 共阴极字形码 共阳极字形码 0 0 0 1 1 1 1 1 1 0X3F 0XC0 1 0 0 0 0 0 1 1 0 0X06 0XF9 2 0 1 0 1 1 0 1 1 0X5B 0XA4 3 0 1 0 0 1 1 1 1 OX4F 0XB0 4 0 1 1 0 0 1 1 0 0X66 0X99 5 0 1 1 0 1

24、 1 0 1 0X6D 0X92 6 0 1 1 1 1 1 0 1 0X7D 0X82 7 0 0 0 0 0 1 1 1 0X07 0XF8 8 0 1 1 1 1 1 1 1 0X7F 0X80 9 0 1 1 1 1 1 1 1 0X6F OX90 四、系统设计及总结 通过这次的课程设计,让我受益匪浅,也让我了解和掌握了一些编程 思想和对I/O口的使用和应用的条件的思考,对单片机的各个管脚功 能的理解和掌握。实现了软件和硬件的有效结合,缺一不

25、可。设计让 我把单片机的理论知识用在实践中,实现了理论和实践相结合,从中 更懂得理论的是实践的基础,实践有能检验理论的正确性,更激发了 我对专业知识的渴求,这些对我以后参加工作或者继续学习都会有很 大的帮助和影响。 一个小小的单片机居然涵盖了 如此之多 输入输出端口不说 还有显 示部分 用到中断 串行口 更使我对单片机的基本原理、单片机应用系统 开发过程,以及在常用编程设计思路技巧的掌握方面都能向前迈了一大步,为 日后成为合格的应用型人才打下良好的基础。 而作为一位学生,在对交通灯的设计中,因知识和经验的不足,只能通过 模仿其它的编程思路,再加上一些自己的思想

26、去完成这个设计,因此在各 个方面都会有一些不足,敬请指正。但我会在以后的学习中逐渐去完善、 巩固我的单片机知识。 附录一 主要材料:印制电路板 1块 晶振6M 1块 普通电阻 3个(由于数码管显示太暗 我才用了360欧姆的) 单片机89S51 1块 按钮3个 ( 我采用了外部中断0 ,1) 电容 3个 (无极性) 发光二极管 6个 (红黄绿各两个) 7805 稳5V的一个

27、 桥堆一个 1000uf和10uf 有极性 插头一个 数码管共阳两个 变压器一个 74LS164两个 74LS240一个 底座一个 附录二 原理图protel文件 附录三 PCB 板型一块 附录四 3D效果图 附录五 主程序流程图 调用第0状态 开 定时器 中断 程序初

28、始化T0 外中断 准备 每个状态大致一样之举了第一状态 红黄绿状态 显示时间 显定时中断时间减一 第一种状态子程序 时间减一到0没有 第二种状态子程序 到 否 返回执行下一状态 第三种状态子程序 第四种状态子程序 循环 附录六 源程序和重要注释说明 注:程序用了伪指令 方便修改时间参数 这个程序比原来的多了 紧急通道

29、 DIS_LB EQU 32H ;时间数据高位 DIS_HB EQU 33H ;时间数据高位 E_PASST EQU 30 ;东西方向绿灯通电时间 N_PASST EQU 20 ;南北方向绿灯通电时间 FLASHT EQU 5 ;黄灯闪烁时间 SECOND_F EQU 20H.0 ;定时1S标志 INT0_F EQU 20H.1 ;外中断0标志位 INT1_F EQU 20H.1 ;外中断1标志位 ORG 0000H AJMP MAIN ORG 0003H ;外中断0

30、入口地址 LJMP INT_0 ;调至外中断0服务程序 ORG 000BH ;T0中断入口 AJMP T0_INT ;调至T0服务程序 ORG 0013H ;外中断1入口地址 LJMP INT_0 ;调至外中断1服务程序 ORG 0100H MAIN: ;初始化程序********************************* MOV SP,#50H ;定时器T0工作于方式1,定时125MS,开起定时器0中断 MOV TMOD,#01

31、MOV TH0,#0BH MOV TL0,#0DCH ;串口工作于工作方式0,即移位寄存器状态 MOV SCON,#00H SETB EA ;开总中断 SETB ET0 ;开定时器中断 SETB IT0 ;外中断0为脉冲触发方式 SETB IT1 ;外中断0为脉冲触发方式 MOV IP,#05 ;外中断0,1为高优先级 SETB EX0 ;开外中断0 SETB EX1 ;开外中断1 ;**************************************************** MOV R2,#0 MOV 20H,#0

32、开始所有灯亮以便检测交通灯的好坏,亮一秒 MOV P1,#0FFH SETB TR0 ;开启定时 JNB SECOND_F,$ CLR SECOND_F ;******************************************************** T_LIGHT:MOV R3,#E_PASST F_STEP:MOV P1,#24H ;东西亮绿灯,南北亮红灯,即P1 MOV A,R3 LCALL H_D ;调用十六-十进制程序 LCALL DIS ;调用显示程序 JNB

33、INT0_F,LP11 AJMP F_STEP LP11:JNB INT1_F,LP12 AJMP T_STEP LP12:JNB SECOND_F,$ ;显示上面数据1S CLR SECOND_F CJNE R3,#0,F_STEP ;变化显示数据 ;**************************** MOV R3,#FLASHT ;东西亮绿灯,南北闪烁黄灯 S_STEP: MOV A,R3 MOV P1,#22H LCALL H_D LCALL DIS JNB I

34、NT0_F,LP21 ;是否第一次出现外中断0,是转东西亮绿灯,南北亮红灯, ;否则检测外中断1信号是否第一次出现 AJMP F_STEP LP21:JNB INT1_F,LP22 AJMP T_STEP ;外中断1第一次出现转东西亮红灯,南北亮绿灯 LP22: JNB SECOND_F,$ ; CLR SECOND_F ;示出现外中断正常显示 CJNE R3,#0,LP1 AJMP T_STEP LP1: MOV P1,#02H MOV A,R3 LCALL H_D LC

35、ALL DIS JNB SECOND_F,$ CLR SECOND_F CJNE R3,#0,S_STEP ;********************************* T_STEP:MOV R3,#N_PASST ;南北亮绿灯,东西亮红灯 LP2: MOV P1,#81H MOV A,R3 LCALL H_D LCALL DIS JNB INT0_F,LP31 AJMP F_STEP LP31:JNB INT1_F,LP32 AJMP T_STEP LP32:JNB SECOND_F,$ CLR SECOND_F CJNE R3,#

36、0,LP2 ;**************************** MOV R3,#FLASHT ;南北亮绿灯,东西闪烁黄灯 FORTH_STEP: MOV P1,#41H MOV A,R3 LCALL H_D LCALL DIS JNB INT0_F,LP41 AJMP F_STEP LP41: JNB INT1_F,LP42 AJMP T_STEP LP42: JNB SECOND_F,$ CLR SECOND_F CJNE R3 ,

37、0,LP3 LJMP T_LIGHT LP3:MOV P1,#40H MOV A,R3 LCALL H_D LCALL DIS JNB SECOND_F,$ CLR SECOND_F CJNE R3 ,#0,FORTH_STEP LJMP T_LIGHT ;*************************** ;十六到十式转换 H_D:MOV B,#10 DIV AB MOV DIS_HB,A JNZ LP5 MOV A,#10 LP5:MOV A,B MOV DIS_LB,A RET ;*************

38、 ;时间显示子程序,显示两位十进制数,发光显示共阳极 DIS:MOV R7,#2 MOV R0,#DIS_LB DL0:MOV A,@R0 ADD A,#0BH MOVC A,@A+PC MOV SBUF,A DL1: JNB TI,DL1 CLR TI INC R0 DJNZ R7,DL0 RET SEGTAB: DB 0C0H,0F9H,0A4H,0B0H,99H,92H,82H,0F8H,80H,90H T0_INT:CLR TR0 MOV TH0,#0BH MOV TL

39、0,#0DCH SETB TR0 INC R2 CJNE R2,#8,RETURN MOV R2,#0 SETB SECOND_F DEC R3 RETI INT_0: CLR EX0 ;关外中断 CLR EX1 JNB INT0_F,INT0LP1 ;检测外中断0信号是否第一次,是则置位 CLR INT0_F ;外中断0信号第二次出现,恢复数据,启动定时器0 MOV R3,40H SETB

40、 TR0 SETB EX1 ;开外中断 AJMP INT0LP2 INT0LP1: CLR TR0 ;外中断0信号第一次出现,关定时器0清1S标志位 CLR SECOND_F SETB INT0_F ;置位外中断0标志位 MOV 40H,R3 ;保存数据 MOV R3,#99 ; 送99S显示 INT0LP2:SETB EX0 ;开外中断0 RETI INT_1: CLR EX1 CLR EX0 JNB INT1_F,INT1LP1 CLR INT1_F MOV R3,40H

41、 SETB TR0 SETB EX0 AJMP INT1LP2 INT1LP1: CLR TR0 CLR SECOND_F SETB INT1_F MOV 40H,R3 MOV R3,#99 INT1LP2:SETB EX1 RETURN: RETI END 致 谢 通过这次的课程设计,让对单片机有了更深一层的了解,也体会 了单片机在现实生活中的重要性。在这次实习中,我能顺利完成 交通灯的设计,要感谢*****学院而我在设计中遇到的很多问题,都 应该感谢****老师在理论和实操方面的帮助,我才能顺利地完成, 也让我学到了很多知识。同时也要对帮助过我的同学表示谢意。在 以后的学习中,定会更加地努力,以更好的成绩去回报学校及老师的栽培。 参考文献 (1)倪志莲.《单片机应用技术》, 北京理工大学出版社 (2) 徐根耀.《电子元器件与电子制作》

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服