Update SystemCoreClock macro
This commit is contained in:
parent
a63df51893
commit
295afaaf6c
@ -55,12 +55,12 @@ void SysTick_Handler(void) {
|
||||
}
|
||||
|
||||
void tick_init() {
|
||||
uint32_t ticks_per_ms = 16000000/ 1000;
|
||||
uint32_t ticks_per_ms = SystemCoreClock/ 1000;
|
||||
SysTick_Config(ticks_per_ms); // interrupt is enabled
|
||||
}
|
||||
|
||||
void tick_delay(uint32_t us) {
|
||||
uint32_t ticks_per_us = 16000000 / 1000 / 1000;
|
||||
uint32_t ticks_per_us = SystemCoreClock / 1000 / 1000;
|
||||
uint32_t us_between_ticks = SysTick->VAL / ticks_per_us;
|
||||
uint64_t start_ms = ticks_ms;
|
||||
while (us > 1000) {
|
||||
@ -74,12 +74,12 @@ void tick_delay(uint32_t us) {
|
||||
|
||||
// us counts down!
|
||||
void current_tick(uint64_t* ms, uint32_t* us_until_ms) {
|
||||
uint32_t ticks_per_us = 16000000 / 1000 / 1000;
|
||||
uint32_t ticks_per_us = SystemCoreClock / 1000 / 1000;
|
||||
*ms = ticks_ms;
|
||||
*us_until_ms = SysTick->VAL / ticks_per_us;
|
||||
}
|
||||
|
||||
void wait_until(uint64_t ms, uint32_t us_until_ms) {
|
||||
uint32_t ticks_per_us = 16000000 / 1000 / 1000;
|
||||
uint32_t ticks_per_us = SystemCoreClock / 1000 / 1000;
|
||||
while(ticks_ms <= ms && SysTick->VAL / ticks_per_us >= us_until_ms) {}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user