裸机letter shell试过,没问题(看乱码部分)乱码之后我手工改了波特率就正常了。
[C] 纯文本查看 复制代码 /*
*********************************************************************************************************
* 函 数 名: comSetBaud
* 功能说明: 设置串口的波特率. 本函数固定设置为无校验,收发都使能模式
* 形 参: _ucPort: 端口号(COM1 - COM8)
* _BaudRate: 波特率,8倍过采样 波特率.0-12.5Mbps
* 16倍过采样 波特率.0-6.25Mbps
* 返 回 值: ret
*********************************************************************************************************
*/
int comSetBaud(COM_PORT_E _ucPort, uint32_t _BaudRate)
{
UART_T *pUart;
UART_HandleTypeDef *huart;
uint16_t brrtemp;
UART_ClockSourceTypeDef clocksource;
uint32_t usartdiv;
HAL_StatusTypeDef ret = HAL_OK;
uint32_t lpuart_ker_ck_pres;
PLL2_ClocksTypeDef pll2_clocks;
PLL3_ClocksTypeDef pll3_clocks;
uint32_t pclk;
pUart = ComToUart(_ucPort);
if (pUart == 0)
{
return -1;
}
huart = pUart->huart;
huart->Init.BaudRate = _BaudRate;
/* 参考 stm32xx_hal_uart.c --> UART_SetConfig() 中寄存器 BRR 配置部分。 */
/*-------------------------- USART BRR Configuration -----------------------*/
https://ghproxy.com/https://raw. ... /bsp/src/bsp_uart.c |