7.8.4. 测试指南¶
7.8.4.1. 测试环境¶
7.8.4.1.1. 硬件¶
- 开发板 
- 示波器,用于观察输出PWM信号的波形 
7.8.4.1.2. 软件¶
- PC端的串口终端软件,用于PC和开发板进行串口通信 
- RT-Thread 系统自带的 - pwm命令行工具
7.8.4.1.3. 软件配置¶
当打开 RT-Thread 系统的 PWM设备驱动框架,就会在启动时注册生成 pwm 命令。
7.8.4.2. 动态配置 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 set 3 1000000 600000
pwm info set on pwm at channel 3
aic /> pwm enable 3
pwm channel 3 is enabled success
aic />
aic /> pwm set 3 1000000 100000
pwm info set on pwm at channel 3
aic /> pwm set 3 1000000 900000
pwm info set on pwm at channel 3
在修改通道3的参数时,需要借助示波器来观察确认输出的方波信号是否符合预期。
- 指定数目脉冲输出 
aic /> pwm set_pul 3 0 1000000 500000 5
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 3 0 1000000 500000 5
pwm pul set on pwm at channel 3
aic /> [I] aic_pwm_irq()198
isr cnt:5,disabled the pwm3 interrupt now.
脉冲输出的方向与action配置有关,同时指定脉冲数目输出依赖中断,中断模式需要与action配置相对应。
其中irq_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
 0  0   Up    24000000   0   -   -   -   -   -   -
                             -   -   -   -   -   -
 1  0   Up    24000000   0   -   -   -   -   -   -
                             -   -   -   -   -   -
 2  0   Up    24000000   0   -   -   -   -   -   -
                             -   -   -   -   -   -
 3  1   Up    24000000   0   -   -   - Low Hgh   -
                             -   -   - Low Hgh   -
通道3默认配置为CAU动作,所以此处irq_mode配置为0。同时由于CAU为Low,所以输出的脉冲方向为下降沿。