清除缓存之后重发
while(!Hand("OK")) //判断是否握手成功,如果不成功延时一会,再发送AT握手指令
{
CLR_Buf(); //清除缓存
Send_ASCII("AT"); //发送联机指令
Send_Hex(0x0d); //发送回车符
Send_Hex(0x0a); //发送换行符
Delay_ms(600);
}
继续在串口助手上试,但是前提是在串口助手上勾选16进制显示,做完你肯定就明白了!
是不是有空格和换行符你没去掉啊!
看出来程序在while(!Hand("OK")) 中死循环估计要这个函数在问题 可以在这个函数中增加发送串口数据检查问题 把Hand的函数贴出来看看吧