Вступить в клуб →
лёгкаявопросFreeRTOS: задачи, очереди и синхронизация

Задача опрашивает флаг в цикле, и светодиод статуса перестал мигать

Задача приёма с приоритетом 3 ждёт данных так:

void rx_task(void *arg) {
    for (;;) {
        while (!rx_ready) { }   /* rx_ready выставляет прерывание */
        rx_ready = 0;
        parse_packet();
    }
}

Задачи мигания светодиодом и логирования (приоритет 1) после старта ни разу не получают процессор. Что исправить?

  • Ждать события блокирующим вызовом ОС
  • Поднять приоритет задачи логирования до 3
  • Увеличить частоту тика configTICK_RATE_HZ
  • Увеличить стек задач светодиода и логов

🔒 Проверка ответа — для участников клуба

  • Проверка ответа
  • Подсказка, если застряли
  • Разбор с объяснением, почему так
  • Прогресс по всем задачам и виртуальные собеседования
Зарегистрироваться →

Регистрация занимает минуту

Другие задачи раздела