Menu
CoddyTech

Часы на millis()

Часть раздела Отсчёт времени без delay путешествия по Arduino на Coddy. Урок 1 из 18.

В плате есть встроенные часы. millis() возвращает количество миллисекунд, прошедших с момента запуска платы: 0 при включении питания, 1000 через одну секунду, 60000 через минуту.

Вам никогда не нужно запускать или сбрасывать эти часы. Они отсчитывают время сами по себе, даже когда ваш скетч находится внутри delay(), и вы можете считывать показания в любой момент:

Serial.println(millis());   // выводит время в мс

До сих пор delay() был единственным способом отмерять время, и он останавливает весь скетч на время ожидания. Считывание показаний часов ничего не останавливает: скетч продолжает выполняться и проверяет, сколько времени прошло.

challenge icon

Задание

Легко

Выводи показания часов платы раз в секунду:

  • в loop() выводи millis() с помощью Serial.println()
  • оставь после этого delay(1000)

Нажми Run и наблюдай за числами в мониторе Serial, затем нажми Check.

Попробуйте сами

void setup() {
  Serial.begin(9600);
}

void loop() {
  // выведите здесь время, прошедшее с момента запуска платы

  delay(1000);
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Отсчёт времени без delay

Потренируйтесь самостоятельно: Песочница Arduino