51单片机添加一个定时器完成两个功能的实现

已写出串口通信和流水灯两个程序,需帮忙添加定时器实现两个功能的同时实现,若解答则有偿。

用51单片机写出下面这个程序:通过按键开启程序,每隔5秒向串口发送一个字符串“LED_RUNNING”,通过串口显示,发送后LED灯每间隔一位实现流水(1357),当再次按下按键时停止发送字符串,全部LED灯熄灭。

  1. 设定一个定时器,假设每100ms中断一次,设定两个个全局定时变量,uartCount,ledCount
  2. 终端服务函数里这么写:(大概意思)
    uarCount=0; ledCount=0;
    ISR_timer_Handler()
    {
    if(uartCount>=50) { uart_send("LED_RUNNING"); uartCount=0;} //每5s发送一次
    if(ledCount>=10) { P0=(led<<2); ledCount=0;} //每1s左移两位
    uartCount++;
    ledCount++;
    }