STM32 и аналог ардуиновской millis()

В ардуиновском языке Wiring есть весьма удобная функция
unsigned long timme = 0;
...
void loop()
{
if((millis() - timme) > 1000) // интервал 1000мс = 1сек
{
// что-то делаем
timme = millis();
}
}Что-то делается раз в секунду.
У stm32 есть системный таймер
Исходя из этого, чтоб получить такой же механизм на stm32, нужно всего лишь заменить
uint32_t timme = 0;
...
while(1)
{
if((HAL_GetTick() - timme) > 1000) // интервал 1000мс = 1сек
{
// что-то делаем
timme = HAL_GetTick();
}
}Если вы не используете HAL, тогда можно настроить любой таймер так же как описана работа SysTick.
Это всё, всем спасибо

Телеграм-чат istarik
Телеграм-чат STM32
- 0
- stD

89759
Поддержать автора


Комментарии (0)