毕业论文:单片机控制十字路口交通灯14.docVIP

毕业论文:单片机控制十字路口交通灯14.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
设计题目:十字路口交通灯控制2 要求 1、通过LED控制四个路口的红黄绿灯的变化。 2、绿灯表示通行,红灯表示停止,黄灯表示等待。 3、每次绿灯变红灯时黄灯先亮五秒,此时另外干道上的红灯不变。 4、每次变化时绿灯闪烁五次。 分析 课程设计采用实验室的单片机作为主控来实现十字路口交通灯的变化规律,十字路口的红绿灯交替变化,用双色发光二级管来模拟交通灯变化,使用定时器/计数器0作为定时器,从P1和P3口输出。 设计 1、硬件设计(包括设计方案及说明、完整的硬件连接图等) (1)因为本实验是交通灯控制实验,所以要先了解交通灯的变化规律。假设一个十字路口为东西和南北方向,初始状态是状态0(各个路口都是红灯);首先是状态1(东路口通车,其他路口红灯);过一段时间装入状态2(东路口绿灯闪几次转黄灯亮,延时几秒,其他路口仍然红灯);再转入状态3(南路口绿灯亮,其他路口红灯亮);过一段时间转入状态4(南路口绿灯闪几次转黄灯亮,延时几秒,其他路口仍然红灯);再转入状态5(西路口绿灯亮,其他路口红灯亮);过一段时间转入状态6(西路口绿灯闪几次转黄灯亮,延时几秒,其他路口仍然红灯);再转入状态7(北路口绿灯亮,其他路口红灯亮);过一段时间转入状态8(北路口绿灯闪几次转黄灯亮,延时几秒,其他路口仍然红灯);最后循环至状态1。 (2)各用一组红黄绿色LED分别表示东南西北方向。 (3)由定时器来产生通车延时时间,时间间隔为5s。 (4)用软件延时方法产生“闪”延时时间。 说明:用CPU的P1口和P3口输出控制信号,控制12个LED灯(红、黄、绿),模拟交通灯的管理。各个输出口对应的IO口如下: P1.0·····LED00 P1.1·····LED01 P1.2·····LED02 P1.3·····LED03 P1.4·····LED04 P1.5·····LED05 P1.6·····LED06 P1.7·····LED07 P3.2·····LED08 P3.3·····LED09 P3.4·····LED10 P3.5·····LED11 2、软件编程(包括流程图、完整的汇编源程序及其注释) 程序流程图如图1所示: 程序如下: #includereg52.h sfr light_address_1=0x90; sfr light_address_2=0xB0; sbit red_e=P1^0; sbit yellow_e=P1^1; sbit green_e=P1^2; sbit red_s=P1^3; sbit yellow_s=P1^4; sbit green_s=P1^5; sbit red_w=P1^6; sbit yellow_w=P1^7; sbit green_w=P3^2; sbit red_n=P3^3; sbit yellow_n=P3^4; sbit green_n=P3^5; bit light_up=0; bit light_down=1; unsigned char light_down_all=0xff; unsigned char count=0; void delay_MS(unsigned char data0); void Init_timer0(void); void light_state1(); void light_state2(); void light_state3(); void light_state4(); void light_state5(); void light_state6(); void light_state7(); void light_state8(); void main() { Init_timer0(); while(1) {light_address_1=light_down_all; light_address_2=light_down_all; light_state1(); light_address_1=light_down_all; light_address_2=light_down_all; light_state2(); light_address_1=light_down_all; light_address_2=light_down_all; light_state3(); light_address_1=light_down_all; light_address_2=light_down_all; light_state4(); light_address_1=light_down_all;

文档评论(0)

精品天地 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档