Nikolay801_ (18.10.2013 15:23, просмотров: 160) ответил fk0 на Вот расскажи как делать будем. Вводные данные. Потребление МК в максимуме порядка 70mA (PIC24EP512G810), через его выводы может утечь ещё 30ма в худшем случае (весьма оптимистично -- пару диодиков зажечь). У нас ещё горячо любимая AT45DB161.
это называется подгонка исходных данных под результат и я тоже так умею :) подавляющее большинство контроллеров и флешек работает в диапазоне напряжений от 2,7 до 3,3 так что dU тупо удваивается.
Если у Вас другой контроллер, то это Вы сами себе злобные буратины, у нас таких контроллеров не применяется.
Потребление процессора при работе от конденсатора не учитываем, при записи флешки процессор занимается 99% времени ожиданием готовности этой самой флешки и ему можно скинуть мегагерцы.
Флешку можно взять по экономичней, M25P16 те же 16 Мбит, но запись 5 мС при токе 15 мА.
получаем емкость 125 мкФ - не феномен.
Энергия запасенная в конденсаторе (как это не странно) в большей степени зависит от его габаритов чем от фарад и вольт и ставить его нужно туда где меньше нахлебников, те после стабилизатора, а по входу стабилизатора нужно отслеживать момент выключения питания, у нас с той стороны 5 В, те нужен компаратор с верхним порогом 4,5В нижним 3,5В какой 1%?
С компаратора рождается powerOK, от которого и пляшем в дальнейшей.
Архитектура ПО не памятник, подвинется. ПО делается под изделие, а не изделие под ПО
Процедура записи у нас будет блокирующей и от этого и будем плясать.
powerOK проверять до записи, если OK, то смело пишем, если нет - то досвиданья. В процессе записи вместе с опросом готовности флеши опрашиваем powerOK, если стало не OK, скидываем процессору мегагерцы, гасим всю иллюминацию.
после записи (если случился не OK) ждем пока не восстановится и если восстановилось, то включаем иллюминацию.
прерывание от powerOK на время записи глушим.
А вот у нас есть одно изделие где батарейку ставить нельзя, а сигналы точного времени мы берем снаружи. И это Вам не какой то единичный случай.
Дуризьм при эксплуатации в одном конкретном случае в общем случае не победим, от всех дураков не защитишься. Можно при выключении читать dT от предыдущего выключения и если менее часа то беречь флешь.
И я не против эмуляции епрома на флеше, это хорошая метода, но в некоторых случаях достаточно чего то более примитивного.
Будь ты проклят, Перри-Утконос!