ZHCAF34 March 2025 AM2612 , AM2612-Q1 , AM2631 , AM2631-Q1 , AM2632 , AM2632-Q1 , AM2634 , AM2634-Q1 , AM263P2-Q1 , AM263P4 , AM263P4-Q1
可以从 IEP_COUNT_REG0 (0x3002E010) 和 IEP_COUNT_REG1 (0x3002E014) 寄存器中读取 IEP 计数器值。当 IEP 计数器达到 CMP0 寄存器中设置的比较值时,将生成比较事件(CMP0 事件)。
将 IEP 计数器设置为在计数器达到 CMP0 值时回绕。为此,请设置 IEP_CMP_CFG_REG 寄存器 (0x3002E070) 中的 CMP0_RST_CNT_EN 位字段 = 0x1 并启用 CMP0 事件。
在 IEP_CMP0_REG0 寄存器 (0x3002E078) 中配置 CMP0_0 位字段 = 62500 - 4,使 IEP 计数器每 62500 个计数时复位一次。当 IEP 时钟源以 250MHz 运行并且每个时钟周期 IEP 计数器递增四时,这个对应于 62.5µs。
配置 IEP_CMP1_REG0 寄存器 (0x3002E080) 中的 CMP1_0 位字段 = 1000 - 4,以定义到 1µs 的同步信号激活时间,这将定义同步信号在 IEP 计数器的哪个点被激活,并启用 CMP1 事件。
通过配置 IEP_GLOBAL_CFG_REG 寄存器 (0x3002E000) 中的 DEFAULT_INC 位字段 = 0x4,设置 IEP 计数器的默认增量值,使 IEP 计数器每个 IEP 源时钟周期递增四次。
通过写入 IEP_SYNC_PWIDTH_REG 寄存器 (0x3002E190) 中的 SYNC_HPW 位字段 = 10 - 1,将 SYNC0 脉冲宽度定义为 10 个时钟周期。这决定了 SYNC0 信号保持高电平的持续时间。
设置 IEP_SYNC_CTRL_REG (0x3002E180) 寄存器中的 SYNC_EN 和 SYNC0_EN 位字段 = 0x1 以及 SYNC0_CYCLIC_EN 位字段 = 0x0,以便在单次模式下启用 SYNC0。
设置 ICSSG_SA_MX_REG 寄存器 (0x30026040) 中的 PWM_EFC_EN 位字段 = 0x1,以启用 IEP CMP 标志实现自动硬件清除。
一旦完成了所需的寄存器配置,就会写入 CMP0 任务。