Элементарно. Вот так можно сделать паузу примерно на SCREEN_PAUSE миллисекунд в конечном автомате:а как сделать задержку таймером базовым?
Код: Выделить всё
case SCREEN_WAIT: // wait
if(Tms - Tscr_last > SCREEN_PAUSE){
//USB_send("Pause ends\n");
ScrnState = SCREEN_UPDATENXT;
}
Код: Выделить всё
volatile uint32_t Tms = 0;
void sys_tick_handler(void){
++Tms;
}
