标题:请问大家我这个函数的参数有什么问题?
取消只看楼主
dby12
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-11-2
结帖率:0
已结贴  问题点数:20 回复次数:2 
请问大家我这个函数的参数有什么问题?
有如下函数:
send_at_cmd("AT\r\n","OK",5));
函数功能是向模块发送“AT”命令,如果被测模块返回OK,则send_at_cmd函数返回0,否则返回1.

函数代码如下:
u8 send_at_cmd(u8 *cmd,u8 *ack,u16 waittime)
{
        u8 res=0;
        Rx2Counter=0;
        Flag_UART2_RX=0;
        while((USART2->SR&0X40)==0);
        if((u32)cmd<=0XFF)
        {
                while((USART2->SR&0X40)==0);
                USART2->DR=(u32)cmd;
        }else USART2_TxString(cmd);
        if(ack&&waittime)               
        {
                while(--waittime)      
                {
                        Delay_ms(1000);
                        MCU_IWDG_Init ();
                        USART2_TxString("AT\r\n");
                        Rx2Counter=0;
                        if(Flag_UART2_RX==1)
                        {
                                Flag_UART2_RX=0;
                               if(AT_check_cmd(ack))break;
                        //        if(strstr((const char*)Rx2Buffer,"OK"))break;
                        }
                }
                if(waittime==0)res=1;
        }
        return res;
}

u8* AT_check_cmd(unsigned char *str)
{
        char *strx=0;
        if(Flag_UART2_RX==1)               
        {
                Flag_UART2_RX=0;
               
                strx=strstr((const char*)Rx2Buffer,(const char*)str);
        }
        return (u8*)strx;
}        
使用时,send_at_cmd函数中红色部分用绿色的替代就可以了,请问这个是AT_check_cmd()函数的参数传递有问题吗?要怎么解决,谢谢。
搜索更多相关主题的帖子: 函数 参数 cmd const char 
2018-11-02 16:47
dby12
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-11-2
得分:0 
回复 2楼 rjsp
非常感谢,就是这个问题,看这段代码时间久了,忽略了前面加的这句话,再次感谢。
2018-11-03 09:29
dby12
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2018-11-2
得分:0 
回复 3楼 烟雨晨曦
谢谢,这个函数定义的确应该是u8,再结合楼上的修改,问题解决了,再次谢谢两位。
2018-11-03 09:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-490936-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.134491 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved