Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Внутренняя организация входящего и исходящего потока данных
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Программирование
Basilic
Здравствуйте. Я любитель изучающий STM32, пересел с AVR.

Интересует, как теоретически правильно организовать внутреннюю часть произвольного протокола.

В конкретно моем случае есть мастер UART с последующим конвертированием в RS-422 и некоторое кол-во слейвов.
Слейвы по запросу присылают скажем 8 байт.
Эти 8 байт UART на прерываниях заталкивает в буфер.

Вот вопрос что делать и как правильно делать дальше. Я вижу 2 варианта:
1) Делать некий общий для всех интерфейсов FIFO-очередь , откуда программа в главном цикле будет выцеплять данные и дальше выбирать на что их пустить.
2) Делать то же самое для каждого протокола.
3) Брать данные прямо из буфера, где они будут валяться до, чем тормозить весь интерфейс. Как то неряшливо...

Может быть есть статьи по теме?

Примерное то же самое с исходящим. Пихать данные в буфер и запускать обмен из основного цикла или в очередь, откуда протокол будет сам забирать относящиеся к нему данные?
Forger
Цитата(Basilic @ Jun 26 2017, 19:57) *
Может быть есть статьи по теме?

Вы, наверно, будете очень удивлены, но такие статьи есть, вот ссылка
Basilic
Цитата(Forger @ Jun 26 2017, 20:26) *
Вы, наверно, будете очень удивлены, но такие статьи есть, вот ссылка


Мне не нужен протокол. Мне интересно как правильно и эффективно управлять входящими данными.
Forger
Цитата(Basilic @ Jun 26 2017, 23:09) *
Мне интересно как правильно и эффективно управлять входящими данными.

Ссылка дана для небольшого примера. Сформируйте гуглю свой запрос иначе. Обратите внимание на уже готовые решения.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.