а вот программа МК уже весьма и весьма хитро сделана: в активном режиме "заряжается" встроенный конденсатор схемы выборки-хранения АЦП путем выдачи на один из портов высокого уровня.
если питание выключается ненадолго - этот конденсатор разрядиться не успевает, и АЦП на этом входе что-то намеряет. если питание отключить на несколько секунд - конденсатор разрядится и АЦП покажет 0.
алгоритм переключения режима таков: после подачи питания включается сохраненный ранее в EEPROM. если просто выключить питание - так все и останется. а вот если выключить-включить питание быстро, то МК это обнаруживает по вышеописанному алгоритму и переключает режим, сохраняя его в EEPROM.
можно еще использовать аналогичный эффект емкости выводов питания - нескольких пикофарад хватает, чтобы за долю секунды содержимое ОЗУ не усело попортиться... но это игра на грани фола.
при взгляде на многих сверху ничего не меняется...
Мой уютный бложик... заходите!


