cancel
Showing results for 
Search instead for 
Did you mean: 

STM32CubeMX does not generate UART clock init

ADunc.1
Senior II

Code generation of the attached .ioc file (copy of ST example file of similar name) does not generate clock init for UART4.  This means the example application hard faults.  I see no reason why the UART clock should not be initialised here and would save someone time debugging in the future!

In stm32mp2xx_hal.c:

void HAL_UART_MspInit(UART_HandleTypeDef* huart)
{
  GPIO_InitTypeDef GPIO_InitStruct = {0};
  if(huart->Instance==UART4)
  {
    /* USER CODE BEGIN UART4_MspInit 0 */
	// TODO:  Need this here! __HAL_RCC_UART4_CLK_ENABLE();
    /* USER CODE END UART4_MspInit 0 */

    /**UART4 GPIO Configuration
    PH8     ------> UART4_RX
    PH7     ------> UART4_TX
    */
    GPIO_InitStruct.Pin = GPIO_PIN_8;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL;
    GPIO_InitStruct.Alternate = GPIO_AF4_UART4;
    HAL_GPIO_Init(GPIOH, &GPIO_InitStruct);

    GPIO_InitStruct.Pin = GPIO_PIN_7;
    GPIO_InitStruct.Mode = GPIO_MODE_AF_PP;
    GPIO_InitStruct.Pull = GPIO_NOPULL;
    GPIO_InitStruct.Speed = GPIO_SPEED_FREQ_LOW;
    GPIO_InitStruct.Alternate = GPIO_AF4_UART4;
    HAL_GPIO_Init(GPIOH, &GPIO_InitStruct);

    /* USER CODE BEGIN UART4_MspInit 1 */

    /* USER CODE END UART4_MspInit 1 */

  }

}

 

1 ACCEPTED SOLUTION

Accepted Solutions
Ghofrane GSOURI
ST Employee

Hello @ADunc.1 

Your contribution is much appreciated.

Issue has been escalated to dev team under internal ticket ID #0060887

I will kee

 

THX

Ghofrane

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.

View solution in original post

1 REPLY 1
Ghofrane GSOURI
ST Employee

Hello @ADunc.1 

Your contribution is much appreciated.

Issue has been escalated to dev team under internal ticket ID #0060887

I will kee

 

THX

Ghofrane

To give better visibility on the answered topics, please click on Accept as Solution on the reply which solved your issue or answered your question.