根据开发板上的4 位数码管和独立按键,实现 24 秒倒计时器。要求使用定时器实现,单片机上电后显示24.00,按下 s1 键启动倒计23.99 23.98.…倒计时结束为 00.00,并蜂呜器报警,中途按下 S1 键后倒计时暂停,再次按下倒计时继续。按下 S2 键重新复位 24.00。
开发板我没搞过,不过基本逻辑差不多就是判断程序执行的条件
{
int s1 = 0, s2=0;
__int64 timep = 0;
__int64 a = 0;
float c = 2;
while (scanf("%d", &s1) != EOF)
{
c = 2;
if (s1==1)
{
::_sleep(1);
}
else if(s1==2)
{
c = 2;
}
else if(s1 ==0)
{
while (1)
{
if (s1)
{
break;
}
if (c <= 0.00)
{
break;
}
timep = GetTimeOfDay();
if (timep - a > 10000)
{
a = timep;
c -= 0.01;
if (c >= 0.00)
{
printf("%.2f\n", c);
}
}
::_sleep(1);
}
}
else
{
::_sleep(1);
}
}
}