开源改变世界!!

3.3v 到 5v 的电平转换器 #931

技术 grbl 2年前 (2022-10-31) 329次浏览 0个评论
关闭
莫菲 打开了这个问题 on 11 Mar 2016 · 14 条评论
关闭

3.3v 至 5v 电平转换器#931

莫菲 打开了这个问题 on 11 Mar 2016 · 14 条评论

注释

3.3v 到 5v 的电平转换器 #931

如果 GRBL 迁移到更新的 ARM 样式板,一些旧系统将需要将输出电平从 3.3v 提升到 5v。我包括一个可能的解决方案。
GRBL_3v3_to_5v.pdf
该电路将使用 3 个 14 针 IC,这些 IC 采用 PDIP 或非表面贴​​装封装,便于爱好者制造。缓冲器 IC 将进行电平转换以及为信号提供驱动。包含一个额外信号“STEP_CLK”,它为 STEP_X_OUT 等信号提供 1us 延迟。这将为在生成阶跃脉冲之前施加的 DIR_X_OUT 等信号提供合适的设置时间。
这个想法是 STEPPER 定时器中断将同时输出所有 step、dir 和 STEP_CLK,并且 step 脉冲上的硬件延迟将提供合适的设置时间。然后,STEPPER 定时器中断将在 10 微秒后重置步进和 STEP_CLK 脉冲。这将稍微简化 STEPPER 定时器中断。这也意味着随着处理器变得更快,将浪费更少的周期用于步骤设置时间延迟。
该电路还将具有接头,以便用户可以在正常输出和反相输出之间进行选择,这意味着也可以移除反相掩码。

3.3v 到 5v 的电平转换器 #931

为什么要添加硬件来做一些代码已经用几行代码做的事情?

3.3v 到 5v 的电平转换器 #931

为什么不只使用简单的逻辑电平转换器。这就是他们的目的。

3.3v 到 5v 的电平转换器 #931
贡献者

Protoneer 评论 on 11 Mar 2016

带有适当上拉/下拉电阻的简单 mosfet(电平转换器)。将
处理任何电压和更多的电流。
2016 年 3 月 11 日下午 5:30,“109JB” notifications@github.com写道:

为什么不只使用简单的逻辑电平转换器。这就是他们的目的


直接回复此电子邮件或在 GitHub
#931(评论)上查看。

3.3v 到 5v 的电平转换器 #931

小心常见的单 MOSFET 电平转换器,例如 Sparkfun 或 Adafruit 的电平转换器。
这些具有相当慢的压摆率(上升和下降时间),并且不能很好地处理快速步进脉冲。
您需要使用具有有效边沿速率加速功能的设备,例如 TXB0104。

3.3v 到 5v 的电平转换器 #931
贡献者

Protoneer 评论 2016 年 3 月 11 日

同意。并非所有的 MOSFET 都是平等的,因此请指定工作的部分。
2016 年 3 月 11 日下午 6:27,“Kean Maizels” notifications@github.com写道:

小心常见的单 MOSFET 电平转换器,例如
Sparkfun 或 Adafruit 的电平转换器。
这些具有相当慢的压摆率(上升和下降时间),并且不能
很好地处理快速步进脉冲。
您需要使用具有有效边沿速率加速功能
的设备,例如 TXB0104。

发件人:Bertus Kruger [ mailto:notifications@github.com ]
发送时间:2016 年 3 月 11 日,星期五 3:43 PM
收件人:grbl/grbl grbl@noreply.github.com
主题:回复:[grbl] 3.3v 到 5v 的电平转换器(#931

带有适当上拉/下拉电阻的简单 mosfet(电平转换器)。将
处理任何电压和更多的电流。
2016 年 3 月 11 日下午 5:30,“109JB”<notices@github.com < mailto:
notifications@github.com >> 写道:

为什么不只使用简单的逻辑电平转换器。这就是他们的
目的


直接回复此电子邮件或在 GitHub
#931(评论)上查看。


直接回复此邮件或在 GitHub 上查看<
https://github.com/grbl/grbl/issues/931#issuecomment-195180596&gt;。


直接回复此电子邮件或在 GitHub
#931(评论)上查看。

3.3v 到 5v 的电平转换器 #931

我应该澄清一下 – TXB0104 可能是矫枉过正,因为它是双向的,这也是边缘加速发挥作用的部分原因。
任何具有相当快的传播时间并能够处理所需逻辑电平电压的单向逻辑器件都可以。例如,许多 74LVT/74LVC/74VHC 器件在 5V 下工作时被正确指定为处理 3.3V 逻辑电平输入。但是,其中大多数都没有 DIP 格式。

3.3v 到 5v 的电平转换器 #931

问题不是mosfet规格,而是上拉电阻的使用。您需要推挽式输出来获得快速上升和下降时间。否则你很可能错过了步进脉冲。

3.3v 到 5v 的电平转换器 #931

如果您使用带有光隔离输入的步进驱动器或光隔离分线板,您可能只需更换限流电阻以适应较低的驱动电压(尽管检查 GPIO 是否可以处理 LED 驱动电流)。

3.3v 到 5v 的电平转换器 #931
作者

莫菲 评论 2016 年 3 月 12 日

“为什么要添加硬件来完成代码已经用几行代码完成的事情?”

因为有时硬件可以做得更好。如果你想要 1us 的设置时间延迟是尴尬的,尤其是在更快的 cpu 上,你必须引入一个等待循环。这是燃烧循环,当它们可以做其他事情时什么都不做。
如果您使用 MOSFET 电平转换器,您将需要使用 74HCT14 来缓冲它们,如果您只想缓冲只需使用 74HCT14,它将可靠地从 3.3v 转换为 5v,同时提供高驱动电流来驱动电缆的电容. 不需要特定的电平转换器。

“(尽管检查 GPIO 是否可以处理 LED 驱动电流)。”

使用 74HCT14 的另一个好理由。但是如果你要添加一个缓冲区,一些额外的门可以添加功能。如果您使用 3 输入 NOR 门 (74HCT27) 且 3 输入连接到每个 STEP_X、Y、Z 输出,并且其输出连接到 R1,则不需要 STEP_CLK 输出。这些芯片每个只需 10 美分,并且可以从多家制造商处获得。

3.3v 到 5v 的电平转换器 #931

“如果您使用 MOSFET 电平转换器,您将需要使用 74HCT14 来缓冲它们,”

为什么?我与在 Arduino Due 上使用 TinyG2 的人有过接触,他们报告说,仅便宜的逻辑电平转换器就可以很好地连接到外部步进驱动器。

不是另一种选择是使用高速光耦合器来执行电平转换吗?

3.3v 到 5v 的电平转换器 #931
贡献者

Protoneer 评论 2016 年 3 月 12 日

步进驱动器可以处理哪些速度信号?

前几天我查看了 A4988 驱动程序,我认为它们的最大频率可以达到
300Khz…(有人能确认这个数字吗?)
2016 年 3 月 12 日上午 11:38,“109JB”通知@github。 com写道:

“如果您使用 MOSFET 电平转换器,您将需要
使用 74HCT14 来缓冲它们,”

为什么?我与在 Arduino Due 上使用 TinyG2 的人有过接触,他们
报告说,仅便宜的逻辑电平转换器就可以很好地
连接到外部步进驱动器。

不是另一种选择是使用高速光耦合器来执行
电平转换吗?


直接回复此电子邮件或在 GitHub
#931(评论)上查看。

3.3v 到 5v 的电平转换器 #931
作者

莫菲 评论 2016 年 3 月 12 日

74HCT14 实际上是一个用于 3.3v 至 5v 的 6 通道 MOSFET 电平转换器(反相),它还提供高输入阻抗/低输出阻抗,并且不需要偏置组件。它是通用的,成本实际上是几美分,并且有多种包装可供选择。查看数据表,特别是 74HCT 版本。它还提供迟滞,有助于防止振荡并提高抗噪能力。

3.3v 到 5v 的电平转换器 #931

我的 CNC 使用更大的步进驱动器,其中大多数的规格约为 200-400 KHz 的最大步进速率。不确定较小的驱动程序。

3.3v 到 5v 的电平转换器 #931
作者

莫菲 评论 2016 年 3 月 14 日

不需要“STEP_CLK”输出的电平转换器/缓冲器的改进版本。我使用 NPN 晶体管和 4 个电阻器作为 3 输入或非门。
GRBL_3v3_to_5v.pdf
时间延迟值也得到了改进,因此更像是 1us。

 

3.3v 到 5v 的电平转换器 #931
喜欢 (0)

您必须 登录 才能发表评论!