PIC628A. В процессе работы производится запись данных в EEPROM. После этого переход в SLEEP. После пробуждения из SLEEP (изменением состояния RB5) дальнейшая запись в EEPROM прекращается по непонятной причине. После перезапуска контроллера (выключением питания) запись в EEPROM восстанавливается до следующего перехода в SLEEP. Что может быть?
Errat'у откроем и почитаем: http://ww1.microchip.com/downloads/en/D ... 80151N.pdf В разделе "Module: Data EEPROM Memory" описаны возможные глюки EEPROM и способы их обхода. Не факт, что ваш случай, но попробуйте прочитать, проникнуться и последовать им. Там при записи (установки WR в EECON1) рекомендуют прям следующей инструкцией же уходить в сон. Предварительно выставив прерывание для выхода из сна по окончанию записи. Выключив все другие прерывания.
Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ очень важен контроль процесса заряда и разряда для избегания воздействия внешнего зарядного напряжения после достижения 100% заряда. Инженеры КОМПЭЛ подготовили список таких решений от разных производителей.
Компания EVE выпустила новый аккумулятор серии PLM, сочетающий в себе высокую безопасность, длительный срок службы, широкий температурный диапазон и высокую токоотдачу даже при отрицательной температуре.
Эти аккумуляторы поддерживают заряд при температуре от -40/-20°С (сниженным значением тока), безопасны (не воспламеняются и не взрываются) при механическом повреждении (протыкание и сдавливание), устойчивы к вибрации. Они могут применяться как для автотранспорта (трекеры, маячки, сигнализация), так и для промышленных устройств мониторинга, IoT-устройств.
До SLEEP запись происходит. Значит здесь ошибок нет. После SLEEP в рег. STATUS "выскакивает" флаг RD. Но это информационный флаг, а не запрещающий. Что до SLEEP так и после используется один и тот-же набор команд.
Что до SLEEP так и после используется один и тот-же набор команд.
Но разный контекст. Поэтому вас и просили привести код. Ответ на вопрос в стиле "у меня всё написано правильно, но почему то не работает" - невозможен по определению.
Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 25
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения