Естественно, что перечисленные первые 2 способа можно комбинировать со вторыми двумя. Компаратор или АЦП- это лишнее. Каждый вход AVR снабжен триггером Шмитта. Вот вам и пороговый элемент.
как показала практика триггер шмидта там очень условный и в зависимости от напряжения питания ВРЕМЕНИ удержания прошлого напряжения и прочего - можно получить переключение и при 2.7 вольт и при 1 вольте и при 4-х вольтах
компаратор однозначно......можно и внешний супервизор прицепить - тогда да..просто выход супервизора на Rising Edge INT ножку и вуаля
конечно же надо чтоб питание МК было от отдельной кренки а всё остальное - от другой но я делал и напрямую...разницы нет главное БОД поставить на 3.3 вольта питания тогда всё работает на ура
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
Flasher Ну данные на аналоговый компаратор и внутреннюю опору хорошо описаны, и почти не зависят от напряжения питания. Переключение компаратора произойдет, когда входное напряжение сравняется с BANDGAP REFERENCE, плюс-минус 40 мВ (Analog Comparator Input Offset Voltage). Гистерезиса тут нет, но он и не нужен, для отслеживания снижения напряжения питания. Благодаря независимости от напряжения питания (в разумных пределах) имеется бОльшая свобода в схемотехнике, например, в сторону упрощения схемы.
У входа порта напряжение переключения (и гистерезис) триггера шмидта напрямую зависят от напряжения питания, указаны в разделе Typical Characteristics. Эти данные менялись при переходе к модификации "А".
Заголовок сообщения: Re: Как записать в EEPROM перед отключением питания
Добавлено: Вс янв 22, 2012 14:28:32
Друг Кота
Карма: 46
Рейтинг сообщений: 590
Зарегистрирован: Вт май 19, 2009 09:27:30 Сообщений: 3258 Откуда: Украина
Рейтинг сообщения:0
Формулу расчёта ёмкости я написал выше. Есть у меня одно устройство на тини13, в котором мне необходимо было обеспечить работоспособность схемы при пропадании питания в течение не менее 5 секунд. Кроме тиньки ток тратится ещё и на долбление управляющего электрода симистора ШИМом. Суммарный ток потребления при этом удалось добиться порядка 2мА. BOD контроллера настроен на 2,7В. Стабилизация по входу 5В, время за которое эти 5В устанавливаются порядка 6-7 секунд. Ёмкость рассчитывал по указанной выше формуле, поставил 4700мкФ 6,3В, в итоге время получилось 7 секунд.
для тех кто полагается на встроенный в ПИН триггер шмидта есть 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...
_________________ Что нас не убило сделало нас осторожней Не доверяйте русским лужам - это может быть вход в метро.
когда на входе кренки 6-7 вольт - ток она больше с входного кондера НЕ ПОТРЕБЛЯЕТ и эти 7 вольт БОЛЬШЕ напруги принятия входа нулём даже в нормальных условиях
Потребляет, но не стабилизирует. Входное напряжение она передает на выход за вычетом падения. А порог должен быть выше того момента, когда кренка перестает стабилизировать.
Впрочем, мне тоже не нравится идея использования входных триггеров Шмитта.
Вообще, очень полезная тема, очень интересен чужой опыт.
Эт точно , в одной из своих конструкций, сделал очень просто, использовал для этого АЦП контроллера, для простых задач весьма надежный способ. По крайней мере никто не жаловался.... (просто еще никто не повторил схему ) Вариант схемного решения здесь http://radiokot.ru/circuit/digital/home/115/
Заголовок сообщения: Re: Как записать в EEPROM перед отключением питания
Добавлено: Вс янв 22, 2012 17:48:50
Друг Кота
Карма: 46
Рейтинг сообщений: 590
Зарегистрирован: Вт май 19, 2009 09:27:30 Сообщений: 3258 Откуда: Украина
Рейтинг сообщения:0
SmarTrunk писал(а):
А компаратор достаточно подключить внутри, к Bandgap Voltage 1,23В, или снаружи, к опорному напряжению 2,56В (но будет потрачен лишний вывод?)
А читать, что тебе пишут пробовал?
ELcat писал(а):
Н... или можно внутренний компаратор использовать. Один его вход программно подключается к внутреннему ИОН, а второй к внешнему резистивному делителю на нужное значение и разрешаются прерывания по изменению состояния выхода компаратора. А по срабатыванию компаратора все нагрузки гасить. Ёмкость - С=I*T/U, размерности всех величин по системе СИ, T-необходимое время, I-потребляемый ток, U-разность напряжений, на которую допустимо опуститься для сохранения рабочих параметров микроконтроллера.
Мудрите ребята, компараторы, ацп... Все намного проще. При обнаружении на ножжке PB0 нуля Выключаем все переферию, сохраняем нужные данные в eeprom, останавливаем процессор. Обязательно установить Bodlevel на самое минимальное напряжение, во избежании записи в eeprom мусора. Кондер я ставил на 100мкф, хотя все работало и при 47мкф, но лучше перестраховаться.
Bonio, этот способ работает. Диод лучше шоттки, на выходе 7805 больших емкостей не надо, и побольше керамики. Но правильнее всё-таки заюзать компаратор.
Не забывайте, что если писать в прерывании, и количество данных небольшое, время записи будет намного меньше, чем способен протянуть кондёр. Контроллер черта лысого просчитать за это время сумеет...
Заголовок сообщения: Re: Как записать в EEPROM перед отключением питания
Добавлено: Вс янв 22, 2012 20:34:48
Поставщик валерьянки для Кота
Карма: 1
Рейтинг сообщений: 5
Зарегистрирован: Ср май 11, 2011 21:37:45 Сообщений: 1995 Откуда: Цветочный город
Рейтинг сообщения:0
ploop писал(а):
Не забывайте, что если писать в прерывании, и количество данных небольшое, время записи будет намного меньше, чем способен протянуть кондёр. Контроллер черта лысого просчитать за это время сумеет...
время записи одного байта обычно 4 миллисекунды. как это время может зависеть от прерываний - загадка...
_________________ битва с дураками проиграна, победители торжествуют. слава победителям!
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 7
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения