Прерывание от часов реального времени.

Дисплеи, датчики и прочие функциональные узлы, управляемые МК.
Ответить
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Прерывание от часов реального времени.

Сообщение kushman »

Добрый день!
Народ, кто работал с часами реального времени оснащенными будильником, подскажите, почему при возникновении прерывания, часы продолжают держать линию в 0. Использую DS1339, через подтягивающий резистор вывод будильника соединен с входом INT1 МК Atmega8. Из-за этого, контроллер постоянно шпарит прерывания (прерывание вызывается по уровню 0 на INT1). В регистр 0x0F этих часов я после возникновения прерывания записываю байт 0х00, то есть обнуляю флаг возникновения прерывания в часах, однако линия все равно находится в нуле. В чем может быть дело?
Заранее благодарен.
Реклама
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Прерывание от часов реального времени.

Сообщение Ser60 »

Так работает RTC и это изменить нельзя. В МК следует настраивать прерывание не по уровню 0, а по падению уровня. Тогда оно вывовется один раз. После обработки прерывания МК, в RTC следует послать команду сброса флага прерывания для подъема уровня сигнала на выводе прерывания.
Реклама
kushman
Нашел транзистор. Понюхал.
Сообщения: 194
Зарегистрирован: Сб ноя 07, 2009 15:27:59

Re: Прерывание от часов реального времени.

Сообщение kushman »

Дело в том, что я использую спящий режим Power-down, а МК из него НЕ выводится по перепаду, только по уровню.
Аватара пользователя
Ser60
Друг Кота
Сообщения: 3784
Зарегистрирован: Ср дек 24, 2008 09:58:58

Re: Прерывание от часов реального времени.

Сообщение Ser60 »

Я уже не помню как это в AVR, но если так, то это типичная глупость от Атмела. Тогда в обработчике прерывания от RTC при первом входе запрещайте прерывания от него. Потом после посылки кода в RTC о сбросе флага прерывания (и когда урвень напряжения на выводе прерывания повысится), очищайте флаг прерывания в МК и разрешайте прерывания от RTC.
Реклама
Эиком - электронные компоненты и радиодетали
Ответить

Вернуться в «Периферия»