无法修改espressif提供的ESP8266示例

mor*_*llo 11 c eclipse nodemcu esp8266

我的设置包括使用eclipse的Espressif SDK和nodemcu,我想用C编程.

我已经完成了他所有的步骤,我可以从eclipse环境中编译和刷新电路板.我不按任何按钮来加载闪光灯,因为电路板可以自己处理(至少这是我读到的).根据显然我有一个nodemcu 0.9,但我看到的板看起来不像图中的那个(微带天线看起来很奇怪......而在板的背面它说www.doit.am ESP12E devkit V2 ......我的天线甚至看起来都不像板子后面的网站上的天线.

我看着一切都继续前进.我在espressif上编写了一个眨眼的例子并将其闪现.我看到它创建了eagle.flash.bin和eagle.irom0text.bin并分别将它们加载到0x00000和0x10000(根据我读过的文档,这是可以的).当我重置电路板时,我可以看到它确实闪烁,并且由于LED闪烁,因此其中有一个程序.然后我尝试了hello_world示例.一切都相应的,我重置电路板后,我看到led继续以相同的频率闪烁,当我通过espressif提供的terminal.exe连接到电路板时,我只能在输出中看到垃圾,即使波特是根据代码更正(即便如此,我在terminal.exe中尝试了所有不同的bauds).

好的......然后我又回到了眨眼的例子,增加了眨眼之间的延迟.闪烁它,频率保持不变.我知道它创建了新的.bin文件,但仍然没有改变.这促使我创建了一个新项目.我是按照米哈伊尔·格里戈列夫提供的指示做到的.我只是放了一个无限循环,期望什么都没有,但是在刷新新编译的固件之后,我仍然可以看到LED以相同的频率闪烁,即使代码中没有任何内容,我甚至在之前擦过闪存(是的,我确认闪光灯是空的).

所以这导致我测试我可以编译的每个例子.我注意到有些人没有眨眼导致其他人这样做,就像什么都没发生一样.之后我下载了nodemcu固件,加载后我注意到它工作正常,我甚至可以在可用的wifi网络中看到ESP.

我真的不明白发生了什么.为什么有些例子有用而其他例子没有?为什么我不能修改一个简单的blinky的源代码并看到更改?我更喜欢以这种方式使用esp模块,因为我不喜欢arduino接口或者它使用静态设置和循环函数的方式,我不想在LUA中编程它.

我甚至检查了espressif提供的makefile,我能看到的唯一区别是BOOT和APP变量.我甚至尝试修改它们,但仍然没有变化.

有谁能够帮我?

mor*_*llo 8

好的,终于找到了我的问题.问题是espressif SDK在闪存的某些地址上需要一些软件位.最初发生的事情是,一旦我拿到了电路板,我就擦除了闪光灯,假设所有这些二进制文件已经存储在闪存中.

我做的下一件事是我尝试放置所有其他二进制文件,但我把它们放在错误的地址,所以软件无法正常工作.

最后,经过多个小时的阅读论坛和阅读文档,我发现了正确的地址,并且它有效.

地址是:

0x00000  - boot_v1.6.bin

0x01000  - firmware application (I set the makefile to BOOT=new, APP=1, SIZE_MAP=6)

0x3fc000 - esp_init_data_default.bin

0xfe000  - blank.bin 

0x3fe000 - blank.bin
Run Code Online (Sandbox Code Playgroud)