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

 
 
> CAN на STM32F + FreeRTOS
Boriska
сообщение Apr 2 2013, 09:05
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 65
Регистрация: 28-11-07
Пользователь №: 32 772



Пытаюсь обрабатывать входящие сообщения по шине CAN. Хотелось бы чтобы полученные сообщения были гарантированно обработаны, а если ресурсов не хватает, то чтобы они и не были получены.

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

А если в обработчике очистить флаг прерывания, прочитать и очистить почтовый ящик, то задача обработки получит управления, но тут может возникнуть ситуация, когда сообщение получено, прочитано, но не обработано, поскольку задаче по обработке не хватило ресурсов.
Как можно решить такую задачу?
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 24th July 2025 - 19:02
Рейтинг@Mail.ru


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