Как записать в EEPROM перед отключением питания
Re: Как записать в EEPROM перед отключением питания
Естественно, что перечисленные первые 2 способа можно комбинировать со вторыми двумя.
Компаратор или АЦП- это лишнее. Каждый вход AVR снабжен триггером Шмитта. Вот вам и пороговый элемент.
Компаратор или АЦП- это лишнее. Каждый вход AVR снабжен триггером Шмитта. Вот вам и пороговый элемент.
- Реклама
-
clawham
- Поставщик валерьянки для Кота
- Сообщения: 1957
- Зарегистрирован: Пт окт 31, 2008 09:38:55
- Откуда: Одесса
- Контактная информация:
Re: Как записать в EEPROM перед отключением питания
как показала практика триггер шмидта там очень условный и в зависимости от напряжения питания ВРЕМЕНИ удержания прошлого напряжения и прочего - можно получить переключение и при 2.7 вольт и при 1 вольте и при 4-х вольтах
компаратор однозначно......можно и внешний супервизор прицепить - тогда да..просто выход супервизора на Rising Edge INT ножку и вуаля
конечно же надо чтоб питание МК было от отдельной кренки а всё остальное - от другой
но я делал и напрямую...разницы нет
главное БОД поставить на 3.3 вольта питания
тогда всё работает на ура
компаратор однозначно......можно и внешний супервизор прицепить - тогда да..просто выход супервизора на Rising Edge INT ножку и вуаля
конечно же надо чтоб питание МК было от отдельной кренки а всё остальное - от другой
но я делал и напрямую...разницы нет
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Не доверяйте русским лужам - это может быть вход в метро.
Re: Как записать в EEPROM перед отключением питания
А если просто запитать МК через диод (лучше шоттки), с конденсатором на пару сотен мкФ? Зачем же ставить лишнюю КРЕНку?clawham писал(а):конечно же надо чтоб питание МК было от отдельной кренки а всё остальное - от другой
Re: Как записать в EEPROM перед отключением питания
Т.е. даташиты нам не указ?clawham писал(а):как показала практика ...
Не говорите ерунды- ТШ там вполне обыкновенный. Для данной цели нам его вполне хватает.
Re: Как записать в EEPROM перед отключением питания
Flasher
Встроенный аналоговый компаратор + внутренняя опора (BANDGAP REFERENCE) представляются более надежным решением.
Встроенный аналоговый компаратор + внутренняя опора (BANDGAP REFERENCE) представляются более надежным решением.
- Реклама
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Как записать в EEPROM перед отключением питания
Как это - времени? Сказки.clawham писал(а):как показала практика триггер шмидта там очень условный и в зависимости от напряжения питания ВРЕМЕНИ удержания прошлого напряжения
В прошлой версии своего устройства я использовал внешний супервизор DS1706, он имеет отдельный компаратор для слежения за питанием и генерирует NMI.clawham писал(а):можно и внешний супервизор прицепить
Это не обязательно, если процессор программно способен отключить большинство потребителей.clawham писал(а):конечно же надо чтоб питание МК было от отдельной кренки а всё остальное - от другой
Re: Как записать в EEPROM перед отключением питания
Редко кто любит медленные нарастания напряжения.SmarTrunk писал(а):А если просто запитать МК через диод (лучше шоттки), с конденсатором на пару сотен мкФ? Зачем же ставить лишнюю КРЕНку?clawham писал(а):конечно же надо чтоб питание МК было от отдельной кренки а всё остальное - от другой
Не вижу никакой дополнительной надежности. Обоснуйте.SmarTrunk писал(а):Flasher
Встроенный аналоговый компаратор + внутренняя опора (BANDGAP REFERENCE) представляются более надежным решением.
Re: Как записать в EEPROM перед отключением питания
Flasher
Ну данные на аналоговый компаратор и внутреннюю опору хорошо описаны, и почти не зависят от напряжения питания. Переключение компаратора произойдет, когда входное напряжение сравняется с BANDGAP REFERENCE, плюс-минус 40 мВ (Analog Comparator Input Offset Voltage). Гистерезиса тут нет, но он и не нужен, для отслеживания снижения напряжения питания. Благодаря независимости от напряжения питания (в разумных пределах) имеется бОльшая свобода в схемотехнике, например, в сторону упрощения схемы.
У входа порта напряжение переключения (и гистерезис) триггера шмидта напрямую зависят от напряжения питания, указаны в разделе Typical Characteristics. Эти данные менялись при переходе к модификации "А".
Ну данные на аналоговый компаратор и внутреннюю опору хорошо описаны, и почти не зависят от напряжения питания. Переключение компаратора произойдет, когда входное напряжение сравняется с BANDGAP REFERENCE, плюс-минус 40 мВ (Analog Comparator Input Offset Voltage). Гистерезиса тут нет, но он и не нужен, для отслеживания снижения напряжения питания. Благодаря независимости от напряжения питания (в разумных пределах) имеется бОльшая свобода в схемотехнике, например, в сторону упрощения схемы.
У входа порта напряжение переключения (и гистерезис) триггера шмидта напрямую зависят от напряжения питания, указаны в разделе Typical Characteristics. Эти данные менялись при переходе к модификации "А".
Re: Как записать в EEPROM перед отключением питания
Вообще, очень полезная тема, очень интересен чужой опыт.
Re: Как записать в EEPROM перед отключением питания
а на кой нам 40 мВ при отключении питания?
Все характеристики подробно описано в даташитах.
Все характеристики подробно описано в даташитах.
Re: Как записать в EEPROM перед отключением питания
Формулу расчёта ёмкости я написал выше. Есть у меня одно устройство на тини13, в котором мне необходимо было обеспечить работоспособность схемы при пропадании питания в течение не менее 5 секунд. Кроме тиньки ток тратится ещё и на долбление управляющего электрода симистора ШИМом. Суммарный ток потребления при этом удалось добиться порядка 2мА. BOD контроллера настроен на 2,7В. Стабилизация по входу 5В, время за которое эти 5В устанавливаются порядка 6-7 секунд. Ёмкость рассчитывал по указанной выше формуле, поставил 4700мкФ 6,3В, в итоге время получилось 7 секунд.
-
clawham
- Поставщик валерьянки для Кота
- Сообщения: 1957
- Зарегистрирован: Пт окт 31, 2008 09:38:55
- Откуда: Одесса
- Контактная информация:
Re: Как записать в EEPROM перед отключением питания
для тех кто полагается на встроенный в ПИН триггер шмидта есть 3 основные проблемы:
1) реакция переключения зависит от напруги питания а оно падает...в данных условиях(и я лично это проверял осцилом и логик анализером) тот триггерок шмидта сходит с ума - может и не сработать "в ноль" при напруге на выводе 0.6 ВОЛЬТ!!!
2) получается ситуация с минутной и часовой стрелками - чем меньше питание тем меньше внорень срабатывания, при этом когда на входе кренки 6-7 вольт - ток она больше с входного кондера НЕ ПОТРЕБЛЯЕТ и эти 7 вольт БОЛЬШЕ напруги принятия входа нулём даже в нормальных условиях
3) совершенно неконтролируемый уровень переброски с 1-в-0 от корпуса к корпусу не говоря уже от ревизии к ревизии...
используя компаратор и встроенный референс имеем:
1) абсолютную повторяемость конструкции....при напруге 2.5 вольта ГАРАНТИРОВАННО вызовется прерывание хоть при 3.3 вольтах питания хоть при 5
2) время реакции - можно поймать более точно нужный порог напруги ниже которой опрокинется компаратор
3) что рееренс что сам компаратор полностью нормированы под любыми кристаллами корпусами ревизиями и т.д.
практика показала...что...из 5-ти устройство с ОДИНАКОВЫМИ трансами, кондерами, процами, резюками делителей, экранов(подсветка которых это мощный стабилитрон на 3.3 вольта который и разрядит быстро входную ёмкость оочень низко и сразу... ТРИ устройства НЕ ЗАПОМИНАЛИ значения - не успевали записать и 4-го БАЙТА! и получалось срабатывание происходило уже при питании в 3.7 вольт!!!!! тоесть 70% времени мы уже выбросили в мусорку!!!
когда переделал под компаратор - из 10-ти все 10 стали сохранять значения при в 4 раза меньшем кондере после стабилизатора(10000 мкф вместо 60000)...и завершение сохранения завершалось при напруге 3.6 на кондере - тоесть ещё 20-30% времени остаётся!!!
вот таки дела
и не надо никаких суперкапов....кстати...я их использую для питания РТЦ в своих схемах - держать до 4 недель....но стоит на 5 минут включить питание и хоп - снова +4 недели автономии....зато и через 10 лет оно так же будет а батарейки нынче аткие пошли что....даже говорить не хочется...
но выбирать конечно свой вариант каждому и самостоятельно....ктото мож и захочет натрунькаться с работой в 220 и неработой в 190...
1) реакция переключения зависит от напруги питания а оно падает...в данных условиях(и я лично это проверял осцилом и логик анализером) тот триггерок шмидта сходит с ума - может и не сработать "в ноль" при напруге на выводе 0.6 ВОЛЬТ!!!
2) получается ситуация с минутной и часовой стрелками - чем меньше питание тем меньше внорень срабатывания, при этом когда на входе кренки 6-7 вольт - ток она больше с входного кондера НЕ ПОТРЕБЛЯЕТ и эти 7 вольт БОЛЬШЕ напруги принятия входа нулём даже в нормальных условиях
3) совершенно неконтролируемый уровень переброски с 1-в-0 от корпуса к корпусу не говоря уже от ревизии к ревизии...
используя компаратор и встроенный референс имеем:
1) абсолютную повторяемость конструкции....при напруге 2.5 вольта ГАРАНТИРОВАННО вызовется прерывание хоть при 3.3 вольтах питания хоть при 5
2) время реакции - можно поймать более точно нужный порог напруги ниже которой опрокинется компаратор
3) что рееренс что сам компаратор полностью нормированы под любыми кристаллами корпусами ревизиями и т.д.
практика показала...что...из 5-ти устройство с ОДИНАКОВЫМИ трансами, кондерами, процами, резюками делителей, экранов(подсветка которых это мощный стабилитрон на 3.3 вольта который и разрядит быстро входную ёмкость оочень низко и сразу... ТРИ устройства НЕ ЗАПОМИНАЛИ значения - не успевали записать и 4-го БАЙТА! и получалось срабатывание происходило уже при питании в 3.7 вольт!!!!! тоесть 70% времени мы уже выбросили в мусорку!!!
когда переделал под компаратор - из 10-ти все 10 стали сохранять значения при в 4 раза меньшем кондере после стабилизатора(10000 мкф вместо 60000)...и завершение сохранения завершалось при напруге 3.6 на кондере - тоесть ещё 20-30% времени остаётся!!!
вот таки дела
и не надо никаких суперкапов....кстати...я их использую для питания РТЦ в своих схемах - держать до 4 недель....но стоит на 5 минут включить питание и хоп - снова +4 недели автономии....зато и через 10 лет оно так же будет а батарейки нынче аткие пошли что....даже говорить не хочется...
но выбирать конечно свой вариант каждому и самостоятельно....ктото мож и захочет натрунькаться с работой в 220 и неработой в 190...
Что нас не убило сделало нас осторожней
Не доверяйте русским лужам - это может быть вход в метро.
Не доверяйте русским лужам - это может быть вход в метро.
Re: Как записать в EEPROM перед отключением питания
А компаратор достаточно подключить внутри, к Bandgap Voltage 1,23В, или снаружи, к опорному напряжению 2,56В (но будет потрачен лишний вывод?)
- Леонид Иванович
- Друг Кота
- Сообщения: 4779
- Зарегистрирован: Сб апр 02, 2011 12:40:46
- Откуда: Минск
- Контактная информация:
Re: Как записать в EEPROM перед отключением питания
Потребляет, но не стабилизирует. Входное напряжение она передает на выход за вычетом падения.clawham писал(а):когда на входе кренки 6-7 вольт - ток она больше с входного кондера НЕ ПОТРЕБЛЯЕТ и эти 7 вольт БОЛЬШЕ напруги принятия входа нулём даже в нормальных условиях
А порог должен быть выше того момента, когда кренка перестает стабилизировать.
Впрочем, мне тоже не нравится идея использования входных триггеров Шмитта.
Re: Как записать в EEPROM перед отключением питания
Эт точно , в одной из своих конструкций, сделал очень просто, использовал для этого АЦП контроллера, для простых задач весьма надежный способ.SmarTrunk писал(а):Вообще, очень полезная тема, очень интересен чужой опыт.
По крайней мере никто не жаловался.... (просто еще никто не повторил схему
Вариант схемного решения здесь http://radiokot.ru/circuit/digital/home/115/
Re: Как записать в EEPROM перед отключением питания
А читать, что тебе пишут пробовал?SmarTrunk писал(а):А компаратор достаточно подключить внутри, к Bandgap Voltage 1,23В, или снаружи, к опорному напряжению 2,56В (но будет потрачен лишний вывод?)
ELcat писал(а):Н... или можно внутренний компаратор использовать. Один его вход программно подключается к внутреннему ИОН, а второй к внешнему резистивному делителю на нужное значение и разрешаются прерывания по изменению состояния выхода компаратора. А по срабатыванию компаратора все нагрузки гасить. Ёмкость - С=I*T/U, размерности всех величин по системе СИ, T-необходимое время, I-потребляемый ток, U-разность напряжений, на которую допустимо опуститься для сохранения рабочих параметров микроконтроллера.
Re: Как записать в EEPROM перед отключением питания
Мудрите ребята, компараторы, ацп...
Все намного проще.
При обнаружении на ножжке PB0 нуля Выключаем все переферию, сохраняем нужные данные в eeprom, останавливаем процессор. Обязательно установить Bodlevel на самое минимальное напряжение, во избежании записи в eeprom мусора.
Кондер я ставил на 100мкф, хотя все работало и при 47мкф, но лучше перестраховаться.

Все намного проще.
При обнаружении на ножжке PB0 нуля Выключаем все переферию, сохраняем нужные данные в eeprom, останавливаем процессор. Обязательно установить Bodlevel на самое минимальное напряжение, во избежании записи в eeprom мусора.
Кондер я ставил на 100мкф, хотя все работало и при 47мкф, но лучше перестраховаться.

Re: Как записать в EEPROM перед отключением питания
Bonio, этот способ работает. Диод лучше шоттки, на выходе 7805 больших емкостей не надо, и побольше керамики. Но правильнее всё-таки заюзать компаратор.
Не забывайте, что если писать в прерывании, и количество данных небольшое, время записи будет намного меньше, чем способен протянуть кондёр. Контроллер черта лысого просчитать за это время сумеет...
Не забывайте, что если писать в прерывании, и количество данных небольшое, время записи будет намного меньше, чем способен протянуть кондёр. Контроллер черта лысого просчитать за это время сумеет...
-
Мастер Ломастер
- Поставщик валерьянки для Кота
- Сообщения: 1995
- Зарегистрирован: Ср май 11, 2011 21:37:45
- Откуда: Цветочный город
- Контактная информация:
Re: Как записать в EEPROM перед отключением питания
время записи одного байта обычно 4 миллисекунды. как это время может зависеть от прерываний - загадка...ploop писал(а):Не забывайте, что если писать в прерывании, и количество данных небольшое, время записи будет намного меньше, чем способен протянуть кондёр. Контроллер черта лысого просчитать за это время сумеет...
битва с дураками проиграна, победители торжествуют. слава победителям!
Re: Как записать в EEPROM перед отключением питания
Легко: если не опрашивать ногу или компаратор когда вздумается, а использовать прерывание для этого.как это время может зависеть от прерываний - загадка...


