stm32f7linux,STM32F7串口5初始化失败
用的STM32F767想要初始化串口5,用的PB12(Rx)、PB13(Tx),兩腳均初始化為復用推免輸出、上拉模式初始化后只有PB13上拉了,PB12還是沒上拉,什么原因。代碼如下
void uart_init(u32 bound)
{
UART5_Handler.Instance? ?? ? =UART5;
UART5_Handler.Init.BaudRate??=bound;
UART5_Handler.Init.WordLength=UART_WORDLENGTH_8B;
UART5_Handler.Init.StopBits??=UART_STOPBITS_1;
UART5_Handler.Init.Parity=UART_PARITY_NONE;
UART5_Handler.Init.HwFlowCtl=UART_HWCONTROL_NONE;
UART5_Handler.Init.Mode=UART_MODE_TX_RX;
HAL_UART_Init(&UART5_Handler);
}
void HAL_UART_MspInit(UART_HandleTypeDef *huart)
{
//uart5
if(huart->Instance==UART5)
{
__HAL_RCC_GPIOB_CLK_ENABLE();
__HAL_RCC_UART5_CLK_ENABLE();
GPIO_Initure.Pin=GPIO_PIN_12;
GPIO_Initure.Mode=GPIO_MODE_AF_PP;
GPIO_Initure.Pull=GPIO_PULLUP;
GPIO_Initure.Speed=GPIO_SPEED_HIGH;
GPIO_Initure.Alternate=GPIO_AF8_UART5;
HAL_GPIO_Init(GPIOB,&GPIO_Initure);
GPIO_Initure.Pin=GPIO_PIN_13;
HAL_GPIO_Init(GPIOB,&GPIO_Initure);
HAL_NVIC_EnableIRQ(UART5_IRQn);
HAL_NVIC_SetPriority(UART5_IRQn,3,2);
}
}
其他程序與??例程實驗3串口通訊程序一致
總結
以上是生活随笔為你收集整理的stm32f7linux,STM32F7串口5初始化失败的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux云管理,教程|云帮手部署Lin
- 下一篇: 做牙套前一定要做根管治疗吗