Страница 1 из 1

Пропало питание, нужно сохраниться. Как?

Добавлено: Ср июл 27, 2011 16:39:57
pierro
Всем привет.

Столкнулся с очень интересной задачкой.

Пишу программу на С для attiny2313. Нужно определить момент пропадания питания для микроконтроллера, сохранить его стан, а после возобновления питания, продолжить работу с остановленного места. Пока пришла такая идея. Повесить "хороший" конденсатор на питание, и в обход конденсатора подать питание на PB0 (для примера) микроконтроллера. Если пропало питание на PB0 быстренько отключаем все нагрузки (индикатор и т.д.) сохраняем все нужные данные в eeprom. Думаю, конденсатора на 3000 - 4000 мк должно хватить. Потом только прочитать данные и продолжить работу.

Может в есть еще идеи? или может другие "все-мирно" известие способы?

Спасибо.

P.S. сохранять данные каждение хх минуть - не хочу (да и на eeprom єто не хорошо), батареек ставить тоже не хочу.

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Ср июл 27, 2011 16:43:15
МитяРа
Весь вопрос в том, на какое время пропадает..
Можно отследить этот момент, а потом просто перевести МК в режим микропотребления.. /если конечно он у него есть../

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Ср июл 27, 2011 16:48:41
demiurg301
Ионистор. Секунд 20 у вас будет. Только дешевле батарейку поставить и 2 диода.

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Ср июл 27, 2011 16:50:17
pierro
МитяРа писал(а):Весь вопрос в том, на какое время пропадает..
Время неизвестное, от 1 сек, до нескольких суток

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Ср июл 27, 2011 16:52:30
МитяРа
Один из возможных способов мя те написал, а по поводу реализации - подбери себе микруху монитора питания/супервизора..

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Ср июл 27, 2011 19:40:24
Dmitry Dubrovenko
pierro писал(а):Пока пришла такая идея
ИМХО, идея - правильная (я бы тоже так делал, но обычно ставлю батарейку). :wink:
Только надо озаботиться об интервале опроса порта-датчика напряжения.

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Ср июл 27, 2011 22:11:56
Axon
А не проще ли автоматически сохранять данные в главном цикле через какое-то время?

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Чт июл 28, 2011 07:30:07
Shavire
Axon писал(а):А не проще ли автоматически сохранять данные в главном цикле через какое-то время?
Нет. А если питание пропадет в акурат с записью во флеш? И если повішать частоту записи то шансі так попасть увеличиваются , а если уменшать то падают, - но тогда есть ли в єтом смісл? Все зависит от задачи.....

ставь лоу-дроп диод + конденсатор, таким образом чтобі только МК был запитан.

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Чт июл 28, 2011 09:06:32
vin_07
Есть тема про часы, утверждают, что с ионистором в 1Ф они ходЮт четверо суток, правда там мега16, исходник открыт.

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Чт июл 28, 2011 12:03:16
clawham
e меня проект ваттметра
питание кренки через делитель заведено на прерывние
основное питание с кренки на МК шунтировано 1000 мкф кандером
кроме МК есть ещё экран с подсветкой(4 вольта стабилитрон)
записывать надо около 30 значений 32-битных в еепром
успевает раз 5 всё прописать запросто...
просто супервизор МК (БОД) ставится на 3.3 вольта и все дела - еепром не затрется проблемами с питанием и успеет прописаться...
ещё заметил особенность - если данные не менялись то успевает проскочик 10000 циклов записи до вырубания проца...тоесть по факту запись не производится!!! поэтому за ресурс можно не переживать....и при каждом Falling edge на прерывании писать критически важные данные в епромину - пусть даже и от сетевых помех

два устройства трудятся у меня и штук 5 в РЭСе и ниразу ни у кого данные не пропадали или не успевали прописаться...все гут

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Чт июл 28, 2011 12:11:55
Lockdog
Dmitry Dubrovenko писал(а): Только надо озаботиться об интервале опроса порта-датчика напряжения.
Зачем? Лучше использовать внешнее прерывания, по изменению сигнала

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Чт июл 28, 2011 13:06:45
Dmitry Dubrovenko
Lockdog писал(а):Лучше использовать внешнее прерывания, по изменению сигнала
Это - всего лишь один из способов реализации.
:)

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Чт июл 28, 2011 15:09:26
IfoR
ИМХО, поддерживаю: ионистор и прерывание по изменению сигнала самое оно.
Что-то типа этого:
Изображение

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Чт июл 28, 2011 23:54:26
md5sum
clawham писал(а):питание кренки через делитель заведено на прерывние
основное питание с кренки на МК шунтировано 1000 мкф кандером...
а прерывании писать критически важные данные в епромину - пусть даже и от сетевых помех
Подтверждаю! Правда у меня 680 мкф, но нет индикатора с подсветкой (точнее есть, но развязаны с МК диодами).
32 битное значение сохраняется примерно за 1/5-ю от времени "жизни" МК от конденсатора - проверялось осциллографом.

Re: Пропало питание, нужно сохраниться. Как?

Добавлено: Пт июл 29, 2011 05:11:53
Rimsky
Прерывание можно завести на компаратор. Тем самым, с помощью опорного напряжения можно отследить момент просадки питания до критического уровня и принять меры.