|
這個是STM32串口3的中斷函數(shù)
void USART3_IRQHandler(void)
{
u8 mychar;
if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)
{
USART_ClearITPendingBit(USART3,USART_IT_RXNE);
mychar = USART_ReceiveData(USART3);
if(UartReceiverBufCount0==0)
{
UartReceiverBuf[0][UartReceiverBufCount0++]=mychar;
if(mychar=='\n')
{
UartReceiverBuf[1][UartReceiverBufCount1++]=mychar;
if(mychar=='\n')
{
UartReceiverBuf[2][UartReceiverBufCount2++]=mychar;
}
}
}
}
}
目前是在調(diào)試兩個藍(lán)牙模塊的連接,
當(dāng)連接成功后,串口助手收到的信息是這樣子的
我的思路是這樣子的,因為有三行信息,當(dāng)檢測有換行符時
數(shù)據(jù)存到UartReceiverBuf[1][UartReceiverBufCount1++];
當(dāng)再次檢測到有換行符時,數(shù)據(jù)存到UartReceiverBuf[2][UartReceiverBufCount2++];
問題:
1. if(mychar=='\n') 這樣子檢測換行符正確嗎?
2. 串口助手中[AT]和[DA] 算是串口中斷收到的數(shù)據(jù)嗎?????
我是新手,求大神指導(dǎo),謝謝!!!
|
|