打印
[应用相关]

Uart接收漏資料問題

[复制链接]
166|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
两只袜子|  楼主 | 2022-8-18 09:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
各位好:
最近在研究MCU與感測器結合應用,使用UART進行資料接收,但發現接收端好像來不急接收感測器端吐出來的資料,目前設定的情況是我使用Uart中斷接收的方式,buadrate設定為115200,感測器由0開始計數,但接收端的部份中間固定有幾比資料會遺失,請問能否協助解答?
UART DataBuff[0] = 0x2
UART DataBuff[0] = 0x5
UART DataBuff[0] = 0x8
UART DataBuff[0] = 0x11
UART DataBuff[0] = 0x14
UART DataBuff[0] = 0x17
UART DataBuff[0] = 0x20
UART DataBuff[0] = 0x23


  • void HAL_UART_RxCpltCallback(UART_HandleTypeDef*UartHandle)
  • {
  •                 RxLine++;
  •             DataBuff[RxLine-1]=RxBuff[0];
  •             if(DataBuff[RxLine-1]==0xff && DataBuff[RxLine-2]==0xff && DataBuff[RxLine-3]==0xff && DataBuff[RxLine-4]==0xff)
  •             {
  •                if(RxLine == 8)
  •                {
  •                        printf("RXLen=%d\r\n",RxLine);
  •                        for(int i=0;i<RxLine;i++)
  •                        {
  •                                printf("UART DataBuff[%d] = 0x%d\r\n",i,DataBuff);
  •                        }
  •                        memset(DataBuff,0,sizeof(DataBuff));
  •                        RxLine=0;
  •                }
  •                else if(RxLine > 8)
  •                {
  •                        memset(DataBuff,0,sizeof(DataBuff));
  •                        RxLine=0;
  •                }
  •             }
  •             RxBuff[0]=0;
  •             HAL_UART_Receive_IT(&huart2, (uint8_t *)RxBuff, 1);
  • }

复制代码


使用特权

评论回复
沙发
yiy| | 2022-8-18 10:36 | 只看该作者
这字体看着有点别扭

使用特权

评论回复
板凳
andygirl| | 2022-8-18 20:32 | 只看该作者
仿真可以么

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1936

主题

6725

帖子

8

粉丝