为什么STM32串口接收数据时第一个数都是0,从第二个以后才是有效的数据呢? 10
问题是这样的:向STM32发数据0x010x020x030x04,但是STM32接收到的数据:0x000x010x020x030x04怎么才能使它第一个就是有效的数据?...
问题是这样的:向STM32发数据0x01 0x02 0x03 0x04,
但是STM32接收到的数据:0x00 0x01 0x02 0x03 0x04
怎么才能使它第一个就是有效的数据? 展开
但是STM32接收到的数据:0x00 0x01 0x02 0x03 0x04
怎么才能使它第一个就是有效的数据? 展开
4个回答
2014-08-17
展开全部
那是起始位,每次用串口通讯时都会这样先发送‘0’,然后紧接着发送数据位然后就是奇偶校验位最后是停止位
展开全部
我刚刚调通了,解决了问题
中断接收函数丢了这个判断
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //判断读寄存器是否非空
中断接收函数丢了这个判断
if(USART_GetITStatus(USART1, USART_IT_RXNE) != RESET) //判断读寄存器是否非空
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
请问你搞定了没?我现在也遇到了这个问题,第二位开始才是有效数据,然后最后一位数据就没有了
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询