测试指南
测试环境:
- 硬件
-
开发板
-
示波器,用于观察输出 PWM 信号的波形
-
- 软件:
- PC 端的串口终端软件,用于 PC 和开发板进行串口通信
- RT-Thread 系统自带的
pwm
命令行工具
软件配置
打开 RT-Thread 系统的 PWM 设备驱动框架,就会在启动时注册生成 pwm
命令。
动态配置 PWM
使用 pwm
命令来配置某一通道的步骤:(以通道 3 为例)
-
使用 probe 参数,选择一个 PWM 设备(PWM/EPWM),其中
pwm
命令只支持 probe 一个设备。 -
使用 set 参数,设置通道 3 的周期、占空比
-
enable 通道 3
-
运行期间也可以动态 set 通道 3 的周期、占空比
aic /> pwm Usage: pwm probe <device name> - probe pwm by name pwm enable <channel> - enable pwm channel pwm disable <channel> - disable pwm channel pwm get <channel> - get pwm channel info pwm set_pul <channel> <irq_mode> <period> <pulse> <pulse cnt> - set pwm pulse pwm set <channel> <period> <pulse> - set pwm channel info aic /> pwm probe pwm probe pwm success aic /> pwm set31000000600000 pwm info set on pwm at channel 3 aic /> pwm enable3 pwm channel 3 is enabled success aic /> aic /> pwm set31000000100000 pwm info set on pwm at channel 3 aic /> pwm set31000000900000 pwm info set on pwm at channel 3
在修改通道 3 的参数时,需要借助示波器来观察确认输出的方波信号是否符合预期。
-
指定数目脉冲输出
aic /> pwm set_pul 3010000005000005 pwm pul set on pwm at channel 3 aic /> [I] aic_pwm_irq()198 isr cnt:5,disabled the pwm3 interrupt now. aic /> pwm set_pul 3010000005000005 pwm pul set on pwm at channel 3 aic /> [I] aic_pwm_irq()198 isr cnt:5,disabled the pwm3 interrupt now.
脉冲输出的方向与 action 配置有关,同时指定脉冲数目输出依赖中断,中断模式需要与 action 配置相对应。
其中 mode 范围为 0-3,依次为:-
0: TBCTR=CMPA 且计数器正在递增时触发事件
-
1: TBCTR=CMPA 且计数器正在递减时触发事件
-
2: TBCTR=CMPB 且计数器正在递增时触发事件
-
3: TBCTR=CMPB 且计数器正在递减时触发事件
例如下面以通道 3 为例说明,使用
pwm_status
查看 action 配置。aic /> pwm_status In PWM V1.00: Module Enable: 1, IRQ Enable: 0x8 Ch En Mode Tb-clk-rate Def CBD CBU CAD CAU PRD ZRO 00 Up 240000000 - - - - - - - - - - - - 10 Up 240000000 - - - - - - - - - - - - 20 Up 240000000 - - - - - - - - - - - - 31 Up 240000000 - - - Low Hgh - - - - Low Hgh -
通道 3 默认配置为 CAU 动作,所以此处 mode 配置为 0。同时由于 CAU 为 Low,所以输出的脉冲方向为下降沿。
-