用的串口一,波特率9600 while(retry--&&retry>0)
{
HC05_KEY=1; //KEYÖøß,½øèëATÄ£ê½
HAL_Delay(10);
u1_printf("AT
"); //·¢ËíAT2aêÔÖ¸áî
HC05_KEY=0; //KEYà-μí,íË3öATÄ£ê½
for(t=0;t<10;t++) //×î3¤μè′y50ms,à′½óêÕHC05Ä£¿éμÄ»Øó|
{
if(USART1_RX_STA&0X8000)break;
HAL_Delay(5);
}
if(USART1_RX_STA&0X8000) //½óêÕμ½ò»′Îêy¾YáË
{
temp=USART1_RX_STA&0X7FFF; //μÃμ½êy¾Y3¤¶è
USART1_RX_STA=0;
if(temp==4&&USART1_RX_BUF[0]=='O'&&USART1_RX_BUF[1]=='K')
{
temp=0;//½óêÕμ½OKÏìó|
break;
}
}
}
发送AT指令后,蓝牙模块的灯是快闪,程序是跑死在
void HAL_UART_IRQHandler(UART_HandleTypeDef *huart)
这个函数里了,调试模式里看,一直在这里循环。
但有的时候就成功了,但是retry循环结束为0.
读主从也能读出是主机。
还有一块板子上,模块只会1s闪1s不闪,把key拉低后不是应该进入可配对状态么
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
一直进这个函数
就是照着例程来的,但是板子是自己画的,用的cubemx生成的工程
一周热门 更多>