STATIC OPERATE_RET __dev_light_pwm_init(VOID_T)
{
OPERATE_RET v_ret = OPRT_COM_ERROR;
Code: Select all
tkl_pwm_mapping_to_gpio((UINT32_T)TUYA_PWM_NUM_0, USER_PWM_CH_0_PIN);
tkl_pwm_mapping_to_gpio((UINT32_T)TUYA_PWM_NUM_1, USER_PWM_CH_1_PIN);
TUYA_PWM_BASE_CFG_T v_cfg = {
.duty = 0,
.frequency = DEF_PWM_FREQUENCY,
.polarity = TUYA_PWM_POSITIVE,
};
tkl_pwm_idle_level_set(TUYA_PWM_NUM_0, 0);
v_ret = tkl_pwm_init(TUYA_PWM_NUM_0, &v_cfg1);
TUYA_PWM_BASE_CFG_T v_cfg1 = {
.duty = 0,
.frequency = DEF_PWM_FREQUENCY,
.polarity = TUYA_PWM_NEGATIVE,
};
tkl_pwm_idle_level_set(TUYA_PWM_NUM_1, 0);
v_ret = tkl_pwm_init(TUYA_PWM_NUM_1, &v_cfg);
tkl_pwm_start((TUYA_PWM_NUM_E)0xFF);
sg_pwm_init_flag = TRUE;
app_light_ctrl_ch_num_set(DEF_PWM_CH_NUM);
TAL_PR_DEBUG("pwm init ok!");
return v_ret;
}
OPERATE_RET app_light_init(VOID_T)
{
__dev_light_pwm_init();
Code: Select all
__dev_power_on_reset_data();
__dev_power_on_read_app_setting_data();
ac_clear_reset_flag=1;
app_model_config_init();
__app_light_ctrl_rgbcw_set(0, 0, 0, 500, 0);//test
}
sdk:TLSR8258_TuyaOS-3.9.0
一路pwm设置为正极性,另外一路设置为负极性。一路pwm设置输出500,另外一路输出0,上电会出现一个高电平,闪一下黄光