UART, RingBuffer и FreeRTOS. Развлекаемся с приёмом и передачей.

Как применять показанный ранее кольцевой буфер для приёма и передачи информации по UART (и не только) в тасках RTOS.


devprodest

Постановка задачи следующая: нужно принять по uart некоторое количество пакетов, линия может быть зашумлена и в паузах могут появлятся фантомные байты (которые передатчик не передавал), отделить пакеты от мусора и выполнить какие-то действия, скорость соединения не большая, допустим 115200.

Статья будет являться небольшой демонтрацией для работы с FreeRTOS и тем кольцевым буфером, о котором я однажды писал. А uart здесь каким боком? А таким, что данная заметка будет еще и небольшим туториалом для одного хорошего человека.

Погнали...

Keil, Milandr, FreeRTOS. Нет ничего проще.

Создаем и проект для Миландр и подключаем с помощью Manage Run-Time Environment операционную систему FreeRTOS


devprodest
Cover Image

Вы также часто пользуетесь кейлом как и я? Программируете микроконтроллеры компании Миландр? Вы хотите легко и просто подключить и использовать в своём проекте FreeRTOS? Тогда эта маленькая заметка для вас.

План действий:

  • создаём проект;
  • выбираем используемые пакеты;
  • конфигурируем операционку;
  • запускаем и пользуемся.

Отладочная плата для 1986ВЕ91Т.

Самодельная отладочная плата для микроконтроллера 1986ВЕ91Т.


devprodest
Cover Image

В стране во всю силу идёт импортозамещение, компания Миландр выпускает довольно неплохие контроллеры, правда отладочные платы стоят не дёшево, да и не хватает порой в них необходимого функционала, а иногда он слишком большой. Но выход есть - изготовление своей отладки.

Подключаем FreeRTOS к Миландр.

Миландр и FreeRTOS. Как установить и настроить FreeRTOS на микроконтроллере Миландр. Описание процесса настройки и использования.


devprodest
Cover Image

О полезности операционных систем реального времени можно говорить часами, ровно как и о их вреде. Но раз уж читаете эту запись, значит RTOS вам действительно нужна.

Здесь не будет описания как пользоваться FreeRTOS. Всё что будет затронуто - это запуск на микроконтроллере 1986ВЕ92У (К1986ВЕ92QI) фирмы Миландр. В принципе данный гайд аналогичен для 91, 93 и 94 чипа.

Если разобраться, и разложить всё по пунктам, то можно привести всю задачу к нескольким простым шагам:

  • скачиваем FreeRTOS и распаковываем;
  • создаем проект в Keil (я использую версию 5);
  • подключаем операционную систему;
  • настраиваем и пользуемся.

Управление выводами порта совмещенного с JTAGом.

Управление выводами портов MDR_PORTB и MDR_PORTD, при использовании отладочного интерфейса JTAGA и/или JTAGB. Глюки JTAG. Что делать если отваливается JTAG.


devprodest
Cover Image

Данная статья носит характер небольшой заметки, а не учебного пособия.

Одной из особенностей микроконтроллеров Миландр серии 9х (точно знаю о 92, 93 с которыми работаю), на мой взгляд, это не совсем продуманная организации управления портами ввода вывода, а именно отсутствие привычных для пользователей stm32 регистров BRR и BSRR, которые позволяют атомарно устанавливать и сбрасывать их состояние. Соответственно необходимо выполнять команды чтение-модификация-запись, что в принципе приемлемо, но...