欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载  

    交通灯MicrosoftWord文档.doc

    • 资源ID:5236948       资源大小:173.02KB        全文页数:12页
    • 资源格式: DOC        下载积分:10金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要10金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    交通灯MicrosoftWord文档.doc

    一、 设计要求·············································2二、 设计方案·············································2三、 芯片简介·············································2四、电原理图··············································3五、设计流程图···········································5六、汇编语言程序·························································6七、心得体会·············································11八、参考文献··············································11一、任务要求:设计并制作一个城市交道口交通灯控制糸统满足:1、时间方向控制要求白天东西绿灯亮,黄灯闪亮3次红灯亮南北红灯亮绿灯亮,黄灯闪亮3次晚上 东西黄灯闪亮南北黄灯闪亮2、每个方向采用两位共阴极LED,同时显示红绿灯亮时间(采用倒计时);3、黄灯亮周期为两秒(亮1秒,灭1秒)4、通过键盘预置红绿灯亮的时间099秒(采用增量键盘)5显示驱动器采用MC14543或CD14513;二、 设计方案在南北东西四个方向各有红、绿、黄三盏交通信号灯,初始倒记时间初值分别为30S,25S和5S,;将、和、路口(其中1、3是南北方向,2、4是东西方向)的通行或禁止通行的时间以倒计数的方式显示在位LED数码管显示器上。其中从左到右方向上的第一二块数码管显示的是黄灯的倒记时时间变化,第三四块数码管显示的是红灯的倒记时时间变化,第五六块数码管显示的是绿灯的倒记时时间变化。三种信号灯的显示顺序是 红®绿®黄,其中红灯由30秒开始倒记时,当倒记时到5秒时,另一方向的绿灯变为黄灯显示,绿灯的倒计时是和红灯同步的,绿灯的保持时间是25秒,当绿灯LED变化数为00时,代替绿灯显示的黄灯和另一方向剩下的5秒红灯同步倒计时,当红灯和黄灯的LED管显示数都为00时,两个方向的红绿信号灯显示互换,红绿黄三个信号灯的LED显示值被重新置值。三、 芯片简介ATMEL公司生产的AT89C52单片机它是硬件电路的核心部分,时钟电路晶振使用12MHz,复位电路采取按键复位方式。它与8051系列单片机全兼容,但其内部带有4KB的FLASH ROM,设计时无需外接程序存储器。AT89C52引脚图    AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央 处理器和Flash存储单元,功能强大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。   AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2 个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的 Flash存储器可有效地降低开发成本。          AT89C52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。  主要功能特性:  · 兼容MCS51指令系统        · 8k可反复擦写(>1000次)Flash ROM  · 32个双向I/O口        · 256x8bit内部RAM · 3个16位可编程定时/计数器中断      · 时钟频率0-24MHz · 2个串行中断        · 可编程UART串行通道 · 2 个外部中断源        · 共6个中断源 · 2个读写中断口线        · 3级加密位 · 低功耗空闲和掉电模式        · 软件设置睡眠和唤醒功能四、电原理图图五、设计流程图1、主程序框图 开始程序初始化显示提示信息写控制字,使PB口为输入,工作在方式0写控制字,三个端口均工作在方式0,且为输出端口1,3路口绿灯亮,同时2,4路口红灯亮,FLAG=01开中断延时30秒。 N返回 有按键吗? 如果是的话,则进行红变绿灯的过程如果是的话,则进行绿灯变黄灯的过程如果是的话,则进行黄灯变红灯的过程保户现场判断flag=01Flag=02判断flag=02Flag=03判断flag=03Flag=01发中断结束命令恢复现场中断返回调用LED动态显示程序六、 汇编语言程序;程序实现功能;西南北路口直行与转弯交替通行,数码管显示直行通行倒计时,红绿黄灯显示包括人行道在内的道路交通状态。;某一方向道路拥挤时,可以人工控制调节东西南北方向通行时间。;工作寄存器及存储单元分配;1.工作寄存器;R2设置为定时器定时中断次数,R6、R7用于延时程序中的寄存器;2.片内存储单元;30H、31H作为两组数码管显示数据存储单元;32H、33H作为交通灯初始状态存储单元;40H、41H作为交通灯显示数据存储单元.3.标志位;00H:南北通行标志位 ; 01H:东西通行标志位; ;-SNF EQU 00H ;南北通行标志位EWF EQU 01H ;东西通行标志位ORG 0000HLJMP MAIN ;上电转主程序ORG 000BH ;定时中断入口LJMP DSZD ORG 0003H ;紧急中断入口LJMP URZDORG 0030H MAIN: LCALL INIT ;调用初始化子程序LOOP: LCALL DIS ;循环执行显示子程序 AJMP LOOP;/初始化程序INIT: SETB SNF SETB EWF SETB URF MOV R2,#20 ;定时器中断20次为1s MOV TMOD,#01H ;初始化定时器 MOV TL0,#0B0H MOV TH0,#3CH SETB EA ;开定时中断与紧急中断 SETB ET0 SETB TR0 SETB EX0 SETB IT0 ;设置中断程控方式 MOV DPTR,#TAB ;数值首地址放入DPTR中 MOV 40H,#40 ;东南西北通行时间设置 MOV 41H,#40 MOV 30H,#40 ;通行时间初始化 MOV 31H,#60 MOV P0,#4CH ;初始化时南北通行并把交通灯状态分别放在32H和33H中 MOV 32H,#4CH MOV P2,#15H MOV 33H,#15H RET;/显示子程序DIS: MOV P3,#0DFH ;选中南北方向的十位数码管 MOV A,30H ;把显示数据送人数码管显示 MOV B,#10 DIV AB MOVC A,A+DPTR MOV P1,A ; LCALL D1MS MOV P3,#0EFH ;选中南北方向的个位数码管 MOV A,B ;送入数码管显示 MOVC A,A+DPTR MOV P1,A LCALL D1MS MOV P3,#7FH ;选中第东西方向的十位数码管 MOV A,31H ;送入数码管显示 MOV B,#10 DIV AB MOVC A,A+DPTR MOV P1,A LCALL D1MS MOV P3,#0BFH ;选中第东西方向的个位数码管 MOV A,B MOVC A,A+DPTR MOV P1,A LCALL D1MS SETB P3.0 SETB P3.1 JNB P3.0,DIS_S ;查询是否第一个按键按下 JNB P3.1,DIS_E ;查询是否第二个按键按下 AJMP DIS_R ;没有键按下则返回DIS_S:LCALL D5MS ;按键去抖 JNB P3.0,DIS_SN AJMP DIS_R DIS_SN:MOV 40H,#50 ;对通行时间从新分配,南北通行时间加长 MOV 41H,#30 AJMP DIS_RDIS_E:LCALL D5MS ;按键去抖 JNB P3.1,DIS_EW AJMP DIS_RDIS_EW:MOV 40H,#30 ;东西通行时间加长 MOV 41H,#50DIS_R:RET ;/定时中断处理程序DS_C: LJMP DS_R ;接力跳转DSZD: PUSH ACC ;保护现场 PUSH PSW CLR TR0 ;关定时器及中断标志位并重新赋值 CLR TF0 MOV TL0,#0B0H MOV TH0,#3CH DJNZ R2,DS_C ;判断1m时间是否到达 MOV R2,#20 ;到达重新赋值 DEC 30H ;南北方向通行时间减一 MOV A,30H ;把减一后的时间送入显示存储单元;南北通行到达最后4秒时黄灯闪烁DS_10:CJNE A,#4,DS_11 ;如果通行时间剩余4秒 JNB SNF,DS_11 ;判断是否是南北通行 MOV P0,#8AH MOV 32H, #8AH ;把交通灯状态存入存储单元(后面类似)DS_11:CJNE A,#3,DS_12 ;不是剩余3秒,返回 JNB SNF,DS_12 ;不是南北通行时间,返回 MOV P0,#88H MOV 32H, #88HDS_12:CJNE A,#2,DS_13 JNB SNF,DS_13 MOV P0,#8AH MOV 32H, #8AH DS_13:CJNE A,#1,DS_14 JNB SNF,DS_14 MOV P0,#88H MOV 32H, #88H;-DS_14:JNZ DS_NE ;通行时间没有结束转向改变东西方向的数码管 CPL SNF ;如果通行时间结束则对标志位取反 JNB SNF,DS_1 ;判断是否南北通行 MOV 30H,40H ;是,点亮相应的交通灯 MOV P0,#4CH MOV 32H,#4CH ;存储交通灯状态 MOV P2,#15H MOV 33H, #15H ;存储交通灯状态DS_NE:DEC 31H ;东西方向通行时间减一 MOV A,31H ;把通行剩余时间送入显示存储单元;东西方向通行时间剩余4秒钟黄灯闪烁(程序注释与南北方向类似 略)DS_20:CJNE A,#4,DS_21 JB EWF,DS_21 MOV P0,#51H MOV 32H, #51HDS_21:CJNE A,#3,DS_22 JB EWF,DS_22 MOV P0,#41H MOV 32H, #41HDS_22:CJNE A,#2,DS_23 JB EWF,DS_23 MOV P0,#51H MOV 32H, #51HDS_23:CJNE A,#1,DS_24 JB EWF,DS_24 MOV P0,#41H MOV 32H, #41H;-DS_24:JNZ DS_R ;东西方向时间没有结束,返回 CPL EWF ;对通行状态取反 JNB EWF,DS_2 ;东西方向通行时间到来,跳转 MOV 31H,#80 ;东西方向通行结束,重新显示时间 MOV P0,#89H ;点亮相应的交通灯 MOV 32H, #89H MOV P2,#29H MOV 33H, #29H AJMP DS_R DS_1: MOV 30H,#80 ;南北通行时间结束,重新对显示存储单元赋值 MOV P0,#89H ;执行转弯状态1 MOV 32H, #89H MOV P2,#26H MOV 33H, #26H AJMP DS_NE DS_2: MOV 31H,41H ;东西方向开始通行,赋值予显示存储单元 MOV P0,#61H ;点亮相应的交通灯 MOV 32H, #61H MOV P2,#15H MOV 33H, #15HDS_R: SETB TR0 POP PSW ;恢复现场 POP ACC RETI;/查表指令TAB: DB 3FH, 06H, 5BH, 4FH, 66H, 6DH DB 7DH, 07H, 7FH, 6FH;/延时5ms与1msD5MS: MOV R7,#5D1MS: MOV R7,#10 MOV R6,#50 L1: DJNZ R6,$ DJNZ R7,L1 RET END七、心得体会经过两三个星期的努力,翻阅大量的资料和编程调试,最终得到了自我比较满意的运行结果,可能程序和仿真还有些许瑕疵,但是得到了所要求的功能以及良好的显示效果,所以,实验是比较成功的。这次的大工作量和编程的经历给了我很多的启示,有编程失败的沮丧和调试成功一霎那的欣喜若狂,在这次汗水和欣喜的夹杂背后,是我对单片机的另一个认识,编程是很重要的一方面。对于交通灯这个题目,由于以前学单片机这个课程时,做过类似相关的实验,觉得这个比较简单而且做出的东西也比较直观,在确定题目之后,查阅了大量的资料,初步完成了电路设计方案。接下来就是程序的设计了,虽然感觉交通灯程序没什么难的,就是数码管倒计时显示加几个闪烁的二极管就完事,但是也许是起初想的太简单,设计时到了细节处,也出了不少问题,而且很难被检查出来,但是最后经过我们的不断努力,还是写出来正确的代码。最后对于LED管和发光管的跳变主要是靠程序当中的倒计时中断程序,以及程序中定义的EN程序来实现的,在实验中出现的问题有LED管计时太慢或太快,或者当计数到某一值时就不再到计数,闪烁的厉害以至看不清楚,红绿黄等的闪灭顺序出现问题,本应是红灯灭后闪绿灯,但出现黄灯,经调试最终发现程序中的循环出现问题。通过本次课程设计让我了解了最基本的交通红绿灯的执行顺序与过程。本次实践让我了解到各芯片的大致编程顺序一切开头最难,当凿开了个点,就慢慢能融会贯通了,因此得出的结论是只有通过课程设计才能让我真正了解到接口技术。八、参考文献1 徐维祥.单片微型机原理及应用 大连理工大学出版社,2006.122 胡汉才.单片机原理与接口技术M.北京: 清华大学大学出版社,2004.1-505.3 闫胜利.Altium Designer 6.中文版使用教程电子工业出版社2007.64MCS-51系列单片机系统及其应用(第二版) 蔡美琴,张为民等主编,2009.15.单片机原理及应用实验指导书 浙江海洋学院机电工程学院,2008.126.数字电子技术基础 清华大学电子学教研室编,阎石主编,2008.512

    注意事项

    本文(交通灯MicrosoftWord文档.doc)为本站会员(sccc)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开