我试图闪现AI-Thinker ESP-12-Q模块与自定义编译的nodemcu图像.当芯片第一次启动时,它会显示一条消息,显示它有8mbit (1MB)闪存。在每个文档上,也有图像显示,该模块具有32 32mbit (4MB)闪存。以下是我所做的工作和结果:
编程后,nodemcu图像esp模块运行nodemcu。我需要使用ADC通道。当我说adc.read(0)时,它给了我65535。然后,正如上面所说的,我需要更改配置的107字节。要做到这一点:
然后,恐怖开始了:当芯片启动时,我可以设法捕捉到像system parameter error这样的消息,然后芯片就不会引导到nodemcu映像中。当我检查引脚GPIO0时,电压约为1.9v。在这个引脚上有一个10K的外部拉拔电阻。由于电压是这样的,(尤指不能引导到nodemcu映像)。当我强迫这个引脚到3.3v短路拉电阻,它启动到nodemcu,但与一些错误(我将设法抓住他们)。
所以问题是我做错了什么?
编辑#1:
这是芯片的输出:
ets Jan 8 2013,rst cause:2, boot mode:(3,0)
load 0x40100000, len 30288, room 16
tail 0
chksum 0xa5
load 0x3ffe8000, len 2268, room 8
tail 4
chksum 0x3f
load 0x3ffe88dc, len 8, room 4
tail 4
chksum 0xca
csum 0xca
system param error
ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff .... goes on for 100 meters.编辑2:
我尝试将“工厂默认值”加载到芯片,因为它是在SDKv1.5中定义的。
Flash size 32Mbit-C1: 1024KB+1024KB
boot_v1.2+.bin 0x00000
user1.2048.new.5.bin 0x01000
esp_init_data_default.bin 0x3fc000 (optional)
blank.bin 0xfe000 & 0x3fe000然后芯片开始正常工作。我尝试了一些AT指令,得到了预期的答案……然后我加载了nodemcu图像。它也如预期的那样运作良好。然后是棘手的部分:这次我从SDK1.5中获取了esp_init_data_default.bin,并通过十六进制编辑器将107字节更改为0x21 (33 DEC)。然后将esp_init_data_default.bin和blank.bin文件闪烁到芯片上。重新启动并检查adc读取的内容。不过,我得到了一些合理的结果。看来芯片正常了。
发布于 2016-05-31 19:13:47
这不可能是一个明确的答案,因为其中涉及硬件,但它仍然可能是有帮助的(这是太长的评论)。
因此,首先要使用允许显式设置闪存大小的闪光灯。我不知道Espressif工具,但是NodeMCU社区中的许多人都是相当对esptool.py很满意的。
esptool.py --port <USB-port-with-ESP8266> write_flash -fm dio -fs 32m 0x00000 <nodemcu-firmware>.bin不要试图修补固件,直到您确认这是有效的(即引导w/o错误),闪存大小和堆大小看起来还可以。
接下来,如果您使用来自NodeMCU分支的最近的dev固件,您可以跳过字节-107-舞蹈,因为你可以把它设置在Lua。
adc.force_init_mode(adc.INIT_ADC)
-- now reboothttps://stackoverflow.com/questions/37543365
复制相似问题