stm32波特率计算

见《STM32参考手册》P525

integer apbclock = convert(36000000, hex);   //若用的是串口2~5,则Fck=36000000。

integer USART_BaudRate =convert(622118,hex);  
波特率寄存器 integer integerdivider = ( convert(25, hex) * apbclock) / (convert(4, hex) * USART_BaudRate);   ///integerdivider是浮点类型 
integer tmpreg = (integerdivider /  convert(100, hex)) << convert(4, hex);


综上得:
tmpreg = (2250000/x)tohex <<4

你可能感兴趣的:(stm32波特率计算)