Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
30.04.2013, 10:36
|
|
Временная регистрация
Регистрация: 08.06.2009
Сообщений: 93
Сказал спасибо: 97
Сказали Спасибо 109 раз(а) в 34 сообщении(ях)
|
Re: RTC
Уважаемые форумчане!
есть оч волнующий меня вопрос, правда в другом топике...
https://kazus.ru/forums/showthread.php?t=12567&page=4
|
|
|
|
30.04.2013, 21:46
|
|
Прописка
Регистрация: 15.03.2009
Сообщений: 162
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: RTC
У меня сработал будильник. А как повторно использовать будильник?
Пробовал выкл/вкл будильник-не помогает. На выходе INT/ часов-Логический ноль после срабатывания будильника.
|
|
|
|
30.04.2013, 22:07
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,982
Сказал спасибо: 2,554
Сказали Спасибо 11,862 раз(а) в 5,944 сообщении(ях)
|
Re: RTC
Если работаете в CV его библиотеками, то там есть "void rtc_alarm_off(unsigned char chip)", а еще лучше почитать хэлп про работу с пцфом и посмотреть файл PCF8583.h
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
01.05.2013, 11:23
|
|
Прохожий
Регистрация: 09.02.2011
Сообщений: 4
Сказал спасибо: 0
Сказали Спасибо 0 раз(а) в 0 сообщении(ях)
|
Re: RTC
Будильник отключается записью в статусный регистр нуля. А почему именно PCF выбран для часов? Не хотите попробовать на чём-то другом? Я тут разобрался с dallas-овскими ds1394+
|
|
|
|
01.05.2013, 12:04
|
|
Прописка
Регистрация: 15.03.2009
Сообщений: 162
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: RTC
Сообщение от shluzzzoid
|
Будильник отключается записью в статусный регистр нуля. А почему именно PCF выбран для часов? Не хотите попробовать на чём-то другом? Я тут разобрался с dallas-овскими ds1394+
|
Нет-нет, спасибо, у нас в городе нет такой микросхемы.
Смотрите, я в обработчике прерывания мк по внешнему событию(когда сработает будильник) делаю так: выключаю будильник(rtc_alarm_off), выставляю новое время срабатывания будильника, включаю будильник. Но псле первого срабатывания как был сигнал на INT\ нулевым таким он и остается...
|
|
|
|
01.05.2013, 19:47
|
|
Прописка
Регистрация: 15.03.2009
Сообщений: 162
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: RTC
А у меня вопрос. При срабатывании будильника сигнал с Clock Alarm сколько длится? И как его можно квитировать?
Ведь при rtc_alarm_off(0)-у нас сбрасывается в нуль Alarm Enable Bit(Флаг разрешения будильника), но не устраняется первопричина-сигнал будильника с Clock Alarm.
Я даже делал так:
PHP код:
|
rtc_alarm_off(0);//сбрасываю флаг разрешения будильника
rtc_alarm_flag_off(0);//сбрасываю флаг будильника
|
Процедуру void rtc_alarm_flag_off(unsigned char chip) я написал сам. Вот:
PHP код:
|
void rtc_alarm_flag_off(unsigned char chip)
{
rtc_get_status(chip);
rtc_status&=0xfd;
rtc_write(chip,0,rtc_status);
}
|
rtc_status&=0xfd-т.е. сделать бит_1 Control/Status Register -0.
...Но даже после этих двух процедур сигнал на выводе INT\ как висел "ноль" после срабатывания будильника так и висит. В чем дело.
|
|
|
|
02.05.2013, 17:54
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,982
Сказал спасибо: 2,554
Сказали Спасибо 11,862 раз(а) в 5,944 сообщении(ях)
|
Re: RTC
Frensis777, для меня сейчас недоступны исходники нашего применения PCF, но мне кажется, что сброс этого бита производится записью "1". Попробуйте, должно получиться.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
02.05.2013, 21:38
|
|
Прописка
Регистрация: 15.03.2009
Сообщений: 162
Сказал спасибо: 1
Сказали Спасибо 3 раз(а) в 3 сообщении(ях)
|
Re: RTC
Сообщение от akegor
|
Frensis777, для меня сейчас недоступны исходники нашего применения PCF, но мне кажется, что сброс этого бита производится записью "1". Попробуйте, должно получиться.
|
Ничего подобного. Я написал свою процедуру сброса флага будильника на основании процедуры выключения будильника согласно исходнику из PCF8583.lib:
PHP код:
|
void rtc_alarm_off(unsigned char chip)
{
rtc_get_status(chip);
rtc_status&=0xfb;
rtc_write(chip,0,rtc_status);
}
|
Как видно, для того чтобы выключить будильник, тов. Akegor, мы читаем содержимое Control/Status Register в переменную rtc_status. С переменной rtc_status и значением 0xfb(а это 11111011 в двоичн.системе) проделывается операция поразрядного "И", после чего результат заносится обратно в переменную rtc_status. Несложно догадаться, что после выполнения этой операции, все биты переменной rtc_status кроме бит_2(а это бит включения будильника), останутся неизменными. Бит_2 же обнулится. В конце содержимое переменной rtc_status заносится в Control/Status Register.
|
|
|
|
02.05.2013, 21:51
|
|
Гуру портала
Регистрация: 06.05.2005
Адрес: Краснодар, возле укротворного моря.
Сообщений: 18,982
Сказал спасибо: 2,554
Сказали Спасибо 11,862 раз(а) в 5,944 сообщении(ях)
|
Re: RTC
Буквально только что переговорил с моим кадром, который работал с этим чудом. Действительно, я ошибочно сказал про сброс бита единицей.
Посмотрите описание: душить нужно не 2-й бит, а 1-й. Бит 2 - разрешение, а вот бит 1 - флаг будильника.
__________________
Не бейте больно, ежели чо, ну не удержался... А вааще,
"Мы за все хорошее, против всей х..., По лугам некошеным чтобы шли ступни,
Чтобы миром правила правда, а не ложь, Мы за все хорошее, нас не на...!
..." (Ленинград)
Я не несу ответственности за свои действия в Вашей голове.
|
|
|
|
02.05.2013, 21:57
|
|
Почётный гражданин KAZUS.RU
Регистрация: 10.12.2007
Адрес: Екатеринбург
Сообщений: 2,727
Сказал спасибо: 2,428
Сказали Спасибо 893 раз(а) в 580 сообщении(ях)
|
Re: RTC
AVR любит единицей сбрасывать биты.
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:23.
|
|