智能交通灯设计幻灯片.ppt

  1. 1、本文档共17页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
智能交通灯设计幻灯片

智能交通灯设计 交通灯介绍 交通灯的显示有很多方式,如十字路口、丁字路口等,而对于同一个路口又有很多不同的显示要求,比如十字路口,车子如果只要东西和南北方向通行就很简单,而如果车子可以左右转弯的通行就比较复杂,本实验仅针对最简单的南北和东西直行的情况。 要完成本实验,首先必须了解交通路灯的亮灭规律。本实验需要用到实验箱上交通灯模块中的发光二极管,即红、黄、绿各三个。依人们的交通常规,“红灯停,绿灯行,黄灯提醒”。其交通灯的亮灭规律为:初始态是两个路口的红灯全亮,之后东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延时一段时间后,东西路口绿灯灭,黄灯开始闪烁。闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。闪烁若干次后,再切换到东西路口方向,重复上述过程。 设计目的 1、制作一个系统模拟十字路口交通灯亮灭情况 2、设计倒计时系统,可以使双向的交通灯可以按周期红绿交替 3、绿灯每次快结束时,黄灯闪烁并且发出提示音 实验器材 电脑 TPG-EDA试验台 功能设计 功能设计分为三个部分: 交通灯 倒计时 蜂鸣器 交通灯 倒计时 蜂鸣器 交通灯的结构框图 设计程序 #include iom103v.h #include macros.h void port_init(void) { PORTA = 0xFF; DDRA = 0xFF; PORTB = 0x00; DDRB = 0xF0; PORTC = 0x00; //output only PORTD = 0xFF; DDRD = 0xFF; PORTE = 0x00; DDRE = 0x01; } void delay(unsigned int ms) { int i,j; for(i=0;ims;i++) for(j=0;j1000;j++); } //call this routine to initialize all peripherals 设计程序 void init_devices(void) { //stop errant interrupts until set up CLI(); //disable all interrupts XDIV = 0x00; //xtal divider port_init(); MCUCR = 0x00; EICR = 0x00; //external interrupts sources EIMSK = 0x00; TIMSK = 0x00; //timer interrupt sources SEI(); //re-enable interrupts //all peripherals are now initialized } void main(void) { init_devices(); //insert your functional code here... while(1) { PORTA=0x5A; PORTD = 0x80; delay(200); PORTD = 0xF8; delay(200); PORTD = 0x82; delay(200); PORTD = 0x92; delay(200); PORTD = 0x99; delay(200); PORTD = 0xB0; delay(200); PORTD = 0xA4;//灯开始闪; //灯闪两次;蜂鸣器叫两次; 设计程序 PORTB=0x00; PORTE=0x01; delay(50); PORTB=0xF0; PORTE=0x00; delay(50); PORTB=0x00; PORTE=0x01; delay(50); PORTB=0xF0; PORTE=0x00; delay(50); //灯总共闪了四次;蜂鸣器总共叫四次; PORTD = 0xc0; delay(200); //红绿灯开始互换 PORTA=0xA5; PORTD = 0x80; delay(200); PORTD = 0xF8; delay(200); PORTD = 0x82; delay(200); PORTD = 0x92; delay(200); PORTD = 0x99; delay(200); PORTD = 0xB0; delay(200); PORTD = 0xA4;//灯开始闪; //灯闪两次;蜂鸣器叫两次; 设计程序 PORTB=0xF0; PORTE=0x01; delay(50); PORTB=0x

文档评论(0)

wnqwwy20 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:7014141164000003

1亿VIP精品文档

相关文档