单片机.docx
- 文档编号:23458118
- 上传时间:2023-05-17
- 格式:DOCX
- 页数:11
- 大小:94.04KB
单片机.docx
《单片机.docx》由会员分享,可在线阅读,更多相关《单片机.docx(11页珍藏版)》请在冰豆网上搜索。
单片机
单片机课程报告设计
题目:
交通指示灯系统设计
班级:
物联网1班
学号:
1203150127
姓名:
岳玲
指导老师:
张华
2014年 11 月 23 日
目录
一、设计要求
二、设计内容
三、交通信号灯模拟控制系统设计程序流程图
四、交通信号灯模拟控制系统原理图
五、交通信号灯模拟控制系统主程序
六、运行步骤
七、检测与调试
八、总结
1、设计要求
交通信号灯模拟控制系统设计利用单片机的定时器定时,令十字路口的红绿灯交替点亮和熄灭,并且用LED数码管显示时间。
用8051做输出口,控制十二个发光二极管燃灭,模拟交通灯管理。
2、设计内容
因为本课程设计是交通灯的控制设计,所以要了解实际交通灯的变化情况和规律。
假设一个十字路口为东西南北走向。
初始状态0为东西红灯,南北红灯。
然后转状态1东西红灯,南北绿灯通车,。
过一段时间转状态2南北绿灯灭,黄灯亮5秒,东西仍然红灯。
再转状态3,东西绿灯通车,南北红灯。
过一段时间转状态4,东西绿灯灭,黄灯亮5秒,南北仍然红灯。
最后循环至状态1。
注意:
.双色LED是由一个红色LED管芯和一个绿色LED管芯封装在一起,公用负端。
当红色正端加高电平,绿色正端加低电平时,红灯亮;红色正端加低电平,绿色正端加高电平时,绿灯亮;两端都加高电平时,黄灯亮。
三、交通信号灯模拟控制系统设计程序流程图
开始
↓
8051初使化
↓
四个路口红灯亮
↓
东西红灯亮,南北绿灯亮,延时
↓
东西红灯亮,南北黄灯亮5秒,延时
↓
东西绿灯亮,南北红灯亮,延时
↓
东西黄灯亮5秒,南北红灯亮,延时
四、交通信号灯模拟控制系统主程序
ORG0000H
SJMPA3
ORG0030H
A3:
MOVSP,#60H;设栈指针初值
MOVA,#24H
MOVP1,A
SETBP3.2
CLRP3.3
CLRP3.4
SETBP3.5;全部红灯亮
MOVR4,#00H;显示0秒
MOVR7,#00H;显示0秒
MOVR2,#03H
LCALLXI;调用子程序
A2:
MOVA,#0CH
MOVP1,A
SETBP3.2
SETBP3.3
CLRP3.4
CLRP3.5;东西红灯,南北绿灯
MOVR4,#14H;显示20秒
LOOP2:
MOVR2,#03H
LCALLXI
DJNZR4,LOOP2;判断20秒显示时间到否
MOVR2,#03H
LCALLXI
LOOP8:
MOVR2,#03H;南北黄灯闪3次
LCALLXI
MOVR4,#05H;设南北黄灯亮长显示5秒
SETBP3.2
CLRP3.3
A1:
MOVA,#14H
MOVP1,A
SETBP3.4
CLRP3.5;东西红灯,南北黄灯
MOVR2,#01H;定时
LCALLDELAY;调用延时子程序
MOVA,#04H
MOVP1,A
CLRP3.4
CLRP3.5;东西红灯,南北不亮即意思要南北黄灯闪烁
MOVR2,#01H;定时
LCALLDELAY
DJNZR4,LOOP8;判断南北黄灯闪烁,显示5秒到否?
MOVA,#61H
MOVP1,A
CLRP3.2
CLRP3.3
CLRP3.4
SETBP3.5;东西绿灯,南北红灯
MOVR4,#14H;显示20秒
LOOP3:
MOVR2,#03H
LCALLXI
DJNZR4,LOOP3;判断20秒显示时间到否
MOVR7,#05H;设东西黄灯亮长显示5秒
SETBP3.5
A0:
MOVA,#0A2H
MOVP1,A
CLRP3.2
CLRP3.3
CLRP3.4;东西黄灯,南北红灯
MOVR2,#01H;定时
LCALLDELAY
MOVA,#20H;
MOVP1,A
CLRP3.2
CLRP3.3
CLRP3.4;南北红灯,东西不亮即意思要东西黄灯闪烁
MOVR2,#01H;定时
LCALLDELAY
DJNZR7,A0;判断东西黄灯闪烁,显示5秒到否?
LJMPA2;循环回状态1,即东西红灯,南北黄灯
DELAY:
PUSH2
PUSH1
PUSH0;进栈
DELAY1:
MOV1,#00H
DELAY2:
MOV0,#0B2H
DJNZ0,$;判断是否运行完0B2H
DJNZ1,DELAY2
DJNZ2,DELAY1
POP0
POP1
POP2;出栈
DJNZR2,DELAY;判断R2是否运行完
RET;返回主程序
XI:
MOVA,R4
MOVB,#10
DIVAB
MOVR6,A
MOVDPTR,#TAB
MOVA,B
MOVCA,@A+DPTR
MOVSBUF,A
MOVR7,#0FH
H55S:
DJNZR7,H55S
MOVA,R6
MOVCA,@A+DPTR
MOVSBUF,A
MOVR7,#0FH
H55S1:
DJNZR7,H55S1
LCALLDELAY
RET
TAB:
DB0fch,60h,0dah,0f2h,66h,0b6h,0beh,0e0h
DB0feh,0f6h,0eeh,3eh,9ch,7ah,9eh,8eh
END
五、交通信号灯模拟控制系统原理图
设计的连线图提示:
(1)完整的DVCC实验箱面板
(2)硬件电路连接说明
六、运行步骤
①8051P1.0—P1.7、P3.2—P3.5依次接发光二极管L1—L12。
②将BUS3区P3.0用连到数码管显示区DATA插孔。
③将BUS3区P3.1用连到数码管显示区CLK插孔。
④单脉冲发生/SP插孔连到数码管显示区CLR插孔。
⑤仿真实验系统在"P....."状态下。
⑥以连续方式从0000H开始执行程序,初始态为四个路口的红灯全亮之后,南北路口的绿灯亮东西路口的红灯亮,南北路口方向通车。
延时一段时间后南北路口的绿灯熄灭,黄灯开始闪耀。
闪耀若干次后,南北路口红灯亮,而同时东西路口的绿灯亮,东西路口方向开始通车,延时一段时间后,东西路口的绿灯熄灭,黄灯开始闪耀。
闪耀若干次后,再切换到南北路口方向,之后重复以上过程。
七、检测与调试
1、硬件调试:
硬件调试是利用开发系统、基本测试仪器(万用表、示波器等),检查用户系统硬件中存在的故障。
硬件调试可分为静态调试与动态调试两步进行。
静态调试
静态调试是在用户系统未工作时的一种硬件检测。
第一步:
目测。
检查外部的各种元件或者是电路是否有断点。
第二步:
用万用表测试。
先用万用表复核目测中有疑问的连接点,再检测各种电源线与地线之间是否有短路现象。
第三步:
加电检测。
给板加电,检测所有的插座或是器件的电源端是否符合要求的值
第四步:
是联机检查。
因为只有用单片机开发系统才能完成对用户系统的调试。
动态调试
动态调试是在用户系统工作的情况下发现和排除用户系统硬件中存在的器件内部故障、器件连接逻辑错误等的一种硬件检查。
动态调试的一般方法是由近及远、由分到合。
由分到合是指首先按逻辑功能将用户系统硬件电路分为若干块,当调试电路时,与该元件无关的器件全部从用户系统中去掉,这样可以将故障范围限定在某个局部的电路上。
当各块电路无故障后,将各电路逐块加入系统中,在对各块电路功能及各电路间可能存在的相互联系进行调试。
由分到合的调试既告完成。
由近及远是将信号流经的各器件按照距离单片机的逻辑距离进行由近及远的分层,然后分层调试。
调试时,仍采用去掉无关元件的方法,逐层调试下去,就会定位故障元件了。
2、软件调试:
软件调试是通过对拥护程序的汇编、连接、执行来发现程序中存在的语法错误与逻辑错误并加以排除纠正的过程。
程序后,编辑,查看程序是否有逻辑的错误。
八、总结
通过一个星期的实训,我对单片机有了更深的体会。
我了解和掌握了一些编程思想和对I/O口的使用。
这次实训通过单片机的I/O口来控制交通灯。
在编程的过程中,可以说是比较顺利,只是摸仿其他的编程思路,在加上一些自己的思想来满足这次实训的任务。
通过这次的实训,对单片机的I/O口的使用的条件有更深的理解,对单片机的各个管脚功能的理解也加深了,以及在常用编程设计思路技巧(特别是汇编语言)的掌握方面都能向前迈了一大步。
这次的课程设计让我把单片机的理论知识用在实践中,实现了理论和实践相结合,从中更懂得理论的是实践的基础,实践有能检验理论的正确性,让我受誉非浅,对我以后参加工作或者继续学习将会产生巨大的帮助和影响。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 单片机