




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、#include<reg52.h>#include <intrins.h>#define uchar unsigned char#define uint unsigned intbit Flag_SN_Yellow;/SN 黄灯标志位bitFlag_EW_Yellow;/EW 黄灯标志位uchar Time_EW;/东西方向倒计时单元uchar Time_SN;/南北方向倒计时单元uchar EW=15,SN=10,EWL=19,SNL=19; /程序初始化赋值,正常模式uchar EW1=60,SN1=40,EWL1=19,SNL1=19;/川于存放修改值的变量uch
2、ar Flag_Moden=1; /模式变量1正常模式2禁止南北通东西 3禁止东西通南北4禁止东西南北5夜间模式uchar Flag_key=0;ucharcodetable10=0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F;19段选码sbit HC164_Data =P0A0;sbit HC164_Clk =P0A1;sbit EW_green =P0A2;sbit EW_yellow =P0A3;sbit EW_red =P0A4;sbit SN_red =P0A5;sbit SN_green =P0A7;sbit SN_yellow
3、=P0A6;sbit SN_RXD_red =P2A7;sbit SN_RXD_green =P2A6;sbit EW_RXD_red =P2A5;sbit EW_RXD_green =P2A4;sbit FMQ = P1A0; sbit keyl = P3A3; sbit key2 = P3A4; sbit key3 = P3A5; sbit WEI1 =P2A3; sbit WEI2 =P2A2; sbit WEI3 =P2A1; sbit WEI4 =P2A0;/东西数码管第一位 东西数码管第二位 南北数码管第一位 南北数码管第二位/uchar ew=40;sn=35;/ 函数 dela
4、y(uchar z)/功能能延时void Delay(uchar z)uchar a,b;for(a=z;a>0;a-) for(b=200;b>0;b-);void HC_164_Set_byte(uchar duan)-uchar i;for(i=0;i<8;i+)HC164_Data =duan & 0x80;HC164_Clk =0;HC164_Clk =1;duan =duan <<1;void display_smg(uchar wei,uchar num).switch(wei)case 1: WEI1=0;WEI2=1;WEI3=1;WEI
5、4=1;HC_164_Set_byte(tablenum);break;case 2: WEI1=1;WEI2=0;WEI3=1;WEI4=1;HC_164_Set_byte(tablenum);break;case 3: WEI1=1;WEI2=1;WEI3=0;WEI4=1;HC_164_Set_byte(tablenum);break;case 4: WEI1=1;WEI2=1;WEI3=1;WEI4=0;HC_164_Set_byte(tablenum);break; default: break;void Display(void)uchar h,l;h=Time_EW/10;l=T
6、ime_EW;display_smg(1,h);Delay(8);display_smg(2,l);Delay(8);h=Time_SN/10;l=Time_SN;display_smg(3,h);Delay(8);display_smg(4,l);Delay(8);void Key()if(key1=0)Delay(10);if(key1=0) while(!key1);Flag_key+;if(Flag_key=1) Flag_Moden=2;.if(Flag_key=2) Flag_Moden=3;.if(Flag_key=3) Flag_Moden=4;.if(Flag_key=4)
7、Flag_Moden=5;FMQ=1;TR0=1;if(Flag_key=5) Flag_EW_Yellow=0;/SN 关黄灯信号位 Flag_SN_Yellow=0; SN 关黄灯信号位 FMQ=1;Flag_Moden=1;TR0=1;/启动定时Flag_key=0;if(key2=0)while(!key2);Flag_Moden=2;.if(key3=0)while(!key3);Flag_Moden=3;void timer0(void)interrupt 1 using 1static uchar count;TH0=(65536-50000)/256; TL0=(65536-5
8、0000)%6; count+;if(count=10)if(Flag_SN_Yellow=1) /测试南北黄灯标志位SN_yellow=SN_yellow;if(Flag_EW_Yellow=1) /测试东西黄灯标志位EW_yellow=EW_yellow; 一一if(count=20)if(Flag_Moden=1)Time_EW-;Time_SN-;if(Flag_SN_Yellow=1)/测试南北黄灯标志位SN_yellow=SN_yellow;if(Flag_EW_Yellow=1)/ 测试东西黄灯标志位 EW_yellow=EW_yellow;count=0; /模式1 void
9、Zc_moshi()/*S0状态 *EW_RXD_red=0/EW人行道禁止 EW_RXD_green=1;/EW道禁止 SN_RXD_red=1/EW 人行道通行SN_RXD_green=0;/SN 人行道通行Flag_EW_Yellow=0; /EW关黄灯显示信号 Flag_SN_Yellow=0; /SN关黄灯显示信号 Time_EW=EW; /EW=45;SN=40;Time_SN=SN;SN_green =0; /SN 通行,EW!灯SN_red =1;EW_red =0;EW_green =1;while(Time_EW>5)if(key1=0 | key2=0|key3=0
10、) Flag_Moden=1;TR0=0;/启动定时 break;Display。;SN_yellow=0; /SN黄灯亮开始闪烁5秒SN_green =1; 灭/*S1状态*Time_SN=5;while(Time_EW<=5) if(key1=0 | key2=0|key3=0) /Flag_Moden=1;TR0=0;/启动定时 break;Flag_SN_Yellow=1; /SN 开黄灯信号位 Display。;/*S2 状态 *Flag_SN_Yellow=0; /SN 关黄灯显示信号SN_yellow=1;EW_RXD_red=V/EW人行道通行 SN_RXD_green=
11、1;SN 人行道禁止EW_RXD_green=0/EW 人行道通行 SN_RXD_red=0;/SN 人行道禁止Time_EW=SN; /EW=45;SN=40;Time_SN=EW;SN_green=1;/南北绿灯禁止东西通行SN_red=0; /EW_red=1;EW_green=0; / 亮while(Time_SN>5)if(key1=0 | key2=0|key3=0)/Flag_Moden=1;TR0=0;/启动定时 break;Display。;/*S3状态 *EW_green=1;EW_yellow=0;Time_EW=5;while(Time_SN<=5) if(
12、key1=0 | key2=0|key3=0) TR0=0;/启动定时break;Flag_EW_Yellow=1;/SN 开黄灯信号位Display。;Flag_EW_Yellow=0;EW_yellow=1;./模式2禁止南北通东西蜂鸣器响void Jsn()EW_green =0;EW_yellow =1;EW_red =1;SN_red =0;SN_green =1;SN_yellow =1;SN_RXD_red =0;SN_RXD_green =1;EW_RXD_red =1;EW_RXD_green =0;FMQ =干MQ;Delay(10);WEI1=1;WEI2=1;WEI3=
13、1;WEI4=1;/模式3禁止东西通南北蜂鸣器响void Jew()EW_green =1;EW_yellow =1;EW_red =0;SN_red =1;SN_green =0;SN_yellow =1;SN_RXD_red =1;SN_RXD_green =0;EW_RXD_red =0;EW_RXD_green =1;FMQ =干MQ;Delay(10);WEI1=1;WEI2=1;WEI3=1;WEI4=1;/模式4禁止东西南北 蜂鸣器响void JEwSn()EW_green =1;EW_yellow =1;EW_red =0;SN_red =0;SN_green =1;SN_ye
14、llow =1;SN_RXD_red =0;SN_RXD_green =1;EW_RXD_red =0;EW_RXD_green =1;FMQ =干MQ;Delay(10);WEI1=1;WEI2=1;WEI3=1;WEI4=1;/模式5夜间模式,东西南北黄灯闪烁void Yejian()EW_green =1;EW_yellow =1;EW_red =1;SN_red =1;SN_green =1;/SN_yellow =1;SN_RXD_red =1;SN_RXD_green =1;EW_RXD_red =1;EW_RXD_green =1;Flag_EW_Yellow=1; SN 开黄灯
15、信号位Flag_SN_Yellow=1; /SN 开黄灯信号位void main ()P1=0xff;P2=0xff ;P3=0xff;P0=0xff;EW_green =1;EW_yellow =1;EW_red =1;SN_red =1;SN_green =1;SN_yellow =1;SN_RXD_red =1;SN_RXD_green =1;EW_RXD_red =1;EW_RXD_green =1;WEI1=1;WEI2=1;WEI3=1;WEI4=1;IT0=1; /INT0负跳变触发TMOD=0x01;/叱时器工彳于方式1 TH0=(65536-50000)/256;/ 定时器赋初
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 美团员工试题题库及答案
- 职场常用的商务英语短语试题及答案
- 求各类英语试题及答案
- 黄平县面试真题及答案
- 2025体育教师考试试题及答案
- 2025汽车工程知识测试题库及答案
- 2025护士考试题库及答案
- 2025公务员行政能力测试题及答案
- 有机化学反应路径的探讨试题及答案
- 乡村旅游与休闲农业融合发展的乡村旅游与草原旅游结合报告
- 2022年12月大学英语四级考试真题及答案(第2套)
- GB/T 21632-2008危险品喷雾剂泡沫可燃性试验方法
- GB/T 19203-2003复混肥料中钙、镁、硫含量的测定
- 中医医师指导医术实践活动情况表
- (2015年第105号)已使用化妆品原料名称目录调整内容
- 西安电务段电子信息设备维护管理办法
- 人美版小学二年级美术下册《第20课 车一族》课件
- DB37T 4317.3-2021 工业煤粉锅炉用煤粉安全技术要求 第3部分:管道输送与储存系统安全技术要求
- 医院建筑能耗监管系统建设技术导则(试行)(共44页)
- 城市建筑垃圾分类及处理培训PPT课件
- MapInfo地理数据分析和专题图制作
评论
0/150
提交评论