Миландр

Ключевым подразделением нашей компании
является Центр Проектирования интегральных микросхем
Текущее время: 2021-ноя-28 02:28

Часовой пояс: UTC+03:00




Начать новую тему  Ответить на тему  [ 9 сообщений ] 
Автор Сообщение
СообщениеДобавлено: 2021-сен-01 10:48 
Не в сети

Зарегистрирован: 2018-мар-08 11:37
Сообщения: 68
Организация: частное
Возник вопрос о глубокой перезагрузки МК 1986ВЕ9Х.
Программного NVIC_SystemReset (); недостаточно.
При загрузки МК выставляются FPOR в регистре BKP_REG_0E, который может быть сброшен только при отключении основного питания. Хранится режим MODE[2:0].
Сейчас использую управляемый стабилизатор с функцией ON/OFF.
Есть ли программный способ выключения питания ?
Нужно в автоматическом режиме переключать загрузчик.


Вернуться к началу
СообщениеДобавлено: 2021-сен-06 11:49 
Не в сети
Support

Зарегистрирован: 2017-май-31 15:10
Сообщения: 107
Организация: АО "ПКК Миландр"
Откуда: АО "ПКК Миландр"
Ivan44 писал(а): *
Возник вопрос о глубокой перезагрузки МК 1986ВЕ9Х.
Программного NVIC_SystemReset (); недостаточно.
При загрузки МК выставляются FPOR в регистре BKP_REG_0E, который может быть сброшен только при отключении основного питания. Хранится режим MODE[2:0].
Сейчас использую управляемый стабилизатор с функцией ON/OFF.
Есть ли программный способ выключения питания ?
Нужно в автоматическом режиме переключать загрузчик.
Добрый день.
Если нужно программно переключать загрузчик, то:
-меняем режим в BKP_REG_0E, биты MODE[2:0];
-делаем программный сброс.

В данном материале представлена диаграмма процесса:

https://support.milandr.ru/base/spravka ... osy/31238/

Сброшенный бит FPOR инициирует чтение режима старта с внешних выводов.

_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
СообщениеДобавлено: 2021-сен-29 11:19 
Не в сети

Зарегистрирован: 2018-мар-08 11:37
Сообщения: 68
Организация: частное
Artem1 писал(а): *
Ivan44 писал(а): *
Возник вопрос о глубокой перезагрузки МК 1986ВЕ9Х.
Программного NVIC_SystemReset (); недостаточно.
При загрузки МК выставляются FPOR в регистре BKP_REG_0E, который может быть сброшен только при отключении основного питания. Хранится режим MODE[2:0].
Сейчас использую управляемый стабилизатор с функцией ON/OFF.
Есть ли программный способ выключения питания ?
Нужно в автоматическом режиме переключать загрузчик.
Добрый день.
Если нужно программно переключать загрузчик, то:
-меняем режим в BKP_REG_0E, биты MODE[2:0];
-делаем программный сброс.


Спасибо, попробую

В данном материале представлена диаграмма процесса:

https://support.milandr.ru/base/spravka ... osy/31238/

Сброшенный бит FPOR инициирует чтение режима старта с внешних выводов.

Спасибо, попробую


Вернуться к началу
СообщениеДобавлено: 2021-сен-29 12:28 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 589
Artem1 писал(а): *
Добрый день.
Если нужно программно переключать загрузчик, то:
-меняем режим в BKP_REG_0E, биты MODE[2:0];
-делаем программный сброс.


В данном материале представлена диаграмма процесса:

https://support.milandr.ru/base/spravka ... osy/31238/

Сброшенный бит FPOR инициирует чтение режима старта с внешних выводов.
Из занудства, цитата по приведённой Вами ссылке: "Бит FPOR сбрасывается только по сбросу при включении основного и батарейного питания."


Вернуться к началу
СообщениеДобавлено: 2021-сен-29 13:50 
Не в сети

Зарегистрирован: 2020-дек-10 09:35
Сообщения: 58
Организация: Startex
Бит FPOR это обычный бит в регистре батарейного домена BKP, регистры которого не сбрасываются (сохраняют значение) пока есть основное питание или батарейное. Начальный загрузчик исполняется при подаче питания или при Reset, и он проверяет этот бит:

A: если бит FPOR нулевой, значит это первый запуск загрузчика по подаче Ucc, поэтому:
- опрашиваются выводы MODE, их значение записывается в регистр BKP
- вставляется бит FPOR в регистре BKP, чтобы при следующем запуске загрузчика по Reset выводы MODE не опрашивать.
- переход на исполнение согласно режиму MODE

B: если бит FPOR активен, значит обрашивать биты MODE не надо, т.к. это не первый запуск. Поэтому:
- значение MODE читается из регистра BKP
- переход на исполнение согласно режиму MODE

Поэтому впринципе все верно:
Цитата:
-Сброшенный бит FPOR инициирует чтение режима старта с внешних выводов.
-Бит FPOR сбрасывается только по сбросу при включении основного и батарейного питания."
Сам про себе бит (со всеми регистрами) сбрасывается только при снятии питания BKP, но принудительно его можно сбросить и ябром.

Вот в 1986ВЕ1Т бит FPOR это chipSelect для выбора памяти BootRom/Flash, там сброс бита сразу вдарит по мозгам.


Вернуться к началу
СообщениеДобавлено: 2021-сен-29 15:25 
Не в сети
Support

Зарегистрирован: 2017-май-31 15:10
Сообщения: 107
Организация: АО "ПКК Миландр"
Откуда: АО "ПКК Миландр"
AndOrFin писал(а): *
Сам про себе бит (со всеми регистрами) сбрасывается только при снятии питания BKP, но принудительно его можно сбросить и ябром.
Принудительно сбросить ядром FPOR нельзя. Сброс данного бита происходит только при переключении питания.

_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
СообщениеДобавлено: 2021-сен-29 18:09 
Не в сети

Зарегистрирован: 2020-дек-10 09:35
Сообщения: 58
Организация: Startex
... Действительно, пардон, приврал.
В 1986ВЕ1 камень сразу отваливался, а здесь писать туда ноль можно и ничего не падает. Но при этом и бит в 0 не сбрасывается.


Вернуться к началу
СообщениеДобавлено: 2021-сен-30 15:08 
Не в сети
Support

Зарегистрирован: 2017-май-31 15:10
Сообщения: 107
Организация: АО "ПКК Миландр"
Откуда: АО "ПКК Миландр"
AndOrFin писал(а): *
В 1986ВЕ1 камень сразу отваливался, а здесь писать туда ноль можно и ничего не падает. Но при этом и бит в 0 не сбрасывается.
Цитата:
Вот в 1986ВЕ1Т бит FPOR это chipSelect для выбора памяти BootRom/Flash, там сброс бита сразу вдарит по мозгам.
Не совсем понятно, что Вы имеете в виду. Но для 1986ВЕ1Т точно также:
сбросить FPOR возможно только перещелкиванием питания и, соответственно, любое программное воздействием ядром на данный бит не окажет ни какого влияния на микроконтроллер.

_________________
Отдел технической поддержки support@milandr.ru


Вернуться к началу
СообщениеДобавлено: 2021-сен-30 16:35 
Не в сети

Зарегистрирован: 2009-сен-21 12:39
Сообщения: 589
Artem1 писал(а): *
сбросить FPOR возможно только перещелкиванием питания и, соответственно, любое программное воздействием ядром на данный бит не окажет ни какого влияния на микроконтроллер.
Что не удобно ни разу, т.к. что бы отличить POR от WDR или другого сброса надо плясать с бубном.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 9 сообщений ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и 4 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: 

cron
Создано на основе phpBB® Forum Software © phpBB Limited
Русская поддержка phpBB