当我启动ESP8266时,我正在使用我的arduino MEGA串行监视器。
Fatal exception (0): e2= 0d00l(xp00v0xao1,00e0c pe80c00d0x:2= 0d00l(xp00v0xao1,00e0c pe80c00d0x:2= 0d00l(xp00v0xao1,00e0c e 0xp0= 0e)02,0d00a 0e00c00Fic00= 0p0e 0xp0= 0e)02
如果我进行硬重置而不是打印
Jan 8 2013,rst cause:4, boot mode:(3,6) wdt reset load 0x40100000, len 28740, room 16 tail 4 chksum 0xcd load 0x3ffe8000, len 2888, room 4 tail 4 0xeotail 0 chks
我使用了由Lua 5.1.4驱动的NodeMcu闪存器nodemcu_integer_0.9.5_20150318.bin和NodeMCU 0.9.5 build 20150318。我正在使用arduino UART(串行监视器)与ESP8266对话。波特率:115200闪存大小:4MB闪存速度:40MHz SPI:DIO模块采用交流电源供电(独立电源)
这是我的关系:
//////////////////////////////////////////////////////////////////////////////
/////// CONNECTIONS ////////
/////////////////////////////////////////////////////////////////////////////
/*
ESP8266 VCC -> BeagleBone 3.3
ESP8266 GND -> Common GND (Arduino & BeagleBone)
ESP8266 CH_PD -> 3K resistor -> VCC
ESP8266 RST -> VCC or pin 13(arduino)
GPIO CAB BE LEFT OPEN OR TIED HIGH
ESP8266 Tx -> pin2 (Arduino software serial Rx)
ESP8266 Rx <- Voltage Divider <- pin3 (Arduino software serial Tx)
*/
这是我的代码
#define esp8266 Serial2
#define CH_PD Vcc // but needs a narrow low pulse
#define speed8266 9600 // This is the speed that worked with my ESP8266
void setup()
{
esp8266.begin (speed8266);
Serial.begin(9600);
reset8266(); // Pin CH_PD need a reset before start communication
}
void loop()
{
while(esp8266.available())
{ Serial.write(esp8266.read()); }
while(Serial.available())
{ esp8266.write(Serial.read()); }
}
/*************************************************/
// Reset funtion to accept communication
void reset8266 ()
{
pinMode(CH_PD, OUTPUT);
digitalWrite(CH_PD, LOW);
delay(300);
digitalWrite(CH_PD, HIGH);
}
以下是我在NodeMCU中所做的一些配置(我已尝试使用不同的波特率)
答案 0 :(得分:0)
如果您遇到致命错误异常,请执行以下操作:
例外(3): epc1 = 0x401003e9 epc2 = 0x00000000 epc3 = 0x00000000 excvaddr = 0x4000cbd9 depc = 0x00000000 在arduino IDE的串行监视器中无限循环。
然后转到此链接下载软件并按照步骤擦除闪存以解决错误。
这不能解决由于您的程序而导致的致命错误,但是如果您的设备处于无法访问程序内存的状态,那么它将起作用并尝试至少一次来解决问题。 / p>
这是硬重置nodemcu的过程
(https://www.youtube.com/watch?v=MHrm7axsImI&t=146s)
步骤: 在你的电脑上安装最新的python版本。(https://www.python.org/downloads) 以管理员身份打开cmd提示符。 转到c /程序文件或程序文件(x86) - &gt; python(您的版本) - &gt;脚本。对于此类型(cd c / program files(x86)/ python(您的版本)/ Script),然后按Enter键。 现在输入(pip install esptool)。 现在下载ESPlorer(https://esp8266.ru/esplorer/)版本(下载ESPlorer.zip(v 0.2.0-rc6))并解压缩文件并打开可执行jar文件。 现在转到nodemcu固件站点(https://github.com/nodemcu/nodemcu-firmware/releases)和下载文件(nodemcu_float_0.9.6-dev_20150704.bin)并将此文件复制到c / program files(x86)/ python(您的版本)/ Script文件夹中。 现在在cmd提示符下输入。 esptool.py --port COM(你的端口号) - 波特115200 erase_flash 然后按回车。
注意:您可以看到您的端口号。进入设备管理器。
答案 1 :(得分:0)
对于遇到此问题的 NODEMCU 用户
这只需要做一次(第一次将nodemcu连接到PC)
下载并运行 32 位或 64 位 flasher*:
32 位:https://github.com/nodemcu/nodemcu-flasher/blob/master/Win32/Release/ESP8266Flasher.exe
64 位:https://github.com/nodemcu/nodemcu-flasher/blob/master/Win64/Release/ESP8266Flasher.exe
选择github上的下载按钮,下载后打开文件。
选择上一步中的芯片端口(对我来说是Com 6),然后选择flash(这应该只需要做一次)
完成后关闭flash程序。
当您看到左下角的绿色复选标记时,过程就完成了。
PS:确保在完成后断开并重新连接nodemcu
参考:https://www.instructables.com/NodeMcu-ESP8266-First-Time-Setup-With-Arduino-IDE/