蓝色LED指示灯在给模块加电后闪烁,红色指示灯保持亮起,我甚至可以通过wifi连接到它。但我不能编程。我尝试了Arduino IDE,不同的固件闪存(如NodeMCU,XTCOM)。我使用的是Arduino Mega。
这是我最初的设置:
VCC - 3.3 V on Arduino
RST - nothing
CH_PD - 3.3 V on Arduino
TX - RX on Arduino (TX is transmitting data to RX, so I don't need a voltage divider, right?)
RX - voltage divider (R1 = 10K, R2 = 20K) - TX on Arduino
GPIO0 - GND on Arduino
GPIO2 - nothing
GND - GND on Arduino
然后我尝试从Arduino IDE上传草图并收到以下错误:
warning: espcomm_sync failed
error: espcomm_open failed
在尝试不同的IDE,程序员,串口后我尝试了固件闪存,至少看看我是否可以与之通信。 NodeMCU就是一个例子 显示"等待MAC"将GPIO0接地并且不接地。
我还尝试将TX连接到TX,将RX连接到RX但是得到了相同的结果。尝试通过分压器连接RX。
通过此设置,蓝色LED始终打开。我记得在某个地方读书可能因供电不足而发生, 所以我也尝试连接两个没有分压器的引脚(上电后蓝色LED仍然闪烁,所以希望我没有烧掉它们)。 我还尝试将GPIO0连接到3.3V,而不是将它连接到任何东西,将RST连接到3.3V,同时将GPIO2连接到地。 在Mega上有4组TX和RX引脚,所以我尝试了TX / RX0,1,2和3。
仍然不知道发生了什么:(
答案 0 :(得分:13)
原因可能是两件事之一:
电量不足。尝试从外部3.3V电源(如实验室电源)为ESP8266供电。两个充满电的AA电池也可以做到这一点。确保您的串行适配器的GND引脚也连接到ESP的GND引脚,以提供公共接地。
ESP8266未处于编程模式。确保GPIO0连接到GND并关闭ESP然后再打开。然后它将启动进入编程模式。编程完成后,可以将其从GND上取下。
修改强>
自从这篇文章以来,我实际上遇到了第三个更臭名昭着的理由。一些ESP8266模块(特别是ESP-12封装)实际上带有替代的非核心固件。在这种情况下,您必须更新ESP上的固件。 Here是关于如何执行此操作的精彩教程。我强烈建议您使用仅限Windows的ESP Flash下载工具,但与在串行终端中进行操作相比,它不易出错。但在你踏上这段旅程之前,要确保原因不是#1或#2。
答案 1 :(得分:1)
当您将其连接到串行端口时,将波特率设置为74880,然后应用电源,您应该看到初始调试信息被转储到串口。
你应该看到这样的事情:
ets Jan 8 2013,rst cause:2, boot mode:(3,6)
load 0x40100000, len 29936, room 16
tail 0
chksum 0xee
load 0x3ffe8000, len 2304, room 8
tail 8
chksum 0x51
load 0x3ffe8900, len 8, room 0
tail 8
chksum 0x9e
csum 0x9e
如果您在启动时关闭GPIO(进入闪光模式),您应该看到这个
ets Jan 8 2013,rst cause:2, boot mode:(1,6)
注意从(3,6)到(1,6)的变化
如果您看不到任何内容,请仔细检查您的TX<> RX和GND连接。
答案 2 :(得分:0)
起初我遇到了同样的问题但稍后解决了
我在答案的最后提供了链接。请遵循它。
使用ESP8266-01时要记住的事项:
请按照我的文章“Deploy - > ESP8266-01 Sketch”部分进行操作: https://www.hackster.io/AnuragVasanwala/windows-10-iot-core-hydroflyer-f83190