版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
#include<at89x51.h>#defineucharunsignedchar#defineuintunsignedint/*****定义各个控制位*****/sbitsn_left=P1^4; //南北左行sbitsn_go=P1^5; //南北直行sbitsn_yellow=P1^6; //南北黄灯sbitsn_man_green=P1^3; //南北人行道绿灯sbit sn_man_red=P3^0;//南北人行道红灯sbitew_left=P1^0; //东西左行sbitew_go=P1^1; //东西直行sbitew_yellow=P1^2; //东西黄灯sbitew_man_green=P3^1; //东西人行道绿灯sbitew_man_red=P1^7; //东西人行道红灯sbitsn_led1=P2^0; //南北LED显示器十位控制器sbitsn_led2=P2^1; //南北LED显示器各位控制器sbitew_led1=P2^2; //东西LED显示器十位控制器sbitew_led2=P2^3; //东西LED显示器各位控制器//sbittime_led1=P2^4; //附加LED显示器十位控制器//sbittime_led2=P2^5; //附加LED显示器各位控制器//sbitkey1=P2^6; //功能按键1//sbitkey2=P2^7; //功能按键2/*****定义共阴极LED显示器的字段码0~9******/ucharcodetable[]={0x3F,0x06,0x5B,0x4F,0x66,0x6D,0x7D,0x07,0x7F,0x6F};uintcount;//秒计数器ucharflag,second;//同行标志,显示数据变量//ucharT0h,T0l;//定时器T0计数初值变量/****函数声明****///延时子程序(晶振12MHz)voidDelayms(ucharms){uchari; while(ms--) { for(i=1;i<60;i++); //原为120调改2 i=1时需13个机器周期 } } voidstate1() { sn_left=0;//南北左行绿灯 sn_man_green=0;//南北人行道绿灯关 sn_man_red=1;//南北人行道红灯亮 sn_go=1;//南北直行红灯 sn_yellow=0; ew_man_green=0;//东西人行道绿灯关 ew_man_red=1;//东西人行道红灯亮 ew_left=1;//东西左行红灯 ew_go=1;//东西直行红灯 ew_yellow=0; } voidstate2() { sn_left=1;//南北左行红灯 sn_man_green=0;//南北人行道绿灯关 sn_man_red=1;//南北人行道红灯开 sn_go=0;//南北直行绿灯 sn_yellow=0; ew_man_green=1;//东西人行道绿灯开 ew_man_red=0;//东西人行道红灯关 ew_left=1;//东西左行红灯 ew_go=1;//东西直行红灯 ew_yellow=0; } voidstate3() { sn_left=1;//南北左行红灯 sn_man_green=0;//南北人行道绿灯关 sn_man_red=1;//南北人行道红灯亮 sn_go=1;//南北直行红灯 sn_yellow=1; //南北黄灯亮 ew_man_green=0;//东西人行道绿灯关 ew_man_red=1;//东西人行道红灯亮 ew_left=1;//东西左行红灯 ew_go=1;//东西直行红灯 ew_yellow=1; } voidstate4() { sn_left=1;//南北左行红灯 sn_man_green=0;//南北人行道绿灯关 sn_man_red=1;//南北人行道红灯亮 sn_go=1;//南北直行红灯 sn_yellow=0; //南北黄灯关 ew_man_green=0;//东西人行道绿灯关 ew_man_red=1;//东西人行道红灯亮 ew_left=0;//东西左行绿灯 ew_go=1;//东西直行红灯 ew_yellow=0; } voidstate5() { sn_left=1;//南北左行红灯 sn_man_green=1;//南北人行道绿灯开 sn_man_red=0;//南北人行道红灯关 sn_go=1;//南北直行红灯 sn_yellow=0; ew_man_green=0;//东西人行道绿灯关 ew_man_red=1;//东西人行道红灯开 ew_left=1;//东西左行红灯 ew_go=0;//东西直行绿灯 ew_yellow=0;} voidstate6() { sn_left=1;//南北左行红灯 sn_man_green=0;//南北人行道绿灯亮 sn_man_red=1;//南北人行道红灯关 sn_go=1;//南北直行红灯 sn_yellow=0; //南北黄灯关 ew_man_green=0;//东西人行道绿灯关 ew_man_red=1;//东西人行道红灯亮 ew_left=1;//东西左行红灯 ew_go=1;//东西直行红灯 ew_yellow=1; //东西黄灯亮 } voidmain() { flag=1; //状态标识初始化为1 second=15; //初始化南北左转时间15s (为调程序设为2本为‘15‘ count=0; //设定技术初值 sn_led1=1;//初始化各个指示灯状态 sn_led2=1; ew_led1=1; ew_led2=1; TMOD=0x11; TH0=0xF8;//0xFC;//0x1C; //FC18为延时1ms TL0=0x30;//0x18;//0x66; //F830为延时两毫秒 EA=1; ET1=1; ET0=1; TR0=1; while(1); //无法跳到T1 } voidisr_t0()interrupt1 { TH0=0xF8;//0xFC;//0x1C; //FC18为延时1ms TL0=0x30;//0x18;//0x66; //F830为延时两毫秒 TH1=0xF8;//0xFC;//PreloadH; TL1=0x30;//0x18;//PreloadL; TR1=1; if(flag==1|flag==2|flag==3) //显示南北方向剩余时间 { P0=table[second/10]; sn_led1=0; Delayms(1); sn_led1=1; P0=table[second%10]; sn_led2=0; Delayms(1); sn_led2=1; } if(flag==4|flag==5|flag==6)//显示东西方向剩余时间 { P0=table[second/10]; ew_led1=0; Delayms(1); ew_led1=1; P0=table[second%10]; ew_led2=0; Delayms(1); ew_led2=1; } //TH0=0xF8;//0xff;//0x1C; //TL0=0x30;//0xfa;//0x66; TR0=0;} /***定时器TI定时50ms中断服务程序,顺序完成各个状态下的指示灯的控制***/ voidisr_t1()interrupt3 { count++; TH1=0xF8;//0xFC;//PreloadH; TL1=0x30;//0x18;//PreloadL; TH0=0xF8;//0xFC;//0x1C; //FC18为延时1ms TL0=0x30;//0x18;//0x66; //F830为延时两毫秒 TR0=1; switch(flag) { case1: { state1(); if(count==240) / { count=0; if(second>0) { second--; } else { second=20; flag=2; } } }break; case2: { state2(); if(count==240) { count=0; if(second>0) { second--; } else { second=3; flag=3; } } }break; case3: { state3(); if(count==240) { count=0; if(second>0) { second--; } else { second=15; flag=4; } } }break; case4: { state4(); if(count==240) { count=0; if(second>0) { second--; } else { second=20; flag=5; } } }break; case5: { state5(); if(count==240) { count=0; if(second>0) { second--; } else {
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 泌尿外科患者的术后营养支持护理
- 正常分娩妇女的产后家庭护理
- 抗生素使用中的循证护理实践
- 商业购物中心宠某省市集嘉年华萌宠夏日主题活动策划方案
- 兄弟分家协议书
- 夫妻债务的协议书
- 潍坊市的中考试题及答案
- 2026年慢性肾病脂代谢异常诊疗试题及答案(肾内科版)
- 2026年写字楼公共区域设计合同协议
- 33湖北襄阳市2026年4月高三统一调研测试语文试题及参考答案
- 2026重庆联合产权交易所集团股份有限公司招聘13人考试备考试题及答案解析
- 2026中考语文试题分类汇编《作文》练习题
- 2026年辽宁省二级建造师继续教育复习真题AB卷附答案详解
- 2026年农电工通关题库及参考答案详解【综合题】
- 2026 年山东中考历年英语作文合集十篇
- 第一章 货币与货币流通(金融学课件-中央财经大学,李健)
- 苏州科技大学辅导员考试题库
- 高中作文纸800字模板
- 药物医疗器械临床试验质量管理规范试题及答案
- YC/T 88.2-2006烟草机械喂料机第2部分:技术条件
- GB/T 10855-2016齿形链和链轮
评论
0/150
提交评论