大家帮我看看我的程序哪儿有问题

2019-07-15 22:33发布



是根据http://bbs.elecfans.com/jishu_184829_1_1.html这里面大神的程序弄的,我是新手,请大神看看。



#include<reg51.h>
#define LED  P0
#define LED_ON()    LED = 0x00  //所有LED亮
#define LED_OFF()    LED = 0xff  //所有LED熄灭
unsigned int g_u16LedtimeCount = 0 ;    //LED计数器
unsigned char g_u8LedState = 0 ;      //LED状态标志, 0表示亮,1表示熄灭
unsigned  char g_bSystemTime1Ms = 0 ;





void LedProcess(void)
{
    if(0 == g_u8LedState)  //如果LED的状态为亮,则点亮LED
    {
        LED_ON() ;
    }
    else                //否则熄灭LED
    {
        LED_OFF() ;
    }
}


void LedStateChange(void)
{
    if(g_bSystemTime1Ms)            //系统1MS时标到
  {
        g_bSystemTime1Ms = 0 ;
        g_u16LedTimeCount++ ;      //LED计数器加一
    if(g_u16LedTimeCount >= 500)  //计数达到500,即500MS到了,改变LED的状态。
    {
            g_u16LedTimeCount = 0 ;
            g_u8LedState  = ! g_u8LedState ;
      }
    }
        }

        void main(void)
{
    while(1)
    {
        LedProcess() ;
        LedStateChange() ;
    }  
}



友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。