PWM / DAC 动作
大约 2 分钟
PWM / DAC 动作
动作类型
| 动作 | actionType | 说明 |
|---|---|---|
| ACTION_SET_PWM | 4 | 设置 PWM 占空比 |
| ACTION_SET_DAC | 5 | 设置 DAC 输出值 |
配置示例
方式1:Web界面配置(推荐)
外设执行页面如下。PWM/DAC 动作配置时重点核对目标外设、占空比范围和是否使用触发接收值。
示例1:设置 PWM 占空比(LED调光)
场景:设置LED亮度为50%(占空比128/255)
配置步骤:
在外设执行管理页面编辑规则
点击 添加动作 按钮
填写动作配置:
字段 填写内容 说明 动作类型 选择 设置PWM PWM输出 目标外设 选择 led_pwmPWM输出外设 占空比值 1288位分辨率0-255 点击 保存 按钮
💡 提示:占空比范围取决于外设配置的pwmResolution:8位→0255,12位→04095
示例2:使用接收值动态设置PWM
场景:根据平台下发的值动态控制电机速度
配置步骤:
编辑规则,添加动作
填写:
- 动作类型:选择 设置PWM
- 目标外设:选择
motor_pwm - 使用接收值:✅ 启用
- 说明:触发时传入的值将作为PWM值
点击 保存
💡 提示:启用“使用接收值”后,平台下发[{"id":"motor_pwm","value":"200"}]会直接设置为PWM值
示例3:设置 DAC 输出值
场景:设置DAC输出电压(ESP32仅GPIO25/26支持)
配置步骤:
编辑规则,添加动作
填写:
- 动作类型:选择 设置DAC
- 目标外设:选择
dac1 - 输出值:
200(范围0-255,8位分辨率)
点击 保存
💡 提示:ESP32 DAC为8位,值0-255对应电压0-3.3V
方式2:JSON配置文件导入
适用外设类型
| 动作 | 适用外设 type |
|---|---|
| ACTION_SET_PWM | GPIO_PWM_OUTPUT(17), PWM_SERVO(41) |
| ACTION_SET_DAC | DAC(27) |
注意事项
- PWM 范围:超出分辨率范围的值会被限制到最大值
- DAC 引脚:ESP32 仅 GPIO 25/26 支持 DAC 输出
- 舵机控制:PWM_SERVO 外设通过 ACTION_SET_PWM 设置角度对应的脉宽值
