在调试STM32的串口程序时发现以下问题:
1、如果将数据位设置为8位,即USART_WordLength_8b,则设置为无校验和偶校验的时候,上位机PC可以正确接收到发送的数据,设置为奇校验的时候则接收到的数据是错误的。
2、将数据位设置为9位,即USART_WordLength_9b,则不论设置为奇校验或是偶校验和无校验,上位机就能正确的接收到发送的数据。
难道是STM32将增加的那个校验位也算作是数据位吗?似乎只有这样才能解释上面的现象啊。
是的,STM32将增加的那个校验位也算作是数据位。
谢谢版主。
希望新手使用的时候能注意到这个问题,避免在这浪费时间调试。