samples/boards/stm32/power_mgmt/blinky/README.html · samples/boards/stm32/power_mgmt/blinky/README.rst 공식 원문 ↗

Zephyr 3.7.0 · Boards · STM32 Power

STM32 PM Blinky

32768Hz LSE와 prescaler 32로 kernel sleep을 최대 64초까지 늘립니다.

Official pathsamples/boards/stm32/power_mgmt/blinky/README.html
Source filesamples/boards/stm32/power_mgmt/blinky/README.rst
Source versionZephyr 3.7.0
TranslationFull · reviewed

본문 기준: Zephyr 3.7.0 LTS3 · 이후 유지보수 패치는 별도입니다.

Part 1

요약·해설

stm32_lp_tick_source, tick rate와 PM device option을 설명합니다.

Clock

LSE · 32768 Hz

Prescaler

32

Sleep

Up to 64 s

Part 2

접을 수 있는 영어 원문 전체

영어 원문 전체 펼치기
원문 SHA-256 4CCA70CE2E91A59C6642337140A95493F9141F486922D7EECB552A5E63CF860F
.. _stm32-pm-blinky-sample:

STM32 PM Blinky
###############

Overview
********

This sample is a minimum application to demonstrate basic power management
behavior in a basic blinking LED set up using the :ref:`GPIO API <gpio_api>` in
low power context.
Note that lptim instance selected for the low power timer is named **&stm32_lp_tick_source**
When setting a prescaler to decrease the lptimer input clock frequency, the system can sleep
for a longer  timeout value and the CONFIG_SYS_CLOCK_TICKS_PER_SEC is adjusted.
For example, when clocking the  low power Timer with LSE clock at 32768Hz and adding a
prescaler of <32>, then the kernel sleep period can reach 65536 * 32/32768 = 64 seconds
CONFIG_SYS_CLOCK_TICKS_PER_SEC is set to 1024.

.. _stm32-pm-blinky-sample-requirements:

Requirements
************

The board should support enabling PM. For a STM32 based target, it means that
it should support a clock source alternative to Cortex Systick that can be used
in core sleep states, as LPTIM (:dtcompatible:`st,stm32-lptim`).

Building and Running
********************

Build and flash Blinky as follows, changing ``stm32l562e_dk`` for your board:

.. zephyr-app-commands::
   :zephyr-app: samples/basic/blinky
   :board: stm32l562e_dk
   :goals: build flash
   :compact:

After flashing, the LED starts to blink with a fixed period (SLEEP_TIME_MS).
When LPTIM input clock has a prescaler, longer perdiod (up to 64 seconds)
of low power can be tested.


PM configurations
*****************

By default, :kconfig:option:`CONFIG_PM_DEVICE` and :kconfig:option:`CONFIG_PM_DEVICE_RUNTIME` are
enabled, but user can also deactivate one or the other to see each configuration
in play.

Part 3

한국어 전문 번역

개요

Low-power context에서 GPIO API를 사용한 기본 blinking LED 구성의 power-management 동작을 보여주는 최소 application입니다.

Low-power timer로 선택한 LPTIM instance의 이름은 &stm32_lp_tick_source입니다. Prescaler로 low-power timer input clock frequency를 낮추면 system이 더 긴 timeout 동안 sleep할 수 있고 CONFIG_SYS_CLOCK_TICKS_PER_SEC도 조정됩니다.

예를 들어 low-power timer를 32768Hz LSE clock으로 구동하면서 prescaler를 <32>로 설정하면 kernel sleep period는 65536 × 32 / 32768 = 64초까지 늘어날 수 있고, CONFIG_SYS_CLOCK_TICKS_PER_SEC는 1024로 설정됩니다.

요구 사항

Board가 PM 활성화를 지원해야 합니다. STM32 기반 target에서는 core sleep state에서도 사용할 수 있는 Cortex SysTick 대체 clock source를 지원해야 하며, 그 예가 LPTIM(st,stm32-lptim)입니다.

Build와 실행

stm32l562e_dk를 사용하는 board로 바꿔 다음과 같이 Blinky를 build하고 flash합니다.

west build -b stm32l562e_dk samples/basic/blinky
west flash

Flash 뒤 LED가 고정된 period(SLEEP_TIME_MS)로 blink하기 시작합니다. LPTIM input clock에 prescaler가 있으면 최대 64초의 더 긴 low-power period를 시험할 수 있습니다.

PM configuration

기본적으로 CONFIG_PM_DEVICE와 CONFIG_PM_DEVICE_RUNTIME이 활성화되지만, 사용자가 둘 중 하나를 비활성화해 각 configuration의 효과를 확인할 수도 있습니다.

Source

출처

영어 원문에는 문단, 문서 지시문, 표, 코드, 코드 심벌, 경로를 그대로 보존했습니다.