十字路口交通灯的设计.doc_第1页
十字路口交通灯的设计.doc_第2页
十字路口交通灯的设计.doc_第3页
十字路口交通灯的设计.doc_第4页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

十字路口交通灯的设计一、设计目的:近几年来,伴随着国民经济的持续快速发展和人民群众交通出行需求的日益增长,带来了公路交通的日益繁忙和机动车的高速增长,也带来了道路交通事故的高位运行。进入21世纪以来,全国每年发生交通事故近40万起,死亡超过10万人,受伤近50万人,直接经济损失近20亿元,每年交通事故死亡人数占各类安全事故的75%,所以建立规范交通行驶规则是一件必须的事。以下是我组自行设计的一个交通灯程序。二、程序实现功能:1.实现十字口交通灯的设计,设计两组交通灯,横向一组,竖向一组,红色灯亮代表车辆停止通行,绿色灯亮代表车辆通行,黄色灯闪烁代表红灯绿灯将转换一次。2.设计一个中断,使在发生交通事故时,能跳到此中断,此时所有红灯亮,所有车辆停止运行。三、程序如下:#include#define uchar unsigned char#define uint unsigned intsbit rda=P10;/A区的灯位定义:分别为红、黄、绿。sbit yla=P12;sbit gra=P14;sbit rdb=P11;/B区的灯位定义:分别为红、黄、绿。sbit ylb=P13;sbit grb=P15;uchar xs=1, cs=0;void delay(uint z)/延时函数 uint i,j; for (i=0;iz;i+) for (j=0;j110;j+); void jiaotd()/子函数 switch(xs) case 1: rda=0;rdb=1;/A区红灯,B区绿灯,黄灯不亮。 gra=1;grb=0; yla=1;ylb=1; delay(10000); xs=2; break; case 2: rda=0;rdb=1; gra=1;grb=0; yla=yla;ylb=1; delay(300); if(+cs!=10)return;/黄灯闪烁5次 cs=0; xs=3; break; case 3: rda=1;rdb=0;/B区红灯,A区绿灯,黄灯不亮。 gra=0;grb=1; yla=1;ylb=1; delay(10000); xs=4; break; case 4: rda=1;rdb=0; gra=0;grb=1; ylb=ylb;yla=1; delay(300); if(+cs!=10)return;/黄灯闪烁5次 cs=0; xs=1; break; void main()/主函数 while(1) EA=1; EX0=1; IT0=0; jiaotd(); void tingzhi() interrupt 0/出现事故时进入中段,此时十字路口停止通车。 yla=1; ylb=1; gra=1; grb=1; rda=0; rdb=0; 四、仿真图如下:1.A组红灯亮,B组绿灯亮。2.红绿灯将转换,黄灯开始闪(闪5次)。3、A组绿灯亮,B组红

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论