3.5个字符间隔表示一帧数据结束
使用CUBE LL库出现再次初始化波特率不能修改问题,直接操作底层brr寄存器
uint32_t boaud;
uint32_t periphclk = LL_RCC_PERIPH_FREQUENCY_NO;
LL_RCC_ClocksTypeDef rcc_clocks;
LL_RCC_GetSystemClocksFreq(&rcc_clocks);
periphclk = rcc_clocks.PCLK2_Frequency;
LL_USART_SetBaudRate(USART1,periphclk,boaud);
if((boaud = LL_USART_GetBaudRate(USART1, periphclk)) == boaud)
HAL_GPIO_TogglePin (LED1_GPIO_Port ,LED1_Pin);
/* 参考来自于LL库底层代码 */
/* 一定要注意3.5个字符时间间隔,如果不是随着波特率变化而更新,。则可能修改波特率时 ,波特率太小时间间隔出错*/
3.5个字符间隔表示一帧数据结束
使用CUBE LL库出现再次初始化波特率不能修改问题,直接操作底层brr寄存器
uint32_t boaud;
uint32_t periphclk = LL_RCC_PERIPH_FREQUENCY_NO;
LL_RCC_ClocksTypeDef rcc_clocks;
LL_RCC_GetSystemClocksFreq(&rcc_clocks);
periphclk = rcc_clocks.PCLK2_Frequency;
LL_USART_SetBaudRate(USART1,periphclk,boaud);
if((boaud = LL_USART_GetBaudRate(USART1, periphclk)) == boaud)
HAL_GPIO_TogglePin (LED1_GPIO_Port ,LED1_Pin);
/* 参考来自于LL库底层代码 */
/* 一定要注意3.5个字符时间间隔,如果不是随着波特率变化而更新,。则可能修改波特率时 ,波特率太小时间间隔出错*/
举报