Skip to content

Commit 7bd8c32

Browse files
authored
Merge pull request #4133 from u-blox/c030-debug-8mhz-xtal
U-BLOX_C030: Default XTAL is now 12MHz onboard. Option to use Debug 8MHz
2 parents 0beb95f + a39ed80 commit 7bd8c32

File tree

2 files changed

+28
-20
lines changed

2 files changed

+28
-20
lines changed

targets/TARGET_STM/TARGET_STM32F4/TARGET_STM32F437xG/TARGET_UBLOX_C030/system_stm32f4xx.c

Lines changed: 25 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -21,20 +21,20 @@
2121
* during program execution.
2222
*
2323
* This file configures the system clock as follows:
24-
*--------------------------------------------------------------------------------------
25-
* System clock source | PLL_HSE_XTAL | PLL_HSE_XTAL
26-
* | (external 8 MHz clock) | (external 8 MHz clock)
27-
*--------------------------------------------------------------------------------------
28-
* SYSCLK(MHz) | 168 | 84
29-
*--------------------------------------------------------------------------------------
30-
* AHBCLK (MHz) | 168 | 84
31-
*--------------------------------------------------------------------------------------
32-
* APB1CLK (MHz) | 42 | 42
33-
*--------------------------------------------------------------------------------------
34-
* APB2CLK (MHz) | 84 | 84
35-
*--------------------------------------------------------------------------------------
36-
* USB capable (48 MHz precise clock) | YES | YES
37-
*--------------------------------------------------------------------------------------
24+
*----------------------------------------------------------------------------------------------------------------------------------------
25+
* System clock source | PLL_HSE_XTAL | PLL_HSE_XTAL | PLL_HSE_XTAL | PLL_HSE_XTAL
26+
* | (external 8 MHz clock) | (external 8 MHz clock) | (external 12 MHz clock)| (external 12 MHz clock)
27+
*----------------------------------------------------------------------------------------------------------------------------------------
28+
* SYSCLK(MHz) | 168 | 84 | 168 | 84
29+
*----------------------------------------------------------------------------------------------------------------------------------------
30+
* AHBCLK (MHz) | 168 | 84 | 168 | 84
31+
*----------------------------------------------------------------------------------------------------------------------------------------
32+
* APB1CLK (MHz) | 42 | 42 | 42 | 42
33+
*----------------------------------------------------------------------------------------------------------------------------------------
34+
* APB2CLK (MHz) | 84 | 84 | 84 | 84
35+
*----------------------------------------------------------------------------------------------------------------------------------------
36+
* USB capable (48 MHz precise clock) | YES | YES | YES | YES
37+
*----------------------------------------------------------------------------------------------------------------------------------------
3838
******************************************************************************
3939
* @attention
4040
*
@@ -136,8 +136,8 @@
136136
*/
137137

138138
/* Select the SYSCLOCK to start with (0=OFF, 1=ON) */
139-
#define USE_SYSCLOCK_168 (1) /* Use external 8MHz xtal and sets SYSCLK to 168MHz */
140-
#define USE_SYSCLOCK_84 (0) /* Use external 8MHz xtal and sets SYSCLK to 84MHz */
139+
#define USE_SYSCLOCK_168 (1) /* Use external 8MHz or 12 MHz xtal and sets SYSCLK to 168MHz */
140+
#define USE_SYSCLOCK_84 (0) /* Use external 8MHz or 12 MHz xtal and sets SYSCLK to 84MHz */
141141

142142
/**
143143
* @}
@@ -801,7 +801,11 @@ void SetSysClock(void)
801801
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
802802
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
803803
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
804+
#ifdef USE_DEBUG_8MHz_XTAL
804805
RCC_OscInitStruct.PLL.PLLM = 8;
806+
#else
807+
RCC_OscInitStruct.PLL.PLLM = 12;
808+
#endif
805809
RCC_OscInitStruct.PLL.PLLN = 336;
806810
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV2;
807811
RCC_OscInitStruct.PLL.PLLQ = 7;
@@ -838,7 +842,11 @@ void SetSysClock(void)
838842
RCC_OscInitStruct.HSEState = RCC_HSE_ON;
839843
RCC_OscInitStruct.PLL.PLLState = RCC_PLL_ON;
840844
RCC_OscInitStruct.PLL.PLLSource = RCC_PLLSOURCE_HSE;
845+
#ifdef USE_DEBUG_8MHz_XTAL
841846
RCC_OscInitStruct.PLL.PLLM = 8;
847+
#else
848+
RCC_OscInitStruct.PLL.PLLM = 12;
849+
#endif
842850
RCC_OscInitStruct.PLL.PLLN = 336;
843851
RCC_OscInitStruct.PLL.PLLP = RCC_PLLP_DIV4;
844852
RCC_OscInitStruct.PLL.PLLQ = 7;
@@ -869,4 +877,4 @@ void SetSysClock(void)
869877
/**
870878
* @}
871879
*/
872-
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/
880+
/************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/

targets/targets.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1340,10 +1340,10 @@
13401340
"default_toolchain": "ARM",
13411341
"supported_toolchains": ["GCC_ARM", "ARM", "IAR"],
13421342
"extra_labels": ["STM", "STM32F4", "STM32F437", "STM32F437VG", "STM32F437xx", "STM32F437xG"],
1343-
"macros": ["TRANSACTION_QUEUE_SIZE_SPI=2", "RTC_LSI=1"],
1343+
"macros": ["TRANSACTION_QUEUE_SIZE_SPI=2", "RTC_LSI=1", "HSE_VALUE=12000000"],
13441344
"inherits": ["Target"],
1345-
"device_has": ["ANALOGIN", "ANALOGOUT", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "SERIAL", "SLEEP", "RTC", "SPI", "SPISLAVE", "STDIO_MESSAGES", "TRNG"],
1346-
"features": ["LWIP"],
1345+
"device_has": ["ANALOGIN", "ANALOGOUT", "I2C", "I2CSLAVE", "INTERRUPTIN", "PORTIN", "PORTINOUT", "PORTOUT", "PWMOUT", "SERIAL", "SLEEP", "RTC", "SPI", "SPISLAVE","STDIO_MESSAGES", "TRNG"],
1346+
"features": ["LWIP"],
13471347
"release_versions": ["5"],
13481348
"device_name": "STM32F437VG"
13491349
},

0 commit comments

Comments
 (0)