При отключённых прерываниях функция millis() прекращает считать время. 1 Если прерывания отключены более чем на два переполнения таймера, полный цикл обновления пропускается, и часы теряют время. 2
Также при отключённых прерываниях функция millis() не увеличивает своё значение, то есть результат может быть неточным. 2