From d15933c53e636494567d840f7e5ca1e158deeec3 Mon Sep 17 00:00:00 2001 From: Frederic Pillon Date: Fri, 14 Apr 2023 10:52:11 +0200 Subject: [PATCH] fix(Nucleo_F401RE): use HSI intead of HSE bypass HSE Bypass is available only on MB1136 C-02 (or higher). MB1136 C-01 configured as HSE not used so old clock config does not work for it. Using HSI allows to be compatible with all MB1136 C-0x version. Signed-off-by: Frederic Pillon --- .../STM32F4xx/F401R(B-C-D-E)T/variant_NUCLEO_F401RE.cpp | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/variants/STM32F4xx/F401R(B-C-D-E)T/variant_NUCLEO_F401RE.cpp b/variants/STM32F4xx/F401R(B-C-D-E)T/variant_NUCLEO_F401RE.cpp index 6ce1dc5152..6a4009735c 100644 --- a/variants/STM32F4xx/F401R(B-C-D-E)T/variant_NUCLEO_F401RE.cpp +++ b/variants/STM32F4xx/F401R(B-C-D-E)T/variant_NUCLEO_F401RE.cpp @@ -115,12 +115,13 @@ WEAK void SystemClock_Config(void) __HAL_PWR_VOLTAGESCALING_CONFIG(PWR_REGULATOR_VOLTAGE_SCALE2); /* Initializes the CPU, AHB and APB busses clocks */ - RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSE; - RCC_OscInitStruct.HSEState = RCC_HSE_BYPASS; + RCC_OscInitStruct.OscillatorType = RCC_OSCILLATORTYPE_HSI; + RCC_OscInitStruct.HSIState = RCC_HSI_ON; + RCC_OscInitStruct.HSICalibrationValue = RCC_HSICALIBRATION_DEFAULT; RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON; - RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE; + RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSI; RCC_OscInitStruct.PLL.PLLM = 8; - RCC_OscInitStruct.PLL.PLLN = 336; + RCC_OscInitStruct.PLL.PLLN = 168; RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4; RCC_OscInitStruct.PLL.PLLQ = 7;