RTC & Sleep
|
|
Matrix252005 |
Дата: Вт, 21.08.2012, 17:06 | Сообщение # 1 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
Приятного времени суток!!!
Есть проблема... МК PIC18F2520 (В будущем будет использоваться PIC18F25K20), настроен на внутренний ген 8МГц, на TMR0 настроен ход часов - типа RTC. Все хорошо, до момента когда пытаюсь заставить МК уйти в "сон" на долгое время. Пытаюсь настроить TMR1, но сталкиваюсь с другой проблемой, МК постоянно "просыпается", а мне нужно, чтобы он в режиме "сна" находился до тех пор, пока на PortB.0 не придет прерывание при этом (когда МК спит), часы должны отчитывать время...
Кто с таким сталкивался???
По мануалу написано, что в режиме Sleep, МК может находится до 18 часов...
Или другой вопрос, может кто работал с PIC18F24J11, а именно RTCC & Sleep???
Вся загвоздка в том, что все устройство должно питаться от ОЧЕНЬ маленького АКК...
Кто сталкивался, HELP...
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
Andriy76 |
Дата: Вт, 21.08.2012, 19:07 | Сообщение # 2 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
231
Замечания:
±
На сайте с 06.04.2010
Статус:
Offline
|
Привет Николай Смотри кое что нашел http://www.ccsinfo.com/forum/viewtopic.php?t=45139 Поищу возможно что еще найду
|
|
|
|
ivan_fd |
Дата: Вт, 21.08.2012, 19:30 | Сообщение # 3 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Quote (Matrix252005) настроен на внутренний ген 8МГц, на TMR0 настроен ход часов - типа RTC.
TMR0 в режиме sleep не считает. Поэтому данный вариант не подходит.
Quote (Matrix252005) Пытаюсь настроить TMR1, но сталкиваюсь с другой проблемой, МК постоянно "просыпается"
Так и должно быть, он должен просыпатся когда происходит прерывание, как иначе Вы будете считать секунды?
|
|
|
|
Matrix252005 |
Дата: Ср, 22.08.2012, 09:06 | Сообщение # 4 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
Приятного времени суток!!!
Quote (ivan_fd) ...как иначе Вы будете считать секунды? А если, создать одну переменную, в связи стем, что я не знаю сколько МК будет спать, типа Word. И как произошло прерывание, эта переменная увеличивается на 1. Потом, когда пришло прерывание от INT, произвести расчет и прибавить полученный результат к уже имеющимся значения времени...
Так можно???
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
Andriy76 |
Дата: Ср, 22.08.2012, 09:43 | Сообщение # 5 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
231
Замечания:
±
На сайте с 06.04.2010
Статус:
Offline
|
Доброе утро Николай Для пробы только что переместил в прерывание подсчет минут и часов . Дождался 1 минуты . Если просыпаеться пусть и считает все сразу .
|
|
|
|
Matrix252005 |
Дата: Ср, 22.08.2012, 09:46 | Сообщение # 6 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
Доброе утро Андрей!!!
Quote (Andriy76) Дождался 1 минуты Это Вы по секундам отсчитывали или сразу минуты??? Если один раз в минуту, может и пойдет...
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
Andriy76 |
Дата: Ср, 22.08.2012, 10:01 | Сообщение # 7 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
231
Замечания:
±
На сайте с 06.04.2010
Статус:
Offline
|
В Протеусе запустил симуляцию своей зарядки .
Int_Label: ' Context Save
If INTCONbits_T0IF = 1 Then Dec BIG1 If BIG < 0 Then BIG = BIG + 5000000 : Inc Sec If Sec > 59 Then Sec = 0 : Inc Minute
If Minute > 59 Then Minute = 0 : Inc Hour INTCONbits_T0IF = 0
Context Restore
|
|
|
|
Matrix252005 |
Дата: Ср, 22.08.2012, 10:03 | Сообщение # 8 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
В личку!!!
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
Andriy76 |
Дата: Ср, 22.08.2012, 10:29 | Сообщение # 9 |
Группа:
Проверенные
Ранг:
Могу и подсказать
Сообщений:
231
Замечания:
±
На сайте с 06.04.2010
Статус:
Offline
|
Ответил
|
|
|
|
ivan_fd |
Дата: Ср, 22.08.2012, 11:42 | Сообщение # 10 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Что то я не пойму, что Вам нужно. Если Вы поставите контроллер в спячку, он в то время ничего делать не будет!!! Если таймер 1 настроен на внешний такт, то он будет считать в режиме sleep, но чтобы знать, что он там насчитал его нужно выводить из сна, а это можно сделать по прерыванию таймера. И прерывание будет происходить через время, которое Вы настроите. Если стоит кварц 32768, и настроено на секундный интервал, то просыпатся будет каждую секунду!!!
Сообщение отредактировал
ivan_fd - Ср, 22.08.2012, 11:43
|
|
|
|
Matrix252005 |
Дата: Ср, 22.08.2012, 11:52 | Сообщение # 11 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
Quote (ivan_fd) Что то я не пойму, что Вам нужно. Мне нужно, чтобы МК потреблял как можно меньше, а это возможно только в Sleep режиме, но при этом, чтобы шли часы... Сейчас МК потребляет ~4,5мА... Что очень много... Если бы его снизить как по шиту: Timer1 Oscillator: 1.8 µA, 32 kHz, 2V Было бы не плохо...
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
ivan_fd |
Дата: Ср, 22.08.2012, 12:19 | Сообщение # 12 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Запустите таймер1 в режиме внешнего такта, ставите контроллер в спячку, по прерыванию он выходит из спячки, делает инкремент секунд и опять уходит в спячку.
И померяйте сколько он будет брать.
|
|
|
|
Matrix252005 |
Дата: Ср, 22.08.2012, 12:25 | Сообщение # 13 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
Примерно это сейчас и делаю... Он стал потреблять ~3,5мА...
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|
ivan_fd |
Дата: Ср, 22.08.2012, 13:24 | Сообщение # 14 |
Группа:
Модераторы
Ранг:
Специалист
Сообщений:
894
Замечания:
±
На сайте с 12.01.2009
Статус:
Offline
|
Что то многовато, в режиме sleep должны быть микроампреы. Может он в прерывании, когда проснулся, долго сидит?
|
|
|
|
Matrix252005 |
Дата: Ср, 22.08.2012, 13:38 | Сообщение # 15 |
Группа:
Проверенные
Ранг:
Разобрался
Сообщений:
636
Замечания:
±
На сайте с 12.10.2007
Статус:
Offline
|
Сейчас изменил таймер 1, настроил его на 1 минуту.... Ток потребления стал 0,8мА при 5В... Снизил до 3,3 - 0,62мА.... Все равно много....
THE TRUTH IS OUT THERE.
С уважением, Николай.
|
|
|
|