0Pricing
Arduino & IoT Academy · Урок

Запуск двух задач одновременно

Одновременно мигайте светодиодом и считывайте состояние кнопки.

«Запуск двух задач одновременно» — бесплатный урок Arduino & IoT Academy на CoddyKit. Это урок 4 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Arduino & IoT Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Arduino & IoT Academy содержит 4 уроков всего.

Части этого урока еще не переведены и отображаются на английском.

The Multitasking Dream

Real devices do many things at once: blink a light while watching a button. With non-blocking timing your board can finally juggle both.

Each Task Gets Its Timer

The trick is one timer per task. Give the blink its own previousMillis and interval, separate from anything else you want to run.

Track Time Separately

Keep a dedicated previousMillis for the LED so its schedule never tangles with other timed jobs in the same loop.

unsigned long ledPrevious = 0;
const long ledInterval = 500;

Blink Block

First, the blink block checks its own timer. When 500 milliseconds pass it toggles the LED and resets, then control moves on.

if (millis() - ledPrevious >= ledInterval) {
  ledPrevious = millis();
}

Read the Button Every Loop

Right after the blink block, you read the button on every single pass. Because nothing froze, no press is ever missed.

int state = digitalRead(buttonPin);

Two Jobs, One Loop

Now the same loop handles both: it times the blink and checks the button thousands of times a second. They feel simultaneous.

Add a Third Task

Want more? Just add another timer and block, like reading a sensor every two seconds. The pattern scales to many tasks cleanly.

Keep the Loop Fast

The rule that makes it work: never block. Keep every part of the loop quick so it can return often and serve all tasks fairly.

Not True Parallelism

The board still does one thing at a time, just very fast. This is cooperative multitasking, where each task does a little and yields.

Banish the Big delay

One long delay anywhere breaks the whole illusion, since it freezes every task. Replace pauses with millis checks to keep things smooth.

The Heart of Responsive IoT

This state machine style, many small timed checks in one loop, is how responsive sensors, displays, and connected devices are really built.

Quick Check

How does one loop blink an LED and read a button at the same time?

Recap

You combined timers in one loop to multitask: blink and read a button together, with no blocking delay. That is the core skill behind real IoT devices. 🚀

Часто задаваемые вопросы

Урок «Запуск двух задач одновременно» бесплатный?

Да — полный текст урока «Запуск двух задач одновременно» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Arduino & IoT Academy, подпишись на CoddyKit PRO. Курс Arduino & IoT Academy содержит 4 уроков всего.

Чему я научусь в уроке «Запуск двух задач одновременно»?

Одновременно мигайте светодиодом и считывайте состояние кнопки. Ты практикуешь Arduino & IoT Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Arduino & IoT Academy?

Предыдущий опыт не требуется. Arduino & IoT Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 4 из 4.

Сколько времени занимает урок «Запуск двух задач одновременно»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Arduino & IoT Academy?

Да. Каждый урок Arduino & IoT Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. int, float, bool в Arduino
  2. Почему delay() блокирует всё
  3. Мигание без delay с использованием millis
  4. Запуск двух задач одновременно
← Назад к Arduino & IoT Academy