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

 
 
> Обработка IRQ без использования средств uC/OS
Vladimir_T
сообщение Oct 15 2007, 04:04
Сообщение #1


Знающий
****

Группа: Свой
Сообщений: 517
Регистрация: 7-02-06
Пользователь №: 14 073



Здравствуйте, хотелось бы использовать обработку векторных прерываний IRQ без использования средств uC/OS на STR911. Поэтому хотел спросить у коллег, как лучше оформить обработчики IRQ, с тем, чтобы прерывания обрабатывались в фоновом режиме и использовались средства ОС (флаги событий и др.). Буду благодарен за ссылки или решения из личного опыта.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AlexandrY
сообщение Oct 15 2007, 05:53
Сообщение #2


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Когда я юзал uCOS, на многих процах, то всегда делал один и тотже финт.
Чтобы из чистых прерываний (без сохранения контекста задач) вызывать сервисы RTOS я организовывал программный вызов одного промежуточного прерывания которое уже было в контексте RTOS и оно обслуживало только запросы от чистых прерываний.
Промежуточное прерывание в свою очередь выставляло флаги, семафоры, очереди сообщений и все прочее без блокировки.
Хардварным источником промежуточного прерывания могло быть что угодно, он выбирался из тех что не используются в системе и блокировался чтобы не сбивать описанный процесс.

uCOS в этом смысле простая ось. А есть оси где прерывания в контексте RTOS еще деляться на легкие и тяжелые, там цепочка прерываний удлиняется еще на одну стадию.


Цитата(Vladimir_T @ Oct 15 2007, 07:34) *
Здравствуйте, хотелось бы использовать обработку векторных прерываний IRQ без использования средств uC/OS на STR911. Поэтому хотел спросить у коллег, как лучше оформить обработчики IRQ, с тем, чтобы прерывания обрабатывались в фоновом режиме и использовались средства ОС (флаги событий и др.). Буду благодарен за ссылки или решения из личного опыта.
Go to the top of the page
 
+Quote Post



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

 


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


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