La longitud de la palabra del puerto serie stm32 es de 8 o 9 bits de forma predeterminada. ¿Cómo cambiarla a 11 bits? Y establezca una velocidad de baudios específica como 100000
En la programación real, puede utilizar las funciones de la biblioteca para configurarlo directamente sin realizar cálculos.
Generación de velocidad en baudios fraccionaria:
El receptor y el transmisor (RX y TX) se configuran con los valores configurados en los registros enteros y fraccionarios USARTDIV.
Velocidad en baudios TX/RX=Fck/(16*USARTDIV)
Ejemplo: USARTDIV se calcula a partir del valor del registro BRR
Si DIV_Mantissa=27D , DIV_Fraction=12D(BRR=1BCH), entonces
Mantissa(USARTDIV)=27D
Fraciton(USARTDIV)=12/16=0.75D
Por lo tanto , USARTDIV=27.75D
Después de escribir USART_BRR, el contador de velocidad en baudios se actualizará con el nuevo valor en el registro de velocidad en baudios, por lo que el valor del registro de velocidad en baudios no debe cambiarse durante el procesamiento, solo USART1 es El reloj lo proporciona PCK2 (bit máximo 72 MHZ) y los otros relojes los proporciona PCLK1 (máximo 36 MHZ)