Форум Микро-Чип
Поиск и заказ электронных компонентов
 

Вернуться   Форум Микро-Чип > Продукция MICROCHIP

Продукция MICROCHIP Технические вопросы по всей продукции Microchip

Ответ
 
Опции темы Опции просмотра
Старый 20.04.2016, 12:56   #1
Abivan
Member
 
Регистрация: 26.02.2007
Сообщений: 38
Вес репутации: 242/44
Abivan has a spectacular aura aboutAbivan has a spectacular aura aboutAbivan has a spectacular aura about
По умолчанию harmony + usart + rtos

вроде элементарная задача, отправить и принять данные в usart.
Но что-то пока не решил какую модель использовать.
Как было раньше до гармонии.
прием: пришел байт словил прерывание положил байт в буфер, принял решение(таймаут или размер сообщения) конец посылки выставил семафор "конец посылки". Задача обмена по усарт ожидает прихода семафора.
Семафор установлен, обрабатываем посылку, загружаем ответ в буфер и в прерывании отправляем ответ. переключаемся на прием при отправке последнего байта.
теперь гармония. Она предлагает 3 режима работы
1. побайтовая отправка (Byte model)
2. отправить/принять буфер (R/W model)
3. очередь (Byffer Queue)

1 и 3 режим имеют колбэк ф-ии, вызываемые в прерывании.
Вроде Byte model позволяет сделать, как раньше, но у очереди есть приятная фишка - получить вызов колбэк ф-ии после отправки всех байт из буфера, но с приемом там не очень удобно.
А 2-й режим похоже вообше не годится в моем случае.

Хотелось бы услышать мнения, ну и заодно выяснить много ли тут народу гармонию с ртос использует.
Abivan вне форума   Ответить с цитированием
Старый 20.04.2016, 13:39   #2
Petr
Senior Member
 
Аватар для Petr
 
Регистрация: 25.02.2007
Возраст: 47
Сообщений: 1,734
Вес репутации: 3438/93
Petr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond reputePetr has a reputation beyond repute
По умолчанию Re: harmony + usart + rtos

Цитата:
Сообщение от Abivan Посмотреть сообщение
вроде элементарная задача, отправить и принять данные в usart.
Но что-то пока не решил какую модель использовать.
Как было раньше до гармонии.
прием: пришел байт словил прерывание положил байт в буфер, принял решение(таймаут или размер сообщения) конец посылки выставил семафор "конец посылки". Задача обмена по усарт ожидает прихода семафора.
Семафор установлен, обрабатываем посылку, загружаем ответ в буфер и в прерывании отправляем ответ. переключаемся на прием при отправке последнего байта.
теперь гармония. Она предлагает 3 режима работы
1. побайтовая отправка (Byte model)
2. отправить/принять буфер (R/W model)
3. очередь (Byffer Queue)

1 и 3 режим имеют колбэк ф-ии, вызываемые в прерывании.
Вроде Byte model позволяет сделать, как раньше, но у очереди есть приятная фишка - получить вызов колбэк ф-ии после отправки всех байт из буфера, но с приемом там не очень удобно.
А 2-й режим похоже вообше не годится в моем случае.

Хотелось бы услышать мнения, ну и заодно выяснить много ли тут народу гармонию с ртос использует.
Так байт принять или "опрос" сделать?

"Гармонь" не использую.
Ось крайне редко.
Методы обмена по usart применяю разные для разных задач.
Petr вне форума   Ответить с цитированием
Старый 20.04.2016, 14:28   #3
Abivan
Member
 
Регистрация: 26.02.2007
Сообщений: 38
Вес репутации: 242/44
Abivan has a spectacular aura aboutAbivan has a spectacular aura aboutAbivan has a spectacular aura about
По умолчанию Re: harmony + usart + rtos

Цитата:
Сообщение от Petr Посмотреть сообщение
Так байт принять или "опрос" сделать?
есно опрос, например модбас аски(не рту чтоб без таймингов). Созрел еще вопросик. режим 1(Byte mode) обеспечит непрерывную передачу? скорости небольшие до 115200
Abivan вне форума   Ответить с цитированием
Старый 21.04.2016, 08:09   #4
AleksBak
Senior Member
 
Аватар для AleksBak
 
Регистрация: 27.02.2007
Адрес: г. Баку
Сообщений: 3,125
Вес репутации: 2885/101
AleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond reputeAleksBak has a reputation beyond repute
По умолчанию Re: harmony + usart + rtos

Цитата:
Сообщение от Abivan Посмотреть сообщение
есно опрос, например модбас аски(не рту чтоб без таймингов). Созрел еще вопросик. режим 1(Byte mode) обеспечит непрерывную передачу? скорости небольшие до 115200
Не связывайтесь лучше с этой муторней в виде гармонии. Вот насколько я не хотел отвечать вообще в темах по пыкам, но как увидел знакомый и давным-давно (еще со старого форума Вас знаю) известный ник (и на сахаре Вы есть), то вот пересилил себя и ответил т.к. решил предостеречь человека. Вот у СТМ (это ARM-ы) там гадают использовать Кубовский API или нет. И там реально это правильный выбор и иногда и его использовать можно. По крайней мере для быстрого тестирования чего-то точно очень нужная вещь. А тут - это "ПО" мозги выносит и заставляет (именно заставляют и навязывают) использовать свою структуру проекта, какие-то непонятные и дибильные структуры. Все не по человечески сделано. Привяжитесь еще к ней не дай Бог - потом долго отплевываться будете. Реально так. Лучше взять готовый демо-проект от самой FreeRTOS и с ним разбираться. Этот проект есть у них под 32-е пыки (их там несколько штук всего в семействе различных - так что можно сказать у FreeRTOS есть примеры под все возможные 32-е пыки). Скачайте Курница и начните его изучать - там как раз есть описание как следует правильно принимать что-то по USART. Как Вы хотите по одному байту (и как в дибильной гармонии предлагают) неправильно и очень неэффективно (а с учетом кода от этого "ПО" в виде "гармонии", то вообще никак получится). Вы если так поступите, то в итоге одинаковое кол-во времени потратите. Но только вместе с "гармоничным ПО" если - время и жизнь уйдет совершенно впустую и мало того еще психологическую травму оставит (реально так). А Вам это надо? Нет конечно. На микрочиповском форуме есть большая тема где люди так и пишут про эту фигню, "что зачем это ПО" и т.п. Даже картинки с майками где такие слова нарисованы есть там. Вы на СТМ-овском форуме такое видели вообще?? Там просто спрашивают, что стоит или нет есть "бесплатный" сыр и про баги/раздутость пишут, а тут так вот.
AleksBak вне форума   Ответить с цитированием
Старый 21.04.2016, 10:15   #5
Abivan
Member
 
Регистрация: 26.02.2007
Сообщений: 38
Вес репутации: 242/44
Abivan has a spectacular aura aboutAbivan has a spectacular aura aboutAbivan has a spectacular aura about
По умолчанию Re: harmony + usart + rtos

Пасиб за ответ и совет. Была б моя воля я б и с 32-ми не связывался бы. Для той задачи которую решаю мне б за глаза хватило бы и пик 24-го с тнео(тнкернел) или даже осы. Но сказали будет пик32 и freertos. Вот я и решил раз уж так, то до кучи пусть и гармония будет. Эффективность кода при производительности 32-го вообще не волнует. Запустил проц на максимальной частоте. Кодовой памяти девать некуда, а озу 64к, куда мне столько.
Сюда решил запостить, потому как понадеялся, xто хоть тут гармониста найду. Но похоже опять мне быть первопроходцем :-)
Abivan вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Пропадает байт 0x55 при передачи USART ATAMAN Продукция MICROCHIP 15 13.02.2015 19:29
Два USART. Нужен совет по выбору PIC Vovka Продукция MICROCHIP 34 07.04.2011 15:37
MAX232 и USART, отсутствует сигнал на выходе. EviL_LaugH Общетехнические вопросы 15 31.01.2011 00:40
Помогите отладить программу Timer USART ADC ppram5 Продукция MICROCHIP 16 17.02.2009 00:34
PIC16F877A и USART RomanGB Продукция MICROCHIP 2 09.11.2008 17:02


Часовой пояс GMT +3, время: 23:47.


Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd. Перевод: zCarot