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

 
 
> LPC-2214 + uC/OS-II - VIC problem!, Потери прерываний - помогите!
Domnitch
сообщение Feb 2 2005, 13:19
Сообщение #1


Участник
*

Группа: Новичок
Сообщений: 17
Регистрация: 15-10-04
Пользователь №: 883



Дано: Philips LPC-2214, Micrium uC/OS-II, IAR 4.11
От таймера 0 идут прерывания (100 тиков/с), они заведены через VIC на OSTimeTick()
Кроме этого, прерывания генерируются по фронтам/спадам на входе P0.10, P0.11 - по этим прерываниям запускается таймер 1, замеряющий длину импульса на входе

Проблема:
Входные импульсы на P0.10, P0.11 периодически теряются.
Есть подозрение - из-за того, что OSTimeTick() запрещает прерывания на время своей работы (порядка 20 мкс), а потому прерывание от входа, случившееся во время этого запрета, просто пропадает.

Спрашивается:
1) возможны ли другие причины потерь импульсов (на входе они заведомо есть, тест-вертушка без ОС их обнаруживает надежно)
2) как настроить VIC и обработчики прерываний, чтобы прерывание от входа не пропадало, а лишь задерживалось на время запрета прерываний?

Помогите, пожалуйста.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
one_man_show
сообщение Feb 5 2005, 12:52
Сообщение #2


Помогу, чем смогу
******

Группа: Админы
Сообщений: 2 786
Регистрация: 28-05-04
Из: Москва
Пользователь №: 25



На мой взгляд, если Вы используете РТОС, то процессы, которые хотите обслуживать, не должны быть соизмеримы по времени с тикером. В операционке тикер - это самый быстрый процесс. Если есть какой-то процесс быстрее тикера, то операционка не будет успевать обрабатывать этот процесс. Что и наблюдается в Вашем случае. (Если я правильно понял Вашу проблему)


--------------------
С уважением,
Ваган Саруханов
Проекты|Форум|Facebook|Linkedin
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 14th August 2025 - 23:18
Рейтинг@Mail.ru


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