Compare commits

...

2 Commits

3 changed files with 9 additions and 3 deletions

View File

@ -45,7 +45,7 @@ extern volatile uint32_t wait_tick_ms;
* @brief Systemclock in milliseconds.
*
* This value must not be reset during the whole runtime.
*
* @warning In order to use this, you must assure that the read access is atomic.
*/
extern volatile uint64_t global_tick_ms;

View File

@ -261,7 +261,7 @@ int main()
/* Activate loundspeaker permanently */
loudspeaker_set(100);
} else if (pid_controller_active) {
/* In case temperature measuremnt is okay and controlelr is working, write output power */
/* In case temperature measurement is okay and controlelr is working, write output power */
oven_driver_set_power(pid_controller_output < 0 ? 0U : (uint8_t)pid_controller_output);
}

View File

@ -43,7 +43,13 @@ void systick_wait_ms(uint32_t ms)
uint64_t systick_get_global_tick()
{
return global_tick_ms;
uint64_t temp;
__disable_irq();
temp = global_tick_ms;
__enable_irq();
return temp;
}
bool __attribute__((optimize("O3"))) systick_ticks_have_passed(uint64_t start_timestamp, uint64_t ticks)