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

 
 
> Обработка двух прерываний ?, ATMEGA162
zombi
сообщение Jan 27 2009, 12:09
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 076
Регистрация: 10-09-08
Пользователь №: 40 106



Столкнулся с проблемой.
Долго мучался и ветаки поборол, но как-то странно!

Опишу кратко.
Используется два прерывания:

1:0x01A Timer/Counter1 Compare Match A - режим CLC (частота 44100 Hz)
2:0x020 Timer/Counter0 Compare Match - режим CLC ( частота 500 Hz)

У второго прерывания приоритет ниже и первая команда его обработчика SEI.
Все регистры и флаги сохраняются в каждом обработчике.
Проблема в том что во втором прерывании необходимо читать состояние PIND.4
Состояние пина иногда считывается 0-м в то время как он в 1-це.

В таком виде глючило:

CBI PORTB,7
SBI PORTB,7
ROL RTMP
SBIC PIND.4
ANDI RTMP,$01

добавил запрет и разрешение прерываний и глюк ПОЛНОСТЬЮ пропал:

CLI
CBI PORTB,7
SBI PORTB,7
ROL RTMP
SBIC PIND.4
ANDI RTMP,$01
SEI

Что это, глюк меги или я чегото не понимаю?
Ктонибудь сталкивался с подобным?
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- zombi   Обработка двух прерываний ?   Jan 27 2009, 12:09
- - _Pasha   Цитата(zombi @ Jan 27 2009, 16:09) CLI CB...   Jan 27 2009, 12:30
- - zombi   Я ж написал что "Все регистры и флаги сохраня...   Jan 27 2009, 12:39
- - _Pasha   Цитата(zombi @ Jan 27 2009, 16:09) У втор...   Jan 27 2009, 12:50
- - zombi   ЦитатаВ стеке? Код полностью огласите плз. Полност...   Jan 27 2009, 13:23
|- - _Pasha   Опускаю Ваши небрежности (код выхода из TIM0, код ...   Jan 27 2009, 13:39
|- - defunct   Цитата(zombi @ Jan 27 2009, 15:23) Попроб...   Jan 27 2009, 14:20
- - zombi   Спасибо всем ответившим. Цитатапожертвуйте регистр...   Jan 27 2009, 15:16
|- - _Pasha   Цитата(zombi @ Jan 27 2009, 18:16) А что ...   Jan 27 2009, 16:06
|- - uau   Цитата(zombi @ Jan 27 2009, 18:16) А что ...   Jan 28 2009, 10:46
- - zombi   Цитатато проверьте таблицу векторов прерываний - в...   Jan 27 2009, 16:18
- - _Pasha   Значит где-то чистят Ваш RTMPA без сохранения/восс...   Jan 27 2009, 16:30
|- - zombi   Цитата(_Pasha @ Jan 27 2009, 19:30) Значи...   Jan 27 2009, 16:42
- - SasaVitebsk   Интересно. Я не сталкивался, но в первых моделях у...   Jan 27 2009, 18:12
- - zombi   Прошу прощения за поднятую бучу! Все оказалось...   Jan 28 2009, 14:48


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

 


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


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