Некоторые режимы энергосбережения STM32 и их особенности:
- Run — обычный режим, всё включено, доступна вся периферия, частота до 32 МГц. habr.com
- Low Power Run (LP Run) — специальный режим с рабочей частотой в пределах 131 кГц и максимальным потреблением, считая всю периферию, 200 мкА. habr.com Стабилизатор питания процессора переходит в специальный экономичный режим, что экономит до полусотни микроампер по сравнению с работой на той же частоте в режиме Run. habr.com Однако LP Run медленный и не имеет смысла, если процессору нужно выполнять какие-то вычисления, а не просто ждать внешних событий. habr.com
- Sleep — приостановка работы ядра, но с сохранением всех тактовых частот. habr.com Периферия процессора может продолжать работать, если ядро ей не нужно, но может быть и автоматически отключена. habr.com Sleep и LP Sleep не слишком экономичны (потребление до 2 мА) и нужны, если нужно сэкономить, но при этом оставить работающую периферию и/или обеспечить максимально быструю реакцию процессора на события. habr.com
- Stop — полная остановка всех тактовых частот, кроме «часового» генератора 32768 Гц, внешнего или внутреннего. habr.com Почти все ножки процессора сохраняют своё состояние. habr.com Содержимое ОЗУ сохраняется, внешние прерывания продолжают работать. habr.com
- Standby — полное выключение ядра процессора, ОЗУ и всей периферии, кроме часов реального времени. habr.com ОЗУ не сохраняется. habr.com Режим Standby обычно не используется, так как после него из-за обнуления ОЗУ невозможно продолжить с того же места, на каком остановились, а также есть некоторые проблемы с внешними устройствами. habr.com
Разработчик должен решить, какой режим ему следует использовать для конкретного приложения. blog.radiotech.kz Энергия и время, затрачиваемое на вход и выход из режима глубокого энергосбережения, могут перевесить любые потенциальные выгоды от энергосбережения. blog.radiotech.kz