串口的校驗位(STM32 C51)

在C51中是通過工作模式和數據位來進行設置的,在STM32中設置了校驗位之後就老是收不到數據後來才知道需要把數據位設置成9位就可以了但是好像不區分odd和even但是和無校驗是區分開的代碼如下
switch (P)
{
case 0:
USART_InitStructure.USART_Parity = USART_Parity_No;
USART_InitStructure.USART_WordLength = USART_WordLength_8b;
break;
case 1:
USART_InitStructure.USART_Parity = USART_Parity_Odd;
USART_InitStructure.USART_WordLength = USART_WordLength_9b;
break;
case 2:
USART_InitStructure.USART_Parity = USART_Parity_Even;
USART_InitStructure.USART_WordLength = USART_WordLength_9b;
break;
default :
break;

}

    USART_Init(USART1, &USART_InitStructure); 
USART_ITConfig(USART1, USART_IT_RXNE, ENABLE);
USART_Cmd(USART1, ENABLE);                  
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章