交通信号灯课程设计报告

上传人:博****1 文档编号:460265844 上传时间:2023-08-28 格式:DOC 页数:19 大小:97KB
返回 下载 相关 举报
交通信号灯课程设计报告_第1页
第1页 / 共19页
交通信号灯课程设计报告_第2页
第2页 / 共19页
交通信号灯课程设计报告_第3页
第3页 / 共19页
交通信号灯课程设计报告_第4页
第4页 / 共19页
交通信号灯课程设计报告_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《交通信号灯课程设计报告》由会员分享,可在线阅读,更多相关《交通信号灯课程设计报告(19页珍藏版)》请在金锄头文库上搜索。

1、交通信号灯自动控制系统*目录*一、设计内容二、设计要求三、交通信号灯模拟控制系统设计程序流程图四、交通信号灯模拟控制系统原理图五、交通信号灯模拟控制系统主程序六、运行步骤七、检测与调试八、课程设计体会九、参考文献十、说明一、 设计内容:设计并制作一个如上图所示的十字路口交通信号自动控制模拟指示系统。设该路口由A、B两条通行干道相交而成,四个路口各设一组红、黄、绿三色信号灯,用两位数码管作倒计时显示。二、 设计要求:1系统基本功能要求 (1)以秒为计时单位,两位数码管以十进制递减计数形式作定时显示,在递减计数回零瞬间完成换灯操作。(2)通过键盘红、黄、绿三色信号灯所亮时间在099秒内任意设定。(

2、3)十字路口的通行起始状态可人工设定,运行中可通过人工干预使十字路口通行状况固定于任何一种工作模式。 2发挥部分(1)具有时间控制功能,交通信号灯工作时间:05:0023:00;其余时间两个干道上的黄色信号灯闪烁显示;(2)绿色信号灯倒计时最后3秒和黄色信号灯显示时闪烁显示。(闪烁频率:1Hz);(3)其它功能。三、交通信号灯模拟控制系统设计程序流程图1、主程序流程图:开始程序初使化 调用显示主程序 东西绿灯亮,南北红灯亮,进入倒计时,打开数码管显示 东西和南北黄灯亮,进入倒计时,打开数码管显示 东西红灯亮,南北绿灯亮,进入倒计时,打开数码管显示 图52、中断服务程序流程图:外部中断0: 外部

3、中断1 :按键按下按键按下 转去中断服务子程序转去中断服务子程序设置个位计数值设置十位计数值 中断返回中断返回 图6 图7 计数器T0外部中断:确定按键按下转去中断服务子程序分别进行三组灯的组合状态的时间倒计数并进入此三种状态的一下死循环 中断返回 图83、交通灯工作换灯流程:R0=#0FFH南北红灯亮,东西绿灯亮 否 是 是东西和南北黄灯亮5sR0=#0FFH南北绿灯亮,东西红灯亮 否 四、交通信号灯模拟控制系统原理图1.直流电源图:2.交通信号灯模拟控制系统原理图: 五、交通信号灯模拟控制系统主程序#include #include#define uint unsigned int#def

4、ine ucher unsigned charucher code table=0x40,0x40,0xf9,0x24,0x30,0x19,0x12,0x02,0x78,0x00,0x10;sbit k0=P30;sbit k1=P31;sbit k2=P32;sbit k3=P33;sbit k4=P34;sbit k5=P35;sbit k6=P36;sbit k7=P37;ucher tt,tt1,tt2,sec,min,shi; /初始定义void time1();void delay(uint z);void main ()int i,j,num1,num2,l,n,m,h1,h2,

5、h3;ucher aa,bb,dd,ee;EA=1;TMOD=0x01;TH0=(65536-50000)/256;TL0=(65536-50000)%256; /中断定义ET0=1;EX0=1;EX1=1;num1=1;num2=1;P3=0xef;aa=0xb6;bb=0x96;dd=0x6b;ee=0x69;shi=8;P0=0xf2;if(k0=1)delay(5);if(k0=1)while(k0)if(k7=0)delay(5);if(k7=0)num1+;while(!k7);if(num1=11)/交通灯初值及工作状态设置 num1=1;if(k6=0)delay(5);if(

6、k6=0)num2+;while(!k6);if(num2=11)num2=1;P1=tablenum1;P2=tablenum2;if(k1=0)delay(5);if(k1=0)aa=0x6b;bb=0x69;dd=0xb6;ee=0x96;elsenum1=4;num2=1;m=num1;n=num2;if(k0=0)/调节当前时间(即对时)delay(5);if(k0=0)while(!k0)if(k7=0)delay(5);if(k7=0)shi+;if(shi=24)shi=0; /调时h1=shi;h2=h1/10+1;h3=h1%10+1;P2=tableh3;P1=table

7、h2;while(!k7);if(k6=0)delay(5);if(k6=0)min+;if(min=60)min=0;h1=min;h2=h1/10+1;h3=h1%10+1;/调分P2=tableh3;P1=tableh2;while(!k6);if(k1=0)delay(5);if(k1=0)sec+;if(sec=60)sec=0;h1=sec;h2=h1/10+1;h3=h1%10+1;/调秒P2=tableh3;P1=tableh2;while(!k1);TR0=1; /开启定时器中断if(num1=1)while(1)j=n;i=m; /工作循环程序for(j=n;j0;j-)i

8、f(j22)|(shi0;j-)P1=tablei;P2=tablej;P0=bb;delay(500);P0=aa;delay(500);for(j=n;j0;j-)if(j22)|(shi0;j-)P1=tablei;P2=tablej;P0=ee;delay(500);P0=dd;delay(500);while(1)num2=n;num1=m;for(j=n;j0;j-)i=m;P0=aa;P1=tablei;P2=tablej;delay(1000);if(shi22)|(shi0;i-)for(j=10;j0;j-)if(shi22)|(shi5)time1();if(i=1)if

9、(j0;j-)P1=tablei;P2=tablej;P0=bb;delay(500);P0=aa;delay(500);num1=m;for(j=n;j0;j-)i=m;P0=dd;P1=tablei;P2=tablej;delay(1000);if(shi22)|(shi0;i-)for(j=10;j0;j-)if(shi22)|(shi5)time1();if(i=1)if(j0;j-)P1=tablei;P2=tablej;P0=ee;delay(500);P0=dd;delay(500);void delay(uint z)uint t1,y;/延时函数for(t1=z;t10;t1-)for(y=125;y0;y-);void time1()for(;(shi22)|(shi5);)P0=0xdd;delay(500);P0=0xff;delay(500); /23点到5点的工作函数P1=table1;P2=table1;void enter0() interrupt 0delay(5);if(k2=0)/外部中断0 函数P1=0x00;P2=0x00;P0=0xb6;

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号