【问题标题】:Arduino - Detect external powerArduino - 检测外部电源
【发布时间】:2012-12-09 16:02:47
【问题描述】:

我有一个连接到电机和伺服器的外部电源 (6v),在我的 arduino 板上我有几个由板载 5v 供电的 LED。外部电源连接到一个开关,这样我就可以打开电机和伺服(以节省电池)。我的主板只是闪烁不同的 LED。我想要发生的是,当我的外部电源打开时,LED 停止闪烁并且执行移动伺服和电机的代码。结果,我有一个名为intro 的布尔值。为真时执行 LED 代码,为假时执行电机和伺服代码。我遇到的唯一问题是Arduino如何知道外部电源是否打开,以便布尔值可以设置为false? arduino 有没有办法检测外部电源是否打开(例如检查电机/伺服的引脚?)?

【问题讨论】:

    标签: arduino battery


    【解决方案1】:

    一般的想法是将外部电源连接到 I/O 引脚,以便您可以读取其状态。您还需要在 I/O 引脚上进行下拉,以便在未连接电源时它不会浮动并给出随机值。

    不要将 6V 直接连接到 Arduino I/O 引脚,它会远远高于 Vcc,引脚上的钳位二极管会激活。像 10K 这样的串联电阻来降低钳位电流可能没问题,但仍然不是最佳设计实践。我建议使用 3V3 齐纳二极管钳位,例如本页所示:

    http://www.kevinmfodor.com/home/My-Blog/microcontrollerinputprotectiontechniques

    【讨论】:

      【解决方案2】:

      检查 IO 引脚上的最大输入电压,但您应该能够将外部电源连接到引脚并驱动中断。

      然后可以使用中断来决定电源是打开(上升沿)还是关闭(下降沿)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多