交通灯keil程序加2位数码管_交通灯仿真工程+程序-带按键-LED数码管显示数值

这是一个交通灯控制系统程序,采用keil开发,包含2位数码管显示当前绿灯时间。用户可以通过按键调整东西和南北方向的绿灯时间。程序中使用了定时器和中断来实现交通灯的定时切换,并通过数码管动态显示剩余秒数。
摘要由CSDN通过智能技术生成

#include

bit red,green,yellow,turnred;          //定义红、黄、绿及转红标志

code unsigned char tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,

0x7f,0x6f}; //共阴极数码管码表

#define  LIGHT P0

#define  SEG P1

#define  BITR P2

unsigned char Dis_Shiwei;//定义十位

unsigned char Dis_Gewei; //定义个位

unsigned char second,count=0; //初值60

#define uchar unsigned char

#define uint unsigned int

sbit add=P3^3;                                 //定义东西绿灯时间加按键

sbit sub=P3^4;                                 //定义东西绿灯时间减按键

sbit K1=P3^1;                                 //定义设定时间按键

sbit add2=P3^5;                             //定义调南北绿灯时间加按键

sbit sub2=P3^6;                             //定义调南北绿灯时间减按键

unsigned char timeDX=13,timeNB=15; //定义东西和南北绿灯亮时可调变量并赋予初值2S

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

{

while(--cnt);

}

/*********************************延时子程序*************************************/

void DelayMS(unsigned int x)                  //延时ms

{

unsigned char t;

while(x--)

{

for(t=120;t>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值