char * sim900a_waitask(uint8_t waitask_hook(void))中的waitask_hook有什么用,真心求教

2019-07-14 21:32发布

char * sim900a_waitask(uint8_t waitask_hook(void))      //等待有数据应答
{
    uint8_t len=0;
    char *redata;
    do{
        redata = SIM900A_RX(len);   //接收数据
        if(waitask_hook!=0)
        {
            if(waitask_hook()==SIM900A_TRUE)           //返回 SIM900A_TRUE 表示检测到事件,需要退出
            {
                redata = 0;
                return redata;               
            }
        }
    }while(len==0);                 //接收数据为0时一直等待


    SIM900A_DELAY(20);              //延时,确保能接收到全部数据(115200波特率下,每ms能接收11.52个字节)
    return redata;
}

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