串口收发,上电后第一次总是 多一个FF 字节

2019-07-20 22:13发布

串口1 收发,上电后第一次收到的数据 总是多一个FF,导致后面数据乱了,,,但是在仿真状态是,收发是正常的,如下图。。。望大家多多指点。。。谢谢!


调换过串口和GPIO配置的顺序,还是没有解决。。。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
21条回答
S2663265296
1楼-- · 2019-07-22 15:38
245925587 发表于 2019-7-17 18:06
是不是采用串口中断的方式进行发送的,是的话,只要开启,就会进中断一次

不是,我是在main发的
void Usart_SendArray( USART_TypeDef * pUSARTx, uint8_t *array, uint16_t num)
{
  uint8_t i;
       
        for(i=0; i<num; i++)
  {
            /* ·¢&#203;íò&#187;&#184;&#246;×&#214;&#189;úêy&#190;Yμ&#189;USART */
            Usart_SendByte(pUSARTx,array);       
  
  }
        /* μè′y·¢&#203;ííê3é */
        while(USART_GetFlagStatus(pUSARTx,USART_FLAG_TC)==RESET);
}
S2663265296
2楼-- · 2019-07-22 19:47
 精彩回答 2  元偷偷看……
流年丶
3楼-- · 2019-07-22 22:35
 精彩回答 2  元偷偷看……
S2663265296
4楼-- · 2019-07-23 03:29
流年丶 发表于 2019-7-18 10:39
等待发送完成放进for循环里面,你这是还未发送成功,然后又继续发送下一个数据了。

这个是例程来的,不过你说的也对,但是我把发送完成放进for还是一样的问题,,,用340还是没有问题
流年丶
5楼-- · 2019-07-23 07:43
S2663265296 发表于 2019-7-18 10:59
这个是例程来的,不过你说的也对,但是我把发送完成放进for还是一样的问题,,,用340还是没有问题

代码方便帖出来不呢
流年丶
6楼-- · 2019-07-23 12:35
S2663265296 发表于 2019-7-18 11:24
搞定了,是蓝牙模块上电会有一个字符,,,然后把这个字符过掉就可以了

额。。。。还外接了蓝牙模块,还以为直接上位机收发呢

一周热门 更多>