6. 部分芯片低功耗调试配置

本文档描述了部分芯片中低功耗相关的调试配置选项。

这些配置分为两部分:打印调试控制和实际运行代码控制,通过预编译常量控制特定功能的使能状态。

开关这些控制位,可以控制代码大小。

6.1. 各个系列芯片支持的配置情况

备注

表格符号含义:
1. √ 表示已经实现
2. × 表示在当前项目中未实现

6.1.1. 修改后禁止用于生产的配置

表一 AD1x-4578_AC104 SDK 低功耗配置支持情况,此表内容修改后禁止用于生产

序号

配置项

AD14N

AD15N

AD17N

CD09(CH58)

1

debug_is_idle

×

×

6.1.2. 允许修改的配置

表二 AD1x-4578_AC104 SDK 低功耗配置支持情况,此表内容允许修改

序号

配置项

AD14N

AD15N

AD17N

CD09(CH58)

1

control_soff

×

2

control_pdown

×

3

control_poff

×

×

×

×

6.1.3. 严禁修改的配置

表三 AD1x-4578_AC104 SDK 低功耗配置支持情况,此表内容严禁修改

序号

配置项

AD14N

AD15N

AD17N

CD09(CH58)

1

pdebug_xosc_resume

×

×

×

×

2

pdebug_pdown_info

×

×

×

×

3

pdebug_uart_lowpower

×

×

×

×

4

pdebug_uart_port

×

×

×

×

5

pdebug_putbyte_pdown

×

×

×

×

6

pdebug_putbyte_soff

×

×

×

×

7

pdebug_lp_dump_ram

×

×

×

×

8

pdebug_uart_flowing

×

×

×

×

9

pdebug_reserve_time

×

×

×

×

10

control_power_reset_mark

×

×

×

×

11

control_power_soft_reset

×

×

×

×

12

control_power_pinr_reset

×

×

×

×

13

control_power_pinr_reset

×

×

×

×

14

control_power_latch_reset

×

×

×

×

15

control_power_reset

×

×

×

×

16

control_power_wakeup_mark

×

×

×

×

17

control_power_wakeup

×

×

×

×


6.2. 第一部分:打印调试控制

此部分配置用于调试目的,通过串口输出调试信息,不影响实际功能逻辑。


6.2.1. 空闲状态调试

1.功能:

系统调用休眠函数,但还没有完全进入低功耗休眠时的打印信息。

1const char debug_is_idle = 0;

2.输出信息:

  • 蓝牙和系统可进入低功耗的时间(毫秒)

  • 当前处于 busy 状态的模块

  • 若 usr_timer 忙,则打印对应的函数地址


6.3. 第二部分:实际运行代码控制

此部分配置控制实际功能模块的编译与运行。


6.3.1. PMU 相关模块开关

1.使能pdown模块:

1#if 1  // 由 TCFG_LOWPOWER_LOWPOWER_SEL 配置决定
2const bool control_pdown = 1;
3#else
4const bool control_pdown = 0;
5#endif

2.使能SOFF模块:

1const bool control_soff = 1;  // 通常由 TCFG_LOWPOWER_SOFF 配置

3.使能poff模块:

1#if 0  // 由 TCFG_LOWPOWER_LOWPOWER_SEL 配置决定
2const bool control_poff = 1;  // DEEP_SLEEP_EN 时使能
3#else
4const bool control_poff = 0;
5#endif