diff --git a/build/final.elf b/build/final.elf index 8cba364..840b7af 100755 Binary files a/build/final.elf and b/build/final.elf differ diff --git a/build/timer.S b/build/timer.S index 25a5850..d8141ff 100644 --- a/build/timer.S +++ b/build/timer.S @@ -56,7 +56,7 @@ tim4_init: .loc 1 14 35 ldr r3, .L2+4 .loc 1 14 41 - movw r2, #47999 + movw r2, #30463 str r2, [r3, #40] .loc 1 17 35 ldr r3, .L2+4 diff --git a/build/timer.i b/build/timer.i index c8a2bbe..0f9db82 100644 --- a/build/timer.i +++ b/build/timer.i @@ -2137,7 +2137,7 @@ void tim4_init(void) { - ((struct timer *) (0x40000800U))->PSC = (uint16_t) 48000 - 1; + ((struct timer *) (0x40000800U))->PSC = (uint16_t) 96000 - 1; ((struct timer *) (0x40000800U))->ARR = (uint16_t) 0xFFFF; diff --git a/build/timer.o b/build/timer.o index 917c295..7cca306 100644 Binary files a/build/timer.o and b/build/timer.o differ diff --git a/src/timer.c b/src/timer.c index 0bec1bd..971b392 100644 --- a/src/timer.c +++ b/src/timer.c @@ -10,8 +10,8 @@ void tim4_init(void) { TIM4->CR2 = 0x0000; // Set prescaler - // f_clk = 48MHz -> /48000 = 1KHz counting frequency = 1ms - TIM4->PSC = (uint16_t) 48000 - 1; + // f_clk = 96MHz -> 96E6/96E3 = 1E3 = 1KHz counting frequency = 1ms + TIM4->PSC = (uint16_t) 96000 - 1; // Set ARR to maximum value to get 1ms between updates TIM4->ARR = (uint16_t) 0xFFFF;