700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 单片机c语言交通灯源程序 51单片机用C语言实现交通灯_红绿灯_源程序

单片机c语言交通灯源程序 51单片机用C语言实现交通灯_红绿灯_源程序

时间:2019-07-22 07:12:36

相关推荐

单片机c语言交通灯源程序 51单片机用C语言实现交通灯_红绿灯_源程序

单片机 AT STC C语言 C 89c51 89c52 设计 交通灯 仿真 毕业论文 程序设计 毕业设计 课题设计

51单片机用C语言实现交通灯(红绿灯)源程序

-10-29 23:00

交通灯,红黄绿灯交替亮,怎样实现呢?其实就是根据单片机定时器及倒计时的程序修改。

源程序如下:

/*

1、程序目的:使用定时器学习 倒计时 红绿灯原理 主要程序和倒计时一样

2、硬件要求:数码管、晶振12M

*/

#include

bit red,green,yellow,turnred; //定义红、黄、绿及转红标志 code unsigned char tab[]=

{0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f};

//共阴数码管 0-9

unsigned char Dis_Shiwei;//定义十位

unsigned char Dis_Gewei; //定义个位

void delay(unsigned int cnt) //用于动态扫描数码管的延时程序 {

while(--cnt);

}

main()

{

TMOD |=0x01;//定时器设置 10ms in 12M crystal定时器0,工作方式1,16位定时器

TH0=0xd8; //65535-10000=55535=D8F0(十六进制)

TL0=0xf0;

IE= 0x82; //中断控制,EA=1开总中断,ET0=1:定时器0中断允许

TR0=1; //开定时器0中断

P1=0xfc;//红灯亮,根据红黄绿接灯的顺序。

red =1;

while(1)

{

P0=Dis_Shiwei;//显示十位,这里实现用8位数码管,即左1位

P2=0;

delay(300);//短暂延时

P0=Dis_Gewei; //显示个位,左数,2位

P2=1;

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。