现代交通灯设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
本设计基于单片机进行开发:
1)用P1口对7SEG-MPX2-CA-BLUE的段选;
2)用P3.0和P3.1实现对7SEG-MPX2-CA-BLUE;
3)由于单片机自带接口的紧缺,因此需要扩展接口,用P0和P1口接8255A对单片机扩展输出口,8255PA和8255PB分别接MATRIX-8x8-GREEN的上下八个输入端,实现动态扫描箭头显示,8255PC的第三位连接74LS138,产生时能信号,对三个MATRIX-8x8-GREEN进行片选,8255PC7可以在接口很紧缺的情况下,控制在中断条件下红灯的点亮,因为此时不进行片选。
temp=10;
}
shi=temp/10;
ge=temp%10;
if(led_5==0)
{
y=0;
}
}
}
3.2.4紧急情况中断函数设计:
void inter1() interrupt 0
{
delay(1000);
k=PA8255;
m=PC8255;
while(x==1) //目的是在第二次按下按钮时跳出中断
{
PC8255=0xff;
PA8255=0x00;
P1=0xff;
if(led_4==0)
{
delay(100);
if(led_4==0)
{
x=0;
while(led_4==0);
}
}
}
PA8255=k;
PC8255=m;
}
4
4.1各种情况下显示结果
当在proteus里面按下开始仿真按钮时,系统开始仿真,红灯和黄灯都不亮,显示十秒倒计时,倒计时满了切换箭头的方向,依次方向循环往复,直到等待中断的到来,图8,图9,图10为各方向行驶时的显示
Keyword;modern traffic lights
1
1.1.设计目的
单片机课程设计作为独立的教学环节,是集中实践性环节系列之一,是学习完《单片机原理与接口技术》课程后,并在相关课程设计基础上进行的一次综合性练习。
单片机课程设计过程中,学生通过查阅资料,接口设计,程序设计,安装调试等环节,完成一个基于MCS-51系列单片机,涉及多种资源应用,并且有综合功能的小应用系统设计。使学生不但能够将课堂上学到的理论知识与实际应用结合起来,而且能够对电子电路,电子元器件等方面的知识进一步加深认识,同时在软件编程,调试,相关仪器设备和相关软件的使用技能等方面得到较全面的锻炼和提高。使学生增进对单片机的感性认识,加深对单片机理论方面的理解,加深单片机的内部功能模块的应用,如定时器/计数器,中断,片内外存储器,I/O接口,串行口等。使学生了解和掌握单片机应用系统的软硬件设计过程,方法及实现,强化单片机应用电路的设计与分析能力。不仅提高学生在单片机应用方面的实践技能和科学作风,培育学生综合运用理论知识解决问题的能力,还提高了我们在论文撰写方面的能力,为以后的毕业论文的奠定一定的基础。
2.2.3控制电路:
NIGHT按钮和单片机的P3.3口相连,按钮按下,跳入中断,黄灯闪烁,进入
夜间行车状态,当NIGHT再次按下时,跳出中断,黄灯熄灭,进入日间行车状态,EMERGENCY按钮和单片机的P3.2口相连,按下时,跳入中断,红灯点亮,倒计时,和箭头显示都关闭,进入紧急状态,当红灯再次按下时,跳出中断,关闭红灯,继续中断前的工作状态。
led_1=0;
led_2=1;
P1=table[ge];
delay(15);
arrow_1();//箭头函数2
}
PA8255=0xff;
PB8255=0xff;
temp--;
if(temp+1==0)
{
if(PC8255<2)
{
PC8255=PC8255+1;
}
else
{
PC8255=0x00;
}
图6时钟电路模块
3
3.1程序框图
系统软件由主程序和子程序组成,主程序主要是对程序的初始化,子程序包括定时中断,延时,点阵显示,倒计时等各个模块,图7是主要的程序框图。
3.2各模块程序设计
3.2.1点阵箭头显示:
void arrow() //箭头函数
{
for(arrow_j=0;arrow_j<4;arrow_j++) //扫描显示
图5复位电路模块
2.2.5时钟电路
时钟电路在单片机系统中起着非常重要的作用,是保证系统正常工作的基础。在一个单片机应用系统中,时钟是保障系统正常工作的基准振荡定时信号,主要由晶振和外围电路组成,晶振频率的大小决定了单片机系统工作的快慢。为达到振荡周期是12MHZ的要求,这里要采用12MHZ的晶振,另外有两个22P的电容,两晶振引脚分别连到XTAL1和XTAL2振荡脉冲输入引脚。具体连接如图6所示。
4)P3.2控制外部中断0,实现紧急情况时红灯的亮灭;
5)P3.3控制外部中断1,实现夜间行驶时黄灯的闪烁和熄灭;
6)P3.4控制定时器0,实现倒计时
7)P3.5控制红灯的点亮与熄灭。
2.2硬件设计
2.2.1点阵显示电路电路
通过8255A的PA口和PB口输出,使点阵扫描显示,然而MATRIX-8x8-GREEN缺少位选信号,所以无法对其进行片选,我巧妙的用了三块74LS373对其上下进行连接,通过PC口对锁存器的片选从而对MATRIX-8x8-GREEN片选,除此之外,还能使扫描更稳定。
关键词:现代交通灯;
Introduction
With the development of modern transport, more and more private cars come into the common people’s home, so the load of road become more and more serious, the frequent traffic jams in major cities happened everyday, you can walk faster than driving,whichhas become an indisputable fact, but the traditional traffic light only have red, green, yellow, which not only can’t convenient the driver to see road conditions under high tension, thus it greatly increase the possibility of traffic accident, so we need to invite a traffic light with the countdown function, and can display the traffic directions of traffic lights, in order to design a modern traffic lights whitch can match the demand of need, this design based on single chip microcomputer 89C51, and extension interface with 8255A to show turn left, go straight, turn right three passage of the green, with the countdown function, when driving at night , all direction yellow lights flashing,,when night driving button press at the second time,the display will returns to normal, when press the emergency button, all direction turns red, when driving at night button a second time, back to normal, and can modify the countdown time by management personnel.
{
led_3=1;
for (i_inter=0; i_inter<150;i_inter++)//倒计时和点阵程序
{
P1=0xff;//不是整体赋值,所以先屏蔽原值
led_1=1;
led_2=0;
P1=table[shi];
delay(15);
if(i_inter==75)
led_3=0;
P1=0xff;
2.பைடு நூலகம்.4复位电路
复位是单片微机的初始化操作,其主要功能是把PC初始化为0000H,使单片微机从0000H单元开始执行程序。除进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,可以按复位键以重新启动,也可以通过监视定时器来强迫复位。RST引脚是复位信号的输入端。复位电路在这里采用的是上电+按钮复位电路形式,具体连接电路如图复位是单片微机的初始化操作,其主要功能是把PC初始化为0000H,使单片微机从0000H单元开始执行程序。除进入系统的正常初始化之外,当由于程序运行出错或操作错误使系统处于死锁状态时,为摆脱困境,可以按复位键以重新启动,也可以通过监视定时器来强迫复位。RST引脚是复位信号的输入端。复位电路在这里采用的是上电+按钮复位电路形式,具体连接电路如图5所示:
1.2.设计要求
(1)设计一款带左转、直行、右转三种通行绿灯,参见实物效果图。
(2)带紧急按钮功能,当紧急按钮按下时,所有方向均亮红灯。
(3)夜间运行模式按钮,按下时,所有方向黄灯闪烁。
(4)可显示倒计时功能(此处我采用倒计时十秒显示)。
(5)可由管理人员修改红绿灯等待间隔时间。
2
2.1总体设计方案
{
num=0;
temp--;
if(temp+1==0)
{
if(PC8255<2)
{
PC8255=PC8255+1;
}
else
{
PC8255=0x00;
}
temp=10;
}
}
}
3.2.3夜间行驶中断函数设计:
void inter0( ) interrupt 2//外部中断1
{
delay(2000);
while(y==1)//为了第二次按下按钮跳出中断
2.2.2倒计时电路
倒计时电路如图3所示,十字路口交通灯一般倒计时在六十秒之内,所以只采用两段共阳极数码7SEG-MPX2-CA-BLUE进行显示,数码管有十个输入端,A-G是控制显示0-9的输入管,只要输入合适的数据,只能及时的显示,DP是是否显示小数点,当某位接低电平时,表示所在位的数码管被点亮,接高电平的数码管通过锁存器对P1过来的数据进行锁存,锁存器的使能端接地,ALE端接单片机的晶振ALE,从而实现显示功能。
接口技术课程设计报告
现代交通灯设计
学院(系):机械与电子工程学院
专业年级:电子信息工程10级1班
学生姓名:
学号:
*******
完成日期:2013年7月05日
现代交通灯设计
摘要
随着现代交通事业的发展,越来越多的私家车走进寻常百姓家,因此道路的负载强度越来越大,各大城市发生经常性的堵车事件,走路要比开车快已经成了不争的事实,然而传统的交通灯只有红,绿,黄三种颜色,不仅无法方便司机在高度紧张下对路况的判断,因此发生交通事故的可能性大大升高,因此我们需要带倒计时功能,而且可以显示各个通行方向的交通灯,为了设计一款这样的符合现代需求的交通灯,本设计基于单片机,用8255A扩展接口带左转、直行、右转三种通行绿灯,具有倒计时功能,当按下夜间行驶按钮时,所有方向黄灯闪烁,灯第二次按下夜间行驶按钮时,恢复正常行驶,当按下紧急按钮时,所有方向红灯亮,当第二次按下夜间行驶按钮时,恢复正常行驶,并可由管理人员修改倒计时的时间。
{
PA8255=Tab_1[arrow_j];
PB8255=Tab_2[arrow_j];
delay(2)
}
}
3.2.2倒计时程序:
void T0_time() interrupt 1//定时中断服务程序
{
TH0=15536/256;//设置定时起点
TL0=15536%256;
num++;
if(num==10)//满一秒则变换
当按下紧急情况按钮是只亮红灯,其他模块都不亮,如图11所示,当再一次按下按钮时,恢复到紧急按钮按下那一刻之前的显示,即恢复到正常行驶模式。
当按下夜间行驶按钮按钮时,进入到夜间行驶模式,所有方向黄灯闪烁,如图13所示,且不进行倒计时显示,当再次按下此按钮时,恢复到按下按钮那一刻之前的的显示,进入到正常行驶模式。
相关文档
最新文档