STC32G12K128中有专门用于PWM的高级定时器,16位的,8个通道。可分成两组周期可以不同的PWM,就是PWMA和PWMB。这也就是前面介绍PWM相关寄存器中看到的PWMA_和PWMB_前缀的两组寄存器。
第一组 PWM/PWMA 的时钟频率可以是系统时钟经过寄存器 PWMA_PSCRH 和 PWMA_PSCRL 进行分频后的时钟,分频值可以是 1~65535 之间的任意值。
第二组 PWM/PWMB 的时钟频率可以是系统时钟经过寄存器 PWMB_PSCRH 和 PWMB_PSCRL 进行分频后的时钟,分频值可以是 1~65535 之间的任意值。
两组 PWM 的时钟频率可分别独立设置。
第一组 PWM 定时器/PWMA 有 4 个通道
PWM1P/PWM1N
PWM2P/PWM2N
PWM3P/PWM3N
PWM4P/PWM4N
每个通道都可独立实现 PWM 输出(可设置带死区的互补对称 PWM 输出)、捕获和比较功能;
第二组 PWM 定时器/PWMB 有 4 个通道
PWM5
PWM6
PWM7
PWM8
每个通道也可独立实现 PWM 输出、捕获和比较功能。
两组 PWM 定时器唯一的区别是第一组可输出带死区的互补对称 PWM,而第二组只能输出单端的 PWM,其他功能完全相同。
STC32G12K128中的PWM高级定时器可对外输出任意频率以及任意占空比的 PWM 波形。无需软件干预即可输出互补/对称/带死区的 PWM 波形。能捕获外部输入信号,可捕获上升沿、下降沿或者同时捕获上升沿和下降沿,测量外部波形时,可同时测量波形的周期值和占空比值。有正交编码功能、外部异常检测功能以及实时触发 ADC 转换功能。