用MCS51单片机的汇编语言编写倒计时程序

来源:百度知道 编辑:UC知道 时间:2024/05/25 14:07:45
有一个课程设计,其中遇到一个困难。我们想设计一个交通灯的,想用LED来显示绿灯或者红灯亮的时间,例如,红灯亮60秒,旁边用数码管显示倒计时,从60到0.请教倒计时的程序如何编写,是用在MCS51的单片机中的~~
请你写出详细的程序呢???

用定时器延时,到一秒便将显示的值减1,轮询或者中断都可以。

答:坚决不给程序,这么简单的还不自己写。

。。。。。。。。。。。。。。。
倒的和正的有虾米区别

做1秒的时间常数来检测被 变1秒就减1
#include <reg52.h>
#include <STDIO.H>
#include <CTYPE.H>
#include <STRING.H>
#include <INTRINS.H>
uchar tm0;

t0chushi(void)
{
EA=0;
TR0=0;
TR1=0;
TMOD=0x51;
TL0=0x00;
TH0=0x4C;
TL1=0x00;
TH1=0x00;
ET0=1;
ET1=0;
TR0=1;
TR1=1;
EA=1;
}
static void timer0(void) interrupt 1 using 1
{
TR0=0;
TL0=0x00;
TH0=0x4c;
TR0=1;
tm0+=1;
}
main
{
t0chushi();
while(1)
{
if(tm0>=20)
{
tm0-=20;
//........这里写自减和显示
}

//........这里写其他内容

}
}