|
Виж темите без отговор | Виж активните теми
Дата и час: Вто Юли 28, 2026 1:38 am
|
Страница 1 от 1
|
[ 5 мнения ] |
|
Проблем с прекалено чести прекъсвания
| Автор |
Съобщение |
|
gdh
Ранг: Минаващ
Регистриран на: Нед Окт 15, 2006 8:01 pm Мнения: 46
|
 Проблем с прекалено чести прекъсвания
Някой може ли да ме насочи към конкретна информация защо се получава следния проблем и как може да се ограничи или премахне нацяло.
Имам таймер който генерира прекъсване на всеки 50мк. сек. Честотата на контролера е 32Мхц. Проблема е че I2C и USART модулите спират да комуникират. USART не успява да прати нищо а при И2Ц спира на рандом места поради липса на ACK бит от slave-a. Когато увелича интервала на таймера всичко се оправя. Схемата е с PIC18F4580 през Proteus. Във самото прекъсване има няколко иф-а които клатят пинове, тоест нищо сравнително бавно за изпълнение.
|
| Пет Авг 31, 2007 7:59 pm |
|
 |
|
zaprqn
Ранг: Новодошъл
Регистриран на: Сря Яну 24, 2007 11:00 pm Мнения: 158
|
с влизането в прекъсването сейваш ли си всичко което ти трябва и на излизане да си го restore-ваш? с retfie ли излизаш от прекъсването ?
|
| Пет Авг 31, 2007 9:38 pm |
|
 |
|
gdh
Ранг: Минаващ
Регистриран на: Нед Окт 15, 2006 8:01 pm Мнения: 46
|
Пиша на С18. Прекъсването е с нисък приоритет. Компилатора сам си записва регистрите. По късно ще пробвам да го сложа с висок приоритет където се ползват shadow регистрите и според док-а трябва да е по-бързо. Като вляза в прекъсване го забранявам временно и при излизане пак го разрешавам.
От какво ли може да се получава?
|
| Съб Сеп 01, 2007 10:18 am |
|
 |
|
Predator_MF
Ранг: Форумен бог
Регистриран на: Чет Окт 07, 2004 1:22 pm Мнения: 1949 Местоположение: София
|
Намали до минимум каквато и да е обработка при прекъсването от таймера, с приоритет едва ли ще има ефект, с такива времена яде много CPU време само за влизане в прекъсване и излизане от него
|
| Съб Сеп 01, 2007 11:32 am |
|
 |
|
plameniv
Ранг: Форумен бог
Регистриран на: Нед Окт 10, 2004 9:55 am Мнения: 1718
|
 Ha
Мини на семблер и ще си решиш проблема , ама си сметни и времената на инструкциите че пак може да е същото 
_________________ Избийте баламите и тарикатите сами ще умрат!
Няма невъзможни работи - има много трудни работи!
----------------------------------------------------------------------------------
"Я в Москве с киркой уран найду, при такой повышенной зарплате" !
|
| Съб Сеп 01, 2007 3:32 pm |
|
|
|
Страница 1 от 1
|
[ 5 мнения ] |
|
Кой е на линия |
Потребители разглеждащи този форум: 0 регистрирани и 2 госта |
|
Вие не можете да пускате нови теми Вие не можете да отговаряте на теми Вие не можете да променяте собственото си мнение Вие не можете да изтривате собствените си мнения Вие не можете да прикачвате файл
|
|