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

 
 
> PIC18F6722 + sleep mode
Arxi
сообщение Jun 28 2011, 04:14
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 16-09-10
Пользователь №: 59 523



Приветствую! Возникла проблема...никак не могу понять в чем ошибка. Есть некоторая система на данном МК. ЕЕ задачи: сбор данных по UART, их обработка, вывод данных на TFT дисплей и так далее. В том числе присутствует задача часов реального времени. Питания внешнее и батарейка. При пропадании внешнего питания устройство должно уходить в режим Sleep. Таймер 1 тактируется от внешнего кварца 32КГц... раз в 1 сек по прерыванию он должен будить МК, считать время, проверять появилось ли питания и, если нет, снова уходить в спячку. Так вот какой минимум операции нужно сделать чтобы уйти в спячку с минимум потребления тока? Отключаю все (UART, АЦП, всю подтяжку на портах.. и так далее) НО! Как только питания пропадает пропадает и колебания на часовом кварце, хотя в даташите написано что если таймер 1 был включен, то он продолжает работать...Перед батарейкой стоит резистор на 1кОм...так вот на нем падение напряжения почти 1,5В...то есть 1,5 мА потребляются... Пропадают колебания, соответственно и время не считает...как быть?

Сообщение отредактировал Arxi - Jun 28 2011, 04:16
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Arxi
сообщение Jun 28 2011, 06:58
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 28
Регистрация: 16-09-10
Пользователь №: 59 523



Значит начнем по порядку...использую модуль HLVD. Настраиваю его на напряжение 4,11. Питание пропадает и схема начинает питаться от батарейки 3,6В. Модуль HLVD вызывает прерывание в котором я выставляю флаг низкого напряжение и отключаю всю периферию. В main сделал цикл:
while(1)
{
if (low_upit == 1)
{
OSCCONbits.IDLEN = 1;
OSCCONbits.SCS0 = 1;
_asm sleep _endasm;
_asm NOP _endasm;
}
Таким образом с помощью битов IDLEN и SCS0 выставляю режим SEC_Idle, при котором тактирование ведется от кварца таймера 1 (часовой кварц 32КГц с копейками).
И , о чудо! Часовой кварц перестал выключаться!)
Go to the top of the page
 
+Quote Post
xemul
сообщение Jun 28 2011, 07:01
Сообщение #3



*****

Группа: Свой
Сообщений: 1 928
Регистрация: 11-07-06
Пользователь №: 18 731



Цитата(Arxi @ Jun 28 2011, 10:58) *
И , о чудо! Часовой кварц перестал выключаться!)

Угу, я тоже люблю читать даташиты на ночь.sm.gif
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- Arxi   PIC18F6722 + sleep mode   Jun 28 2011, 04:14
- - xemul   Цитата(Arxi @ Jun 28 2011, 08:14) При про...   Jun 28 2011, 06:26
- - Arxi   М-да, действительно...путаница вышла... насчет реж...   Jun 28 2011, 06:43
- - xemul   Ну коль внятно рассказать Вам лень, см. 3.4.2 SEC_...   Jun 28 2011, 06:54
- - Arxi   ))) продолжим)))) таймер работает...но почему то с...   Jun 28 2011, 07:04
|- - xemul   Цитата(Arxi @ Jun 28 2011, 11:04) ... где...   Jun 28 2011, 07:31
- - Arxi   Питание +5В и батарейка отделены друг от друга дио...   Jun 28 2011, 07:37
- - Arxi   что попало написал...все порты настраиваю на выход...   Jun 28 2011, 09:36
|- - xemul   Цитата(Arxi @ Jun 28 2011, 13:36) возник ...   Jun 28 2011, 10:10
- - Arxi   Сейчас глняул, и действительно. Забыл его отключит...   Jun 29 2011, 02:50
- - Arxi   Тут мысль возникла....а вдруг у меня МК не засыпае...   Jun 29 2011, 04:17
|- - xemul   Цитата(Arxi @ Jun 29 2011, 08:17) Тут мыс...   Jun 29 2011, 10:27
- - ar__systems   1.5mA похоже на ток работающего процессора. выключ...   Jun 30 2011, 03:56


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

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 04:03
Рейтинг@Mail.ru


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