微控制器引脚上的 12V 输入

电器工程 微控制器 电压 输入 引脚
2022-01-07 12:56:37

我正在尝试计算脉冲/秒。在〜5至100Hz范围内的微控制器引脚上。µC 可以在 5V 输入下工作,所以我必须安全地降低电压电平。

想到一个简单的电阻器,但它会使任何浪涌直接打开到 µC 引脚-meh

我遇到了这个答案,但问题仍然是该电路是否能够“快速”100Hz 变化。

是否有一种经过验证的、可靠的方法(可能通过 IC?)将 5V 或 3.3V 引脚连接到“脏”的12V 输入?我有 12V 和 5V 可用于驱动任何“现成”IC。

4个回答

我会尝试如下所示的电阻分压器解决方案。

在此处输入图像描述

选择电阻比,以便在输入处于其标称电压时,分压电压处于适合 MCU 的电平。当输入高于最大输入时,选择齐纳二极管电压以钳位 MCU 输入。如果输入恰好变为负值,齐纳二极管还将保护 MCU。

此解决方案适用于您指定的相对较低的频率范围。

使用这样的电路:

示意图

模拟此电路- 使用CircuitLab创建的原理图

R1、R2决定电压范围,进行初始分压。这些电阻器必须能够提供一定的功率。典型值为MELF 0.4W。所有其他可以是贴片电阻器/电容器。

R3 防止任何浪涌对施密特触发器造成伤害。R4 和 R5 是可选的,以防止任何浮动信号。
但是,如有必要,R3/R4 组合也可用于调整阈值。

C1 和 C2 决定最大速度。组合 R3/C2 可以过滤慢。C1 过滤瞬变。

使用单独的施密特触发器,因为您可以使它们变得非常小且便宜。它还可以防止通过长走线路由弱信号。同时也是大浪涌的牺牲品。

我根据我在 PLC 内部看到的内容设计了这个电路。上述电路适用于 24V。根据 IEC61131-2 调整电阻以匹配 12V。

iec 61131-2
该标准的概念是确保输入在将其视为“1”之前必须吸收最小量的电流。这三种类型指定了多少,并根据环境噪声应用。这可以防止毛刺接触它或附近的继电器。缺点是 R1/2 必须具有不错的额定功率和低电阻。

如果信号电平为 GND 和 12V(或 >5V),最简单且 100% 安全的方法是:

示意图

模拟此电路- 使用CircuitLab创建的原理图

如果它真的符合您的目的,取决于 12V 信号的实际阻抗(应该远低于 R1)以及“脏”的含义。

此外,正如@MichaelKaras 正确指出的那样,μC 输入上的低电平可能会上升到 12V 信号加上二极管 Vf 的低电平(最高约 0.7V)。您应该检查这是否是您的问题。如果是,您仍然可以尝试使用 Vf 约为 0.35V 的肖特基二极管。

我会使用一个电阻分压器,然后用一个 5.1v 齐纳二极管保护 uC

如果您将齐纳二极管与引脚和地之间的齐纳二极管与一个 10k 下拉电阻器并联,然后将您的分压信号馈入……齐纳二极管足够快,而且便宜/容易。

我经常这样做,并在齐纳位之前用一个电位器划分信号。

其他选项与链接一样,如果您真的担心可以使用光电器件,如果它不是安全问题,我会选择上面的方法,或者将引脚从 5V Vcc 拉到低电平,然后用场效应管将其拉低(从我的头顶上掉下来) 2N7000 应该可以工作) - 但它不如齐纳选项简单。