单片机课程设计(交通灯程序),单片机课程设计
本作品内容为单片机课程设计(交通灯程序),格式为 doc ,大小 137728 KB ,页数为 6页
('一.设单片机课程设计学院:电气工程学院题目:基于单片机的红绿交通灯起止时间:2013年12月16日至2014年1月8日学生姓名:滕杨专业班级:船本电子01班学号:20109470106指导教师:朱卫华教研室主任:朱卫华院长:赵立宏一.设计计目的:1、通过交通信号灯控制系统的设计,掌握8255A并行口传输数据的方法,以控制发光二极管的亮与灭;2、用8255作为输出口,控制十二个发光二极管熄灭,模拟交通灯管理.3、通过单片机课程设计,熟练掌握汇编语言的编程方法,将理论联系到实践中去,提高我们的动脑和动手的能力;4、完成控制系统的硬件设计、软件设计、仿真调试。二.设计要求:交通信号灯模拟控制系统设计利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,并且用LED数码管显示时间。用8051做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。在一个交通十字路口有一条主干道(东西方向),一条从干道(南北方向),主干道的通行时间比从干道通行时间长,四个路口安装红,黄,蓝,灯各一盏;1、设计一个十字路口的交通灯控制电路,要求南北方向(主干道)车道和东西方向(支干道)车道两条交叉道路上的车辆交替运行,时间可设置修改。2、在绿灯转为红灯时,要求黄灯先亮,才能变换运行车道3、黄灯亮时,要求每秒闪亮一次。4、东西方向、南北方向车道除了有红、黄、绿灯指示外,每一种灯亮的时间都用显示器进行显示(采用计时的方法)。5、同步设置人行横道红、绿灯指示。三.设计任务和内容:任务:设计一个能够控制十二盏交通信号灯的模拟系统。并且要求交通信号灯按照交通规则的模试来运行。内容:因为本课程设计是交通灯的控制设计,所以要了解实际交通灯的变化情况和规律。假设一个十字路口为东西南北走向。初始状态0为东西红灯,南北红灯。然后转状态1东西红灯,南北绿灯通车,。过一段时间转状态2南北绿灯灭,黄灯闪烁几次,东西仍然红灯。再转状态3,东西绿灯通车,南北红灯。过一段时间转状态4,东西绿灯灭,闪几次黄灯,南北仍然红灯。最后循环至状态1。四.控制系统的总体要求:1.执行程序时,初始态为四个路口的红灯全亮之后;2.东西路口的绿灯亮,南北路口的红灯亮,东西路口方向通车;3.延时一段时间后,东西路口的绿灯熄灭,黄灯开始延时并且开始闪烁,闪烁5次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北路口方向开始通车;4.延时一段时间之后,南北路口的绿灯熄灭,黄灯开始延时并且开始闪烁,闪烁3次之后,再切换到东西路口方向;之后重复2到4过程。。。。。。。六.交通信号灯控制程序代码:(汇编语言版本)编程提示:(1)通过8255控制发光二极管PB3PB0PA5PA2对应黄灯,PB1PA6PA3PA0对应红灯,PB2PA7PA4PA1对应绿灯,以模拟交通灯的管理.(2)程序中设定好8255A的工作方式,三个端口均工作在方式0处于输出状态。(3)各发光二极管共阳极,使其点亮应使对应的端口输出低电平ORG0BB0HJOD0:MOVSP,#60HMOVDPTR,#0FF2BH;指向8255控制寄存器地址MOVA,#88H;设置控制字(方式字送A、B、C口)MOVX@DPTR,A;8255初始化,写入控制字MOVDPTR,#0FF28H;指向PA口地址MOVA,#0B6H;A的内容为10110110MOVX@DPTR,A;从PA口输出,即PA6、PA3、PA0分别为0,表明与这些端口相联的(发光二极管)红灯点亮INCDPTR;指向PB口地址MOVA,#0DH;A的内容为00001101MOVX@DPTR,A;从PB口输出,即PB1为0,表明与该端口相联的(发光二极管)红灯点亮,因此4个红灯MOVR2,#25H;延时LCALLDELYJOD3:MOVDPTR,#0FF28HMOVA,#75HMOVX@DPTR,A;PA口为01110101,即与PA7东绿、PA3北红、PA1西绿相联的灯INCDPTRMOVA,#0DH;A为00001101MOVX@DPTR,A;PB口的PB1南红灯亮,因此东西绿灯亮,南北红灯亮MOVR2,#55HLCALLDELY;延时MOVR7,#05H;闪烁次数JOD1:MOVDPTR,#0FF28HMOVA,#0F3HMOVX@DPTR,A;PA为11110011,即PA3北红、PA2西黄灯亮INCDPTRMOVA,#0CHMOVX@DPTR,A;PB为00001100,即PB1南红、PB0东黄亮,因此东西黄灯亮,南北红灯亮MOVR2,#20HLCALLDELY;延时MOVDPTR,#0FF28HMOVA,#0F7HMOVX@DPTR,A;PA为11110111,即PA3北红亮INCDPTRMOVA,#0DHMOVX@DPTR,A;PB为00001101,即PB1南红亮,因此南北红灯亮,此时黄灯灭了MOVR2,#20HLCALLDELY;延时DJNZR7,JOD1;闪烁次数未到继续MOVDPTR,#0FF28HMOVA,#0AEHMOVX@DPTR,AINCDPTRMOVA,#0BHMOVX@DPTR,A;东西红灯亮,南北绿灯亮MOVR2,#55HLCALLDELY;延时MOVR7,#05H;闪烁次数JOD2:MOVDPTR,#0FF28HMOVA,#9EHMOVX@DPTR,AINCDPTRMOVA,#07HMOVX@DPTR,A;东西红灯亮,南北黄灯亮MOVR2,#20HLCALLDELY;延时MOVDPTR,#0FF28HMOVA,#0BEHMOVX@DPTR,AINCDPTRMOVA,#0FHMOVX@DPTR,A;东西红灯亮,南北黄灯灭了MOVR2,#20HLCALLDELY;延时DJNZR7,JOD2;闪烁次数未到继续LJMPJOD3;循环ORG0C30HDELY:PUSH02HDEL2:PUSH02HDEL3:PUSH02H;延时DEL4:DJNZR2,DEL4POP02HDJNZR2,DEL3POP02HDJNZR2,DEL2POP02HDJNZR2,DELYRETEND运行实验程序编译程序时,在系统“P.”状态后,运行程序时L1~L12发光二极管模拟交通灯显示。八.程序运行后状态表:其中0代表灯灭,1代表灯亮。状态南东北西黄绿红黄绿红黄绿红黄绿红PB3PB2PB1PB0PA7PA6PA5PA4PA3PA2PA1PA0开始4个红灯亮001001011001该四个工作状态按此次序将南北红灯亮,东西绿灯亮001010001010南北红灯亮,东西黄灯亮001100001100重复出现南北绿灯亮,东西红灯亮010001010001南北黄灯亮,东西红灯亮100001100001九.调试与检测:1.硬件检测:硬件检测又分为,静态检测和动态检测,静态检测为:第一步:目测,检查外部的各种元件或则电路是否有断点;第二步:用万用表测试。先用万用表复核目测中有疑问的连接点,再检测各种电源线与地线之间是否有短路现象;第三步:加电检测。给板加电,检测所有的插座或是器件的电源端是否符合要求的值;第四步:是联机检查。因为只有用单片机开发系统才能完成对用户系统的调试。动态检测为:动态检测是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。动态调试的一般方法是由近及远、由分到合。由分到合是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件无关的器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。当各块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及各电路间可能存在的相互联系进行调试。由分到合的调试既告完成。由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。调试时,仍采用去掉无关元件的方法,逐层调试下去,就会定位故障元件了。2.软件调试:软件调试是通过对拥护程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。程序后,编辑,查看程序是否有逻辑的错误。元器件清单共阳数码管2个89C52单片机1个电阻220欧14个电阻10K1个10uF电容1个30P电容2个12M晶振1个USB口1个LED灯12个十.课程设计体会:通过一个星期的实训,我对单片机有了更深的体会。我了解和掌握了一些编程思想和对I/O口的使用。这次实训通过单片机的I/O口来控制交通灯。在编程的过程中,可以说是比较顺利,只是摸仿其他的编程思路,在加上一些自己的思想来满足这次实训的任务。通过这次的实训,对单片机的I/O口的使用的条件有更深的理解,对单片机的各个管脚功能的理解也加深了,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。这次的课程设计让我把单片机的理论知识用在实践中,实现了理论和实践相结合,从中更懂得理论的是实践的基础,实践有能检验理论的正确性,让我受誉非浅,对我以后参加工作或者继续学习将会产生巨大的帮助和影响。',)
提供单片机课程设计(交通灯程序),单片机课程设计会员下载,编号:1700815230,格式为 docx,文件大小为6页,请使用软件:wps,office word 进行编辑,PPT模板中文字,图片,动画效果均可修改,PPT模板下载后图片无水印,更多精品PPT素材下载尽在某某PPT网。所有作品均是用户自行上传分享并拥有版权或使用权,仅供网友学习交流,未经上传用户书面授权,请勿作他用。若您的权利被侵害,请联系963098962@qq.com进行删除处理。