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

Две задачи пишут в отладочный UART, и строки перемешиваются

Задачи motor_task и net_task печатают диагностику через одну функцию uart_print(), которая отправляет строку побайтно. В терминале появляются строки вида:

motor: speNET: link uped=1200

Как правильно разделить UART между задачами?

  • Захватывать мьютекс на вывод всей строки
  • Запрещать прерывания на время вывода строки
  • Вставить vTaskDelay(1) после каждого вывода
  • Дать обеим задачам одинаковый приоритет

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

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

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

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