注释
目前看来这些引脚只能设置为 ESP 引脚,而不能设置为 I2SO 引脚。 …10vSpindle.cpp:177:42: 错误:从“int”到“gpio_num_t”的无效转换 |
我怀疑在 ENABLE_PIN 和 DIR_PIN 情况下不需要调用 gpio_reset_pin。在它们之后的 pinMode(,,,, INPUT) 调用可能就足够了。 gpio_reset_pin() 可能是必要/有用的情况是用于 OUTPUT_PIN,因为它与 LEDC 控制器一起用于执行 PWM。在 deinit() 中,gpio_reset_pin() 会将其与 LEDC 控制器分离。 因此,我会尝试为除 *_OUTPUT_PIN 之外的所有内容删除对 gpio_reset_pin() 的调用。I2S0 无论如何都不能用于 OUTPUT_PIN,因为只有 GPIO 可以连接到 LEDC 控制器。 |
谢谢…我们正在取得进展。 我能够从以下开始:
我按照建议删除了 gpio_reset_pin() ……并且能够编译:
然而,spindle_enable_pin 做了一些奇怪的事情……当 GRBL 处于空闲状态时,当我运行 X1000 时它读取 0V,它在 2 和 3V 之间振荡。 对于我使用的冷却针:
这在空闲或运行模式下非常稳定。 |
I2S0 引脚最初用于驱动步进电机。它们也可用于开/关信号(无 PWM)。 我们没有考虑将它们用于 PWM 主轴,但它们应该可以用于 Enable 和 Dir 用途。这 我注释掉了那个函数并运行了这个设置。
它运作良好。这是我的逻辑分析仪捕获的 M3S100 (10%)。使能信号在我的设置中是稳定的。 |
I2SO(28) 上的 SPINDLE_ENABLE_PIN“振荡”表明移位寄存器芯片和测量点之间某处连接不良。销上有负载吗?如果坏接的猜测是正确的,那么增加负载将消除振荡,电压将始终为 0。 |
@MitchBradley我将再次检查连接。10K 下拉是否适合负载? |
10k 下拉足以检测开路负载。您也可以直接在移位寄存器引脚上进行探测。如果引脚和电路板之间的焊点不良,有时探测引脚会“解决”问题。探针将引脚向下推,使其更好地接触焊盘。不过,这样的修复不会持久。您需要回流焊料以正确恢复连接。 |
发现!!!我的螺丝连接器有点松。 一切正常!!!谢谢 |
您使用的是什么版本的固件?最新
问题是否可重复?是的
什么情况下会出现bug?
设置机器文件如下:
Arduino错误
对于 SPINDLE_ENABLE_PIN 和以下函数 virtual void Spindles::PWM::deinit() 重复上述错误