Contact me: hankecnc@gmail.com

不同端口的 STEP 和 DIR #651

推推 grbl 3年前 (2023-01-22) 191次浏览

关闭
sebbra 打开了这个问题 2015 年 4 月 10 日 · 5 条评论
关闭

不同端口的 STEP 和 DIR#651

sebbra 打开了这个问题 2015 年 4 月 10 日 · 5 条评论

注释

不同端口的 STEP 和 DIR #651

是否可以在不同的端口为 x、y 和 z 设置 STEP 和 DIR 引脚?

优点是您可以更灵活地使用不同的 arduino 扩展板,
例如带有 L6474的 X-NUCLEO- IHM01A1。
缺点是引脚不是同时设置的,
它们在轴之间有一些周期。

也许我们可以为备用引脚映射提供一个编译时选项。

X_STEP 示例:
CPU_map.h

[..]
  #define X_STEP_DDR        DDRD
  #define X_STEP_PORT      PORTD
  #define X_STEP_BIT           2  // Uno Digital Pin 2
[..]

步进器.c

[..]
  if (st.counter_x > st.exec_block->step_event_count) {
    st.step_outbits |= (1<<X_AXIS);
    st.counter_x -= st.exec_block->step_event_count;
    if (st.exec_block->direction_bits & (1<<X_AXIS)) { sys.position[X_AXIS]--; }
    else { sys.position[X_AXIS]++; }
  }

[..]

   X_STEP_PORT = (X_STEP_PORT & ~X_STEP_BIT ) |
                                 ((st.step_outbits >> X_AXIS) << X_STEP_BIT );
[..]
不同端口的 STEP 和 DIR #651
成员

@sebbra: 是的,可以将它们分开,但我不打算安装它或必须支持它。自己做起来相当容易。

不同端口的 STEP 和 DIR #651

@sebbra,据我所知,所有“智能”步进电机驱动器都
没有“Dir”引脚。他们只有 Step 别针。
必须通过 SPI 改变方向。
恐怕你不能将那块板和任何其他类型的 ST
智能驱动程序与 GRBL 一起使用。
兄弟,
丹尼尔

在 2015 年 10 月 4 日下午 3:26,sebbra 写道:

不同 arduino 屏蔽的灵活性,
例如 X-NUCLEO-IHM01A1
http://www.st.com/web/en/catalog/tools/PF260715和 L6474。
缺点是引脚不是同时设置的,
它们在轴之间有一些周期。

也许我们可以为 alt 提供一个编译时选项

不同端口的 STEP 和 DIR #651

@dandumit您混淆了 ST 的 dSPIN 和 easySPIN 系列。easySPIN(L6474 是什么)具有 DIR 和 STEP 输入(参见数据表,第 16 页),SPI 用于配置电气属性和读取故障。
另一方面,dSPIN 具有完整的运动学引擎,既没有 DIR,也没有 STEP,因为您通过 SPI 告诉芯片要移动多少步,朝哪个方向以及以哪个速度分布移动。

不同端口的 STEP 和 DIR #651
作者

@dandumit ST 的 L6474 具有用于 DIR 和 STEP 的专用引脚,SPI 用于改变电流和步进模式。您可以在启动时配置驱动程序,而不必在操作模式下使用 spi,只需使用 step 和 dir。

目前我将一个轴 (Z) 换成了 ST 驱动器,它工作正常。
X-NUCLEO-IHM01A1 的问题在于它们没有位于同一 Arduino 端口的引脚。

不同端口的 STEP 和 DIR #651
作者

@chamnit: 一切都很好,我只是想知道是否有分离引脚的问题。

喜欢 (0)