2022年2022年基于PICFA单片机的交通灯设计

上传人:人*** 文档编号:567372746 上传时间:2024-07-20 格式:PDF 页数:5 大小:118.58KB
返回 下载 相关 举报
2022年2022年基于PICFA单片机的交通灯设计_第1页
第1页 / 共5页
2022年2022年基于PICFA单片机的交通灯设计_第2页
第2页 / 共5页
2022年2022年基于PICFA单片机的交通灯设计_第3页
第3页 / 共5页
2022年2022年基于PICFA单片机的交通灯设计_第4页
第4页 / 共5页
2022年2022年基于PICFA单片机的交通灯设计_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

《2022年2022年基于PICFA单片机的交通灯设计》由会员分享,可在线阅读,更多相关《2022年2022年基于PICFA单片机的交通灯设计(5页珍藏版)》请在金锄头文库上搜索。

1、软件流程说明当东西红灯亮,南北绿灯亮时,东西方向数码管倒计时40秒,南北数码管倒计时30 秒;切换成南北黄灯亮,东西红灯亮,同时南北数码管倒计时10 秒,黄灯亮 10 秒;然后切换成南北红灯亮,东西绿灯亮,南北数码管倒计时40 秒,东西数码管倒计时 30 秒;切换成南北红灯亮,东西黄灯亮,同时东西方向数码管倒计时 10 秒,黄灯亮 10 秒;一直循环下去,再一次切换成东西红灯亮,南北绿灯亮时,南北方向数码管倒计时30 秒仿真电路图:#include unsigned char LED1=0; unsigned char LED2=0; unsigned char LED3=0; 名师资料总结

2、- - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 5 页 - - - - - - - - - unsigned char LED4=0; unsigned char LED_L=0; const unsigned char table18= 0X3F,0X06,0X5B,0X4F,0X66,0X6D,0X7D,0X07,0X7F,0X6F,0X60,0X25,0X3c,0X23,0X34,0X74,0XF7,0XFF; void timer1init(void) /初始化 T1CON=0

3、X01; /打开定时器1 TMR1IF=0; /清除TMR1 中断标志TMR1IE=1; /TMR1 中断允许TMR1H=0xF6; /赋初值,以便TMR1 每 2MS 左右中断一次TMR1L=0x3D; PIR1=0; /清除所有中断标志PEIE=1; /允许外围总中断GIE=1; /总中断开关打开 void interrupt T1(void)/ 中断处理 if(TMR1IF=1) /如果是定时器1 中断 TMR1IF=0; /清除定时器1 中断标志TMR1H=0XF6; /重新复初值TMR1L=0x3D; switch(LED_L) case 0:/点亮第一个数码管RE2=1; RE1=

4、0; RE0=0; PORTB = tableLED1; LED_L = 1; break; case 1:/点亮第二个数码管RE2=0; RE1=1; RE0=0; PORTB = tableLED2; LED_L = 2; break; case 2: /点亮第三个数码管RE2=1; RE1=1; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 5 页 - - - - - - - - - RE0=0; PORTB = tableLED3; LED_L = 3; bre

5、ak; case 3:/点亮第四个数码管RE2=0; RE1=0; RE0=1; PORTB = tableLED4; LED_L = 0; break; default:/ 语句 d LED_L = 0; break; delay()/延时500ms int j,k; for(j=0;j500;j+) for(k=0;k49;k+) delay_s(int n)/ 延时n 秒 int i; for(i=0;in;i+) delay(); delay(); main()/ 主函数 int i; ADCON1=0X06; /初始化TRISA=0X00; /南北方向交通灯控制信号输出端TRISB=

6、0X00; /数码管段选信号输出端TRISC=0X00; /东西南北方向交通灯控制信号输出端TRISE=0X00; /数码管位选信号输出端PORTA=0X00; PORTB=0X00; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 5 页 - - - - - - - - - PORTC=0X00; PORTE=0X00; timer1init();/ 定时器 1 初始化LED1=3;LED2=0;LED3=3;LED4=5;/数码管赋初值while(1) PORTA=0

7、X01;PORTC=0X40; / 东西红灯亮,南北绿灯亮LED1=3; LED2=0;LED3=4;LED4=0;/东西倒数 40S,南北倒数30S for(i=0;i40;i+) delay_s(1); LED2=LED2-1; LED4-; if(LED2=0XFF) LED2=9;LED1-; if(LED4=0XFF) LED4=9;LED3-; if(i=29) PORTA=0X02; / 南北黄灯亮10S LED1=1;LED2=0;LED3=1;LED4=0; if(LED2=0XFF) LED2=9;LED1-; if(LED4=0XFF) LED4=9;LED3-; if(

8、LED2=0XFF&LED4=0XFF) PORTA=0X04;PORTC=0X10; / 东西绿灯亮,南北红灯亮LED1=4;LED2=0; LED3=3; LED4=0;/东西倒数 40S,南北倒数30S for(i=0;i40;i+) delay_s(1); LED4=LED4-1; LED2-; if(LED4=0XFF) LED4=9;LED3-; if(LED2=0XFF) LED2=9;LED1-; if(i=29) PORTC=0X20; / 东西黄灯亮10S LED1=1;LED2=0;LED3=1;LED4=0; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 5 页 - - - - - - - - - if(LED4=0XFF) LED4=9;LED3-; if(LED2=0XFF) LED2=9;LED1-; if(LED2=0XFF&LED4=0XFF) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 5 页 - - - - - - - - -

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号