新手入门
- 积分
- 4
- 金钱
- 4
- 注册时间
- 2017-8-2
- 在线时间
- 0 小时
|
有没大神在啊,新手表示被STM32F4的串口以及串口调试助手折腾疯了。我照着原子哥的代码自己稍微改了下,基本上就是加了个帧头帧尾的判别而已,然后自己定义的一个素组作为接受缓存的那部分数据除了第一位之外,其他全为空,而且第一位永远只读取调试助手发的第一个字节,后面的数据打死都不读。这是这部分的代码,至于配置上的代码,我个人觉得应该没大问题,因为自己调了一下,程序是可以进中断的。求大神救救俺
void USART2_IRQHandler(void)
{
u8 res;
if(USART_GetITStatus(USART2,USART_IT_RXNE)!=RESET)
{
res=USART_ReceiveData(USART2);
USART_RX_BUF[USART_RX_STA&0X3FFF]=res;
USART_RX_STA++;
if((USART_RX_BUF[0]=='D')&&(USART_RX_BUF[1]=='o'))
{
USART_RX_STA|=0X4000;
if((USART_RX_BUF[8]==0X0D)&&(USART_RX_BUF[9]==0X0A)&&(USART_RX_STA&4000))
USART_RX_STA|=0X8000;
}
if((USART_RX_STA&0X3FFF)>=10)
USART_RX_STA=0;
//
//USART_ClearFlag(USART2, USART_FLAG_RXNE);
}
}
|
|