UART通信,接收的数据总是不对

2019-07-14 17:11发布

STM32的UART功能发送0x33,用电脑里的串口助手接收数据,是00 66。。。这中间应该是某个地方上,单片机和串口助手的通信有差别造成的吧。但是自己一直没想明白其中的原因。还望同志们不吝赐教!!谢啦
附上UART的设置:
UART2_DeInit();
  /* UART1 configured as follow:
        - BaudRate = 9600 baud  
        - Word Length = 8 Bits
        - One Stop Bit
        - No parity
        - Receive and Transmit enabled
        - UART1 Clock disabled
  */
  UART2_Init((uint32_t)9600, UART2_WORDLENGTH_8D, UART2_STOPBITS_1, UART2_PARITY_NO,UART2_SYNCMODE_CLOCK_DISABLE, UART2_MODE_TXRX_ENABLE);
UART2_Cmd(ENABLE);

UART2_SendData8(0x33);
while (UART2_GetFlagStatus(UART2_FLAG_TXE) == RESET)
{
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
14条回答
IC阿祥
2019-07-16 01:37
TOPCB 发表于 2018-10-1 18:04
同步模式需要连接全串口,大家不选择同步就是为了连接方便。
楼主用示波器测试一下波形,看看波特率实际输出是多少。
楼主可否把工程上传一下,大家看代码帮你测试才好解决。

多谢楼主。。。实验条件简陋,连示波器都没有。。。工程我可以上传一下。。。
会不会与没有使用MAX232之类的转换芯片有关系呢?我现在是单片机的串口线直接接的USB转串口,再直连电脑

一周热门 更多>