Например TDA7294

Форум РадиоКот :: Просмотр темы - STM32F103C6T6 STEND-BY
Форум РадиоКот
https://radiokot.ru/forum/

STM32F103C6T6 STEND-BY
https://radiokot.ru/forum/viewtopic.php?f=59&t=195227
Страница 1 из 1

Автор:  aleksey chilov [ Чт окт 17, 2024 10:08:31 ]
Заголовок сообщения:  STM32F103C6T6 STEND-BY

Добрый день!
Разбираюсь с режимом сна и низкого
энергопотребления. Вобщем цель отключать/включать
с кнопки устройство. Возникла проблема не могу справится с ней.
При входе в режим stend-by всё отрубается и всё хорошо.
Когда подаю на пин РА0 всё как описано в референс контролер очухивается
проходит инит всего всего и снова вырубается в спячку.
Вот настройки которые сделал я.
Подскажите пожалуйста, чего не хватает???

SET_BIT(PWR->CSR, PWR_CSR_EWUP); // WKUP для выхода из режима ST-BY
SET_BIT(PWR->CR, PWR_CR_CWUF_Msk); // Сброс флага
SET_BIT(SCB->SCR, SCB_SCR_SLEEPDEEP_Msk); // Глубокий сон
SET_BIT(PWR->CR, PWR_CR_PDDS_Msk); // Войти в Standby когда CPU в SLEEPDEEP
__WFI();

Тактирование включено отдельно... Там в другом месте.

Автор:  Базилюк [ Чт окт 17, 2024 20:32:07 ]
Заголовок сообщения:  Re: STM32F103C6T6 STEND-BY

Опять же, в мануале RM0008 четко написана последовательность действий для входа и для выхода из стендбая.

Перевод из мануала:
Выход из режима ожидания
Микроконтроллер выходит из режима ожидания, когда происходит внешний сброс (контакт NRST), сброс IWDG, нарастающий фронт на контакте WKUP или нарастающий фронт сигнала тревоги RTC (см. Рисунок 179: Упрощенная блок-схема RTC). Все регистры сбрасываются после выхода из режима ожидания, за исключением регистра управления питанием/состояния (PWR_CSR).
После выхода из режима ожидания выполнение программы перезапускается так же, как и после сброса (выборка загрузочных контактов, выборка векторного сброса и т. д.). Флаг состояния SBF в регистре управления питанием/состояния (PWR_CSR) указывает, что микроконтроллер находился в режиме ожидания.
Дополнительные сведения о выходе из режима ожидания см. в Таблице 15.

Изображение

Таким образом, проверяя флаг SBF в регистре PWR->CSR можно определить, из какого состояния запустился МК. Поскольку стендбай подразумевает остановку работы МК и выключение внутренних регуляторов питания
Изображение

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/