реклама на сайте
подробности

 
 
> [stm32f415]Согласование обмена информации между портам
SergeyTT
сообщение Feb 5 2017, 14:56
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 53
Регистрация: 3-07-06
Из: Харьков
Пользователь №: 18 533



Здравствуйте,All!

Прошу помочь в разрешении следующей проблемы:
нужно сопрячь 2 устройства, имеющих скорости по компорту отличающуюся в 30 раз (1М5 и 56К)
тип информации - пакеты,разной длины,могут рваться на пол-дороги и приходить по 2 и более в пачке. Они имеют известный хидер, я их парсю без проблем на лету в обработчике прерывания,благо скорострельности камня хватает.
Все это крутится под FreeRTOS на stm32f415.
В обработчике прерывания кладу символ в кольцевой буфер и отдаю его парсеру(инлайн в обработчике). Если парсер собрал пакет - отдаю указатель на начало пакета и его длину через очередь гейткиперу сопряженного порта. Гейт копирует пакет в свой буфер передачи и разрешает передачу по порту.
Все прекрасно работает до неопределенного момента - может зависнуть вся система,а может тупо перейти в вызовы
задач каждую миллисекунду.
Неопределенный момент может возникнуть как и через 10 сек после старта , так и через несколько часов.
Ход процесса я смотрю с помощью SEGGER SYSVIEW,очень полезная вещь.

Буду рад,если кто либо поможет мне разобраться,где же порылась собака.

WBR, Sergey
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Kabdim
сообщение Feb 5 2017, 15:12
Сообщение #2


Знающий
****

Группа: Свой
Сообщений: 558
Регистрация: 26-11-14
Из: Зеленоград
Пользователь №: 83 842



Ну что ж начнем сеанс спиритизма и телепатии. Переполненение буфера? Другие длинные обработчики прерываний? Слишком длинный пакет? Где-то бьётся память?
ЗЫ Когда читаешь такой пост с описанием как-то подсознательно ождиаешь увидеть либо минмальный кусок кода на котором воспроизводится баг, либо попытки автора использовать data breakpoints в критичных для его алгоритма местах.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 1st August 2025 - 17:33
Рейтинг@Mail.ru


Страница сгенерированна за 0.01343 секунд с 7
ELECTRONIX ©2004-2016