/** * system_stm32f10x.c — 最小化系统初始化 * Set HSI (8MHz) as system clock, no PLL. */ #include "stm32f10x.h" /* 弱符号:如果链接了完整版 system_stm32f10x.c,这个被覆盖 */ __attribute__((weak)) void SystemInit(void) { /* 关闭 HSE */ RCC->CR &= ~((uint32_t)RCC_CR_HSEON); /* 选择 HSI 作为系统时钟 */ RCC->CFGR &= ~((uint32_t)RCC_CFGR_SW); RCC->CFGR |= RCC_CFGR_SW_HSI; while ((RCC->CFGR & RCC_CFGR_SWS) != RCC_CFGR_SWS_HSI); /* 使能 GPIO 时钟(仅示例,实际在 Led_Create 中使能) */ } __attribute__((weak)) void SystemCoreClockUpdate(void) { SystemCoreClock = 8000000; }