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

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

Cover Image

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

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

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

Делаем простой и универсальный кольцевой буфер.

Делаем простой кольцевой буфер

Постоянно приходится передавать и принимать данные из/в UART, SPI, I2C и др. Всё просто и понятно когда посылки идут редко и есть время на их обработку, а что же делать если посылки могут идти пачками за один раз, а потом долгое время отсутствовать и мы при обработке первой не успеваем обрабатывать остальные и они теряются или портятся. Значит нужно использовать какой-то буфер, откуда потом понемногу брать и обрабатывать данные, а что делать если мы уже заполнили буфер и нам уже некуда писать? Писать дальше начиная с первого (на самом деле с нулевого) элемента буфера, дополнительно нужно учитывать место с которого можно читать данные и место с которого можно писать. Вот мы и получаем наш кольцевой буфер.