ZHCSXG9 September 2024 DRV81620-Q1
ADVANCE INFORMATION
该器件具有两个独立集成的 PWM 发生器。每个 PWM 发生器可以分配到一个或多个通道,并且可以使用不同的占空比和频率进行编程。
两个 PWM 发生器都是指由内部振荡器生成的基频 fINT。这个基频可以用下面描述的 FPWM 位来调整。
FPWM 位 | fINT 的差值 |
0000b | 保留 |
0001b | -37.2% |
0010b | -31.9% |
0011b | -26.9% |
0100b | -21% |
0101b | -15.5% |
0110b | -10.9% |
0111b | -5.8% |
1000b | - |
1001b | +4.3% |
1010b | +8.9% |
1011b | +14% |
1100b | +19.5% |
1101b | +25.6% |
1110b | +32.4% |
1111b | +40% |
对于每个 PWM 发生器,可以设置四个参数:
占空比(PWM 发生器 0 的位 DC0)
提供 8 位以实现 0.39% 的占空比分辨率
当微控制器对新的占空比进行编程时,PWM 发生器会等待前一个周期完成,然后再使用新的占空比(当占空比为 0% 或 100% - 新的占空比在下一个 PWM 周期获取时也会发生这种情况)
可实现的最大占空比为 99.61%(DC0 设置为 11111111b)。通过将 FREQ0 设置为 11b,可以实现 100%。
频率(位 FREQ0、FREQ1、FCTR0 和 FCTR1 为 fINT 选择分频器,以实现所需的占空比)
FCTR0 | FREQ0 | PWM 频率 |
0b | 00b | fINT/1024(对应于 100Hz) |
0b | 01b | fINT/512(对应于 200Hz) |
0b | 10b | fINT/256(对应于 400Hz) |
1b | 00b | fINT/128(对应于 800Hz) |
1b | 01b | fINT/64(对应于 1600Hz) |
1b | 10b | fINT/51.2(对应于 2000Hz) |
FCTR1 | FREQ1 | PWM 频率 |
0b | 00b | fINT/1024(对应于 100Hz) |
0b | 01b | fINT/512(对应于 200Hz) |
0b | 10b | fINT/256(对应于 400Hz) |
1b | 00b | fINT/128(对应于 800Hz) |
1b | 01b | fINT/64(对应于 1600Hz) |
1b | 10b | fINT/51.2(对应于 2000Hz) |
通道输出控制和映射寄存器 PWM_OUT 和 MAP_PWM
任何通道都可以映射到每个 PWM 发生器
加之 2 个并行输入,从微控制器资源和 SPI 数据流量的角度来看,可以使用省力的方式拥有 4 个独立的 PWM 通道组。
图 7-11 扩展了添加 PWM 发生器中所示的概念。