xt-sdk 文档 v1.0.3
xt-sdk 嵌入式 SDK API 参考
载入中...
搜索中...
未找到
xt_hal_pm.h 文件参考

XTINY HAL 电源管理模块接口 更多...

#include "xt_hal_internal.h"
#include "xt_hal_rtc.h"

浏览该文件的源代码.

宏定义

#define XT_HAL_PM_INVALID_ID   (0xFF)

类型定义

typedef void(* xt_hal_pm_cb_t) (uint8_t id, uint32_t event_id)
 PM 回调函数类型定义

枚举

enum  xt_hal_pm_event_id { XT_HAL_PM_EVENT_WAKEUP = 0x00 , XT_HAL_PM_EVENT_TIMER = 0x01 }
 PM 事件ID枚举 更多...
enum  xt_hal_pm_mode { XT_HAL_PM_MODE_WORK = 0 , XT_HAL_PM_MODE_SLEEP , XT_HAL_PM_MODE_PSM , XT_HAL_PM_MODE_MAX }
 工作模式枚举 更多...
enum  xt_hal_pm_wake_reason { XT_HAL_PM_WAKE_REASON_RESET = 0 , XT_HAL_PM_WAKE_REASON_RTC , XT_HAL_PM_WAKE_REASON_WAKEUP , XT_HAL_PM_WAKE_REASON_KEY_WAKEUP }
 唤醒原因枚举 更多...
enum  xt_hal_pm_last_state { XT_HAL_PM_LAST_STATE_RESET = 0 , XT_HAL_PM_LAST_STATE_DEEP_SLEEP = 3 , XT_HAL_PM_LAST_STATE_STANDBY = 4 }
 上次状态枚举 更多...
enum  xt_hal_pm_wake_reason_detail { XT_HAL_PM_WAKE_REASON_DETAIL_RESET = 0 , XT_HAL_PM_WAKE_REASON_DETAIL_RTC = 1 , XT_HAL_PM_WAKE_REASON_DETAIL_WAKEUP = 2 , XT_HAL_PM_WAKE_REASON_DETAIL_WAKEUP_RTC = 3 }
 唤醒原因详细枚举 更多...
enum  xt_hal_pm_power_on_reason {
  XT_HAL_PM_POWER_ON_NORMAL = 0 , XT_HAL_PM_POWER_ON_CHARGING , XT_HAL_PM_POWER_ON_ALRAM , XT_HAL_PM_POWER_ON_EXCEPTRESET ,
  XT_HAL_PM_POWER_ON_FOTA , XT_HAL_PM_POWER_ON_RTC , XT_HAL_PM_POWER_ON_RESET , XT_HAL_PM_POWER_ON_WDT ,
  XT_HAL_PM_POWER_ON_STANDBY , XT_HAL_PM_POWER_ON_SW_RESET , XT_HAL_PM_POWER_ON_UNKNOWN , XT_HAL_PM_POWER_ON_INVALID
}

函数

xt_err_t xt_hal_pm_request (uint8_t mode)
 请求进入指定功耗模式
xt_err_t xt_hal_pm_force (uint8_t mode)
 强制进入指定功耗模式
int32_t xt_hal_pm_check (uint8_t mode)
 检查是否可以进入指定低功耗模式
xt_err_t xt_hal_pm_timer_setup (uint8_t timer_id, uint32_t timeout_ms, xt_hal_pm_cb_t cb)
 设置定时唤醒
xt_err_t xt_hal_pm_timer_close (uint8_t timer_id)
 关闭定时唤醒
bool xt_hal_pm_timer_is_running (uint8_t timer_id)
 检查定时器是否运行
xt_err_t xt_hal_pm_timer_get_remaining (uint8_t timer_id, xt_hal_rtc_timestamp_t *remaining_time_ms)
 获取定时器剩余时间
xt_err_t xt_hal_pm_get_last_state (uint8_t *last_state, uint8_t *wake_reason)
 唤醒原因,用于判断是从开机是否是由休眠状态下开机/唤醒
int32_t xt_hal_pm_get_wake_reason (void)
 获取开机原因
int32_t xt_hal_pm_get_reset_reason (void)
 获取重启原因,等同于获取开机原因
xt_err_t xt_hal_pm_poweroff (void)
 系统关机
xt_err_t xt_hal_pm_reset (void)
 系统复位
xt_err_t xt_hal_pm_set_power (uint8_t power_id, uint8_t val)
 控制内部电源域开关

详细描述

XTINY HAL 电源管理模块接口

作者
your name (you@d.nosp@m.omai.nosp@m.n.com)
版本
0.1
日期
2025-11-05

SPDX-FileCopyrightText: 2025 深圳市天工聚创科技有限公司 SPDX-License-Identifier: Apache-2.0

在文件 xt_hal_pm.h 中定义.