fix: ifdef

This commit is contained in:
2024-12-09 06:34:04 +06:00
parent cb320a9537
commit c595663b78
3 changed files with 13 additions and 4 deletions

View File

@@ -3,9 +3,14 @@
#include <stdint.h>
// #define USE_ROM_TABLES
#ifdef USE_ROM_TABLES
#define CPU_CLK_TABLE 0x00046E68
#define XTAL_TABLE_ROM 0x00046E10
#define CPU_CLK_TABLE_ADDR 0x00046E68
#define XTAL_TABLE_ADDR 0x00046E10
/* for init inline asm */
#define CPU_CLK_TABLE ((const uint32_t*)CPU_CLK_TABLE_ADDR)
#define XTAL_TABLE ((const uint32_t*)XTAL_TABLE_ADDR)
#else
/* CPU clock frequency table (Hz) */
@@ -32,6 +37,10 @@ static const uint32_t XTAL_TABLE[] = {
14318000, /* 14.318 MHz */
12000000, /* 12 MHz */
};
/* for init inline asm */
#define CPU_CLK_TABLE_ADDR ((uint32_t)CPU_CLK_TABLE)
#define XTAL_TABLE_ADDR ((uint32_t)XTAL_TABLE)
#endif
/* System Clock Frequency (Core Clock)*/

View File

@@ -17,7 +17,7 @@ int main(void) {
SystemCoreClockUpdate();
printf("SystemCoreClock afer update: %d Hz\n", SystemCoreClock);
SysTick_Config(100); // tick / 100 cycles
SysTick_Config(SystemCoreClock / 1000);
PERI_ON->SOC_PERI_FUNC1_EN |= BIT_PERI_GPIO_EN;
PERI_ON->PESOC_CLK_CTRL |= APBPeriph_GPIO_CLOCK;

View File

@@ -37,7 +37,7 @@ __attribute__((naked)) void SystemInit(void) {
"bl main\n"
"b 1b\n" /* if main ever returns */
:
: "i"(&SYSTEM_CTRL->CLK_CTRL1), "i"(&CPU_CLK_TABLE),
: "i"(&SYSTEM_CTRL->CLK_CTRL1), "i"(CPU_CLK_TABLE_ADDR),
"i"(&SystemCoreClock), "i"(CPU_CLK_POS)
: "r0", "r1", "r2", "r3", "memory");
}