打印
[应用相关]

串口数据读取错误

[复制链接]
1390|12
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
lefeng|  楼主 | 2018-8-30 08:54 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
想请教一个问题,我用stm32F103芯片获取传感器ASCII码数据,在正常模式下,其应该发送的是数据应该是:“0”“.”0""0""0""1""\t""5""4""\r""\n",从示波器上看发送过来的数据没问题,但是我这边将读取的数据通过printf函数发送给串口调试助手,但是从助手上看只只有部分数据读取:"5""4""\r""\n",不知道哪里出问题了,请教各位了,谢谢,下面是相关函数。

void USART3_IRQHandler(void)
{  
    uint8_t  ch;
         
        // 接收数据
  if(USART_GetITStatus(USART3, USART_IT_RXNE) != RESET)
  {         
        USART_ClearITPendingBit(USART3, USART_IT_RXNE);// 清除中断标志
               
        ch = USART_ReceiveData(USART3);
        Com3RBuf[Com3Index]=(uint8_t)ch;

       printf("ch=%d\r\n",(uint8_t)Com3RBuf[Com3Index]);
       Com3Index++;

      if(Com3RBuf[2]==0x0A))
      {
           Rec3FinishF=1;
           Com3Index=0;
       }
  }
         // 发送数据
         
     else if(USART_GetITStatus(USART3, USART_IT_TXE) != RESET)
    {
      USART_ClearITPendingBit(USART3, USART_IT_TXE);
               
     if(Com3Index<Index3End)
     {
        USART_SendData(USART3, (uint8_t)Com3TBuf[Com3Index++]);
        while(USART_GetFlagStatus(USART3,USART_FLAG_TXE) == RESET);               
      }
     else
      {
        Com3Index=0;
        USART_ITConfig(USART3, USART_IT_TXE, DISABLE);
     }
   }
        }
沙发
CaLipton| | 2018-8-30 09:52 | 只看该作者
把串口助手设置为16进制接收试试

使用特权

评论回复
板凳
Rospiers| | 2018-8-30 10:40 | 只看该作者
16进制效果也是不全的,只是显示35 34 0D 0A

使用特权

评论回复
地板
Lewisnx| | 2018-8-30 10:47 | 只看该作者
那就是0要特殊处理的

使用特权

评论回复
5
CCompton| | 2018-8-30 10:54 | 只看该作者
把“\t”去掉试试,看格式是“\t"以前的都没显示

使用特权

评论回复
6
Richardd| | 2018-8-30 11:09 | 只看该作者
把“\t”前面的所有“”去掉试试

使用特权

评论回复
7
Mattheww| | 2018-8-30 11:18 | 只看该作者
波特率,串口初始化好好检查一下

使用特权

评论回复
8
Erichk| | 2018-8-30 11:37 | 只看该作者
把else if前面的else去掉试试看

使用特权

评论回复
9
Thorald| | 2018-8-30 11:43 | 只看该作者
能正常显示说明波特率是对的,应该去掉else,这样子就都能看到了

使用特权

评论回复
10
晓伍| | 2018-9-1 16:00 | 只看该作者
用串口助手读出来的是什么

使用特权

评论回复
11
观海| | 2018-9-1 16:06 | 只看该作者
有没有可能是数据解析问题

使用特权

评论回复
12
guanjiaer| | 2018-9-3 10:39 | 只看该作者
流程控制问题

使用特权

评论回复
13
xiaoqizi| | 2018-9-4 11:05 | 只看该作者
用示波器看看波形是什么

使用特权

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

本版积分规则

200

主题

1087

帖子

0

粉丝