【问题标题】:Using Arduino as FTDI programmer to program ESP8266 (ESP-12)使用 Arduino 作为 FTDI 编程器对 ESP8266 (ESP-12) 进行编程
【发布时间】:2015-07-21 12:46:05
【问题描述】:

我一直关注this instructable 将我的 Arduino Uno 配置为 FTDI 程序员,因为我想用它来对我全新的 ESP8266 进行编程。我在我的 Arduino 和 ESP-12 之间使用 5V 3.3V 双向逻辑电平转换器。 VCC 来自外部电源。我目前拥有的连接如下:

ESP-12 |来自 Arduino 和 3.3V 电源的电平转换逻辑

  • Vcc 3.3V
  • 接地 接地
  • CH_PD 3.3V
  • GPIO2 3.3V
  • GPIO15 接地
  • GPIO0 3.3V
  • RX TX(3.3V 电平转换)
  • TX TX(3.3V 电平转换)

每次我尝试使用最新的 Arduino IDE (1.6.5) 将一些代码(f.x. Blink 示例)上传到 ESP-12 时,我都会收到以下错误:

警告:espcomm_sync 失败

错误:espcomm_open 失败

当我将 ESP-12 上的复位引脚拉低时,我收到了在 115200 波特率下几乎无法读取的传入串行数据:

有没有人成功地使用 Arduino Uno 对 ESP-12 进行了编程,或者碰巧知道这是否可能?

【问题讨论】:

    标签: arduino-uno arduino-ide esp8266


    【解决方案1】:

    所以我想出的解决方案并不理想。 5V 3.3V 逻辑电平转换器似乎存在某种错误。我的解决方案是将 arduino 上的 TX/RX 引脚直接插入 ESP-12 上的 RX/TX 引脚。 ESP-12 上的 RX/TX 引脚不正式支持 5V 逻辑,但在我看来,它们似乎支持。使用 5V 逻辑风险自负

    我目前在 Arduino IDE 1.6.5 中使用的设置可以在下面的示意图中看到(尽管适用于 ESP-12,而不是示意图中的 ESP-1)。要对 ESP-12 进行编程,您必须先按下 SW1 并按住 SW2。之后,您应该能够从最新的 Arduino IDE 对芯片进行编程。

    【讨论】:

    • 我认为它应该与 ESP-01 相同,只要您使用正确的引脚。请记住,ESP 能够处理 5v 信号的话题与 Herobrine 的存在一样引起了激烈的争论:)
    【解决方案2】:

    如果您使用的是 Arduino 板的 FTDI 芯片,那么由于它们奇怪的引脚标签,您实际上必须连接 TX-TX 和 RX-RX。

    可以在 ATMega 芯片就位的情况下完成 - 那里没有害处,但注意您的 Arduino 板正在使用 3v3串行 TX/RX 引脚 - 某些板可能使用 5v,这炸你的 ESP8266!我的古老 Duemilanove 工作正常,但 YMMV。

    【讨论】:

      【解决方案3】:

      您不能一次对 2 个芯片进行编程。为了将您的 arduino 板用作 FTDI 程序员,您有两种方法

      1. 移除 Arduino 芯片
      2. 将 Arduino 的 Reset 引脚连接到 GND

      在这些修改之后尝试编程。

      【讨论】:

      • 在 Arduino 板上使用 FTDI 芯片工作得很好,对 Arduino 板上的 ATMega 编程没有任何风险。这种方法的最大风险是一些 Arduino 板在这些引脚上使用 5V。
      • 你误解了这个问题,OP 并没有尝试同时对两个板进行编程。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-30
      • 2020-03-23
      • 2013-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多