开源改变世界!!

$Spindle/PWM/Invert 不能正常工作 #630

推推 grbl 2年前 (2023-01-30) 61次浏览
打开
semos2k 打开了这个问题 2020 年 10 月 7 日 · 1条评论
打开

$Spindle/PWM/Invert 不能正常工作#630

semos2k 打开了这个问题 2020 年 10 月 7 日 · 1条评论

注释

$Spindle/PWM/Invert 不能正常工作 #630

嗨,我测试了最新版本的主要版本和选项“$Spindle/PWM/Invert=On”无法正常工作,当打开 esp32 电源时,该值未设置,因为下一个片段关闭代码:

void PWM::set_output(uint32_t duty) {
        if (_output_pin == UNDEFINED_PIN) {
            return;
        }

        // to prevent excessive calls to ledcWrite, make sure duty hass changed
        if (duty == _current_pwm_duty) {
            return;
        }

        _current_pwm_duty = duty;

        if (_invert_pwm) {
            duty = (1 << _pwm_precision) - duty;
        }

        //grbl_msg_sendf(CLIENT_SERIAL, MsgLevel::Info, "set_output(%d)", duty);

        ledcWrite(_pwm_chan_num, duty);
    }

代码问题在:

        // to prevent excessive calls to ledcWrite, make sure duty hass changed
        if (duty == _current_pwm_duty) {
            return;
        }

只有当我运行M3 S1000M3 S0时它才起作用,我已经评论了代码并且它起作用了,但是在一小段时间它设置了错误的值。

您使用的是什么版本的固件?last (main) Devt ( #628 )
问题是否可重复?是的

$Spindle/PWM/Invert 不能正常工作 #630 semos2k 添加了 漏洞 有些东西不工作标签 2020 年 10 月 7 日
$Spindle/PWM/Invert 不能正常工作 #630

嗨 Semos2k,你确定你更新了你的 pinout 分配 PWM 输出的样式更改,看看我下面的代码 SPINDLE_PWM_PIN 现在称为 SPINDLE_OUTPUT_PIN。

#define SPINDLE_TYPE            SpindleType::PWM

#define SPINDLE_ENABLE_PIN      GPIO_NUM_22

#define SPINDLE_DIR_PIN         GPIO_NUM_21  

// #define SPINDLE_PWM_PIN GPIO_NUM_17 以前的风格

#define SPINDLE_OUTPUT_PIN      GPIO_NUM_17  // new style

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
漏洞有些东西不工作
项目

还没有

发展

没有分支机构或拉取请求

2名参加者
$Spindle/PWM/Invert 不能正常工作 #630$Spindle/PWM/Invert 不能正常工作 #630

喜欢 (0)