STM32串口通信使用奇偶校验的时候应该设置数据位长度9bit,奇偶校验是硬件完成的,并且stm32用校验位时,数据位要选9位,8位会出现故障可能。
STM32串口通信使用奇偶校验代码如下:#ifdef USART1_ON
//允许USART1的时钟
RCC_APB2PeriphClockCmd(RCC_APB2Periph_USART1, ENABLE);
_InitStructure.USART_BaudRate = 9600;
USART_InitStructure.USART_WordLength = USART_WordLength_9b;
USART_InitStructure.USART_StopBits = USART_StopBits_1;
USART_InitStructure.USART_Parity = USART_Parity_Odd;
USART_InitStructure.USART_HardwareFlowControl = USART_HardwareFlowControl_None;
USART_InitStructure.USART_Mode = USART_Mode_Rx | USART_Mode_Tx;
USART_Init( USART3, &USART_InitStructure);
STM32串口通信使用奇偶校验时在有奇偶校验时需要9个数据位,无奇偶校验时8个数据位即可。
本文综合整理自博客园 开源电子网 面包板社区
责任编辑:pj
-
stm32串口
+关注
关注
0文章
5浏览量
1941
发布评论请先 登录
相关推荐
STM32F103VET6串口通信的时候,要求可以切换三种传输格式(485的奇偶校验位)
STM32 串口及奇偶校验问题

问题笔记:STM32串口数据位与校验位

STM32的UART奇偶校验注意

stm32 usart奇偶校验如何配置

评论