完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我刚刚下载了最新的 SDK (esp_iot_sdk_v1.4.0_15_09_18.zip)。我无法让我的软件运行,所以我尝试编译并运行IoT_Demo代码。我正在使用带有 512K 字节 SPI 闪存的 ESP-01 模块。
下面展示了如何使用 gen_misc.sh 脚本编译和加载代码(esptool.py 用于在编译完成后加载代码)。 pja@vm-lubuntu:/opt/Espressif/esp_iot_sdk_v1.4.0/IoT_Demo.compile_ok$ ./gen_misc.sh gen_misc.sh 版本 20150511 请按照以下步骤(1-5)生成特定的垃圾桶: 步骤1:选择启动版本(0=boot_v1.1, 1=boot_v1.2 , 2=无) enter(0/1/2, 默认 2): 启动模式:无 第 2 步:选择 bin 生成(0=eagle.flash.bin eagle.irom0text.bin、1=user1.bin、2=user2.bin) 输入 (0/1/2,默认 0): 生成 bin:eagle.flash.bin eagle.irom0text.bin 步骤3:选择SPI速度(0=20MHz,1=26.7MHz,2=40MHz,3=80MHz) 输入 (0/1/2/3,默认 2): spi 速度:40 MHz 步骤4:选择SPI模式(0=QIO,1=QOUT,2=DIO,3=DOUT) 输入 (0/1/2/3,默认 0): SPI模式:QIO 第 5 步:选择 SPI 大小和映射 0= 512KB( 256KB+ 256KB) 2=1024KB( 512KB+ 512KB) 3=2048KB( 512KB+ 512KB) 4=4096KB( 512KB+ 512KB) 5=2048KB(1024KB+1024KB) 6=4096KB(1024KB+1024KB) 输入 (0/2/3/4/5/6,默认 0): spi 大小:512KB spi ota map: 256KB + 256KB 开始。。。 make[1]: Entering directory '/opt/Espressif/esp_iot_sdk_v1.4.0/IoT_Demo.compile_ok/user' 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_esp_platform_timer.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_webserver.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_light_adj.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_json.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_main.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_plug.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_devicefind.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_esp_platform.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_light.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle user_sensor.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_sensor.o -c user_sensor.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_light.o -c user_light.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_esp_platform.o -c user_esp_platform.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_devicefind.o -c user_devicefind.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_plug.o -c user_plug.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_main.o -c user_main.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_json.o -c user_json.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_light_adj.o -c user_light_adj.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_webserver.o -c user_webserver.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../../include/ets -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/user_esp_platform_timer.o -c user_esp_platform_timer.c xtensa-lx106-elf-ar ru .output/eagle/debug/lib/libuser.a .output/eagle/debug/obj/user_sensor.o .output/eagle/debug/obj/user_light.o .output/eagle/debug/obj/user_esp_platform.o .output/eagle/debug/obj/user_devicefind.o .output/eagle/debug/obj/user_plug.o .output/eagle/debug/obj/user_main.o .output/eagle/debug/obj/user_json.o .output/eagle/debug/obj/user_light_adj.o .output/eagle/debug/obj/user_webserver.o .output/eagle/debug/obj/user_esp_platform_timer.o xtensa-lx106-elf-ar:创建 .output/eagle/debug/lib/libuser.a make[1]: Leaving directory '/opt/Espressif/esp_iot_sdk_v1.4.0/IoT_Demo.compile_ok/user' make[1]: Entering directory '/opt/Espressif/esp_iot_sdk_v1.4.0/IoT_Demo.compile_ok/driver' 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../include -I ../../include -I ../../include/eagle i2c_master.c 依赖:xtensa-lx106-elf-gcc -M -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../include -I ../../include -I ../../include/eagle key.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/key.o -c key.c xtensa-lx106-elf-gcc -Os -g -Wpointer-arith -Wundef -Werror -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -ffunction-sections -fdata-sections -DICACHE_FLASH -I include -I ./ -I ../include -I ../../include -I ../../include/eagle -o .output/eagle/debug/obj/i2c_master.o -c i2c_master.c xtensa-lx106-elf-ar ru .output/eagle/debug/lib/libdriver.a .output/eagle/debug/obj/key.o .output/eagle/debug/obj/i2c_master.o xtensa-lx106-elf-ar: 创建 .output/eagle/debug/lib/libdriver.a make[1]: Leaving directory '/opt/Espressif/esp_iot_sdk_v1.4.0/IoT_Demo.compile_ok/driver' xtensa-lx106-elf-gcc -L../lib -nostdlib -T../ld/eagle.app.v6.ld -Wl,--no-check-sections -u call_user_start -Wl,-static -Wl,--start-group -lc -lgcc -lhal -lphy -lpp -lnet80211 -llwip -lwpa -lmain -ljson -lupgrade -lssl -lpwm -lsmartconfig user/.output/eagle/debug/lib/libuser.a driver/.output/eagle/debug/lib/libdriver.a -Wl,--end-group -o .output/eagle/debug/image/eagle.app.v6.out !!! 无需启动。 生成eagle.flash.bin并连续eagle.irom0text.bin文件夹箱中。 eagle.flash.bin-------->0x00000 eagle.irom0text.bin---->0x40000 !!! 连接。。。 擦除闪光灯... 在0x00008c00写作...(100 %) 擦除闪光灯... 在0x00074100写作...(100 %) 离开。。。 pja@vm-lubuntu:/opt/espressif/esp_iot_sdk_v1.4.0/iot_demo.compile_ok$ 在ESP8266调试 (UART1 TXD) 上使用串行终端时,我收到的只是 ets_main.c 我相信这意味着在0x00000或0x40000处找不到代码来执行引导加载程序。 我用 1.2 SDK (esp_iot_sdk_v1.2.0_15_07_03.zip) 尝试了同样的事情 调试端口显示 尾部 12 Chksum 0xea HO 0 尾 12 室 4 负载 0x3ffe8000,LEN 3392,12 室 尾部 4 Chksum 0x63 负载 0x3ffe8d40,LEN 4508,房间 4 尾 8 Chksum 0xaa CSUM 0xaa |
|
相关推荐
1个回答
|
|
要解决在使用1.4 SDK的ESP-01模块上运行IoTDemo的问题,我们可以按照以下步骤进行操作:
1. **检查硬件连接**:确保ESP-01模块与计算机之间的连接正确,包括串口连接和电源连接。 2. **选择合适的启动版本**:在gen_misc.sh脚本中,需要选择一个合适的启动版本。对于ESP-01模块,推荐使用boot_v1.2。在提示选择启动版本时,输入1并按回车。 3. **生成特定分区表**:在gen_misc.sh脚本中,按照提示输入分区表信息。对于ESP-01模块,可以使用以下分区表: - 512KB flash: 512KB (0x00000) IRAM,512KB (0x80000) flash - 选择分区表:2 4. **编译IoT_Demo代码**:在gen_misc.sh脚本中,选择编译IoT_Demo代码。输入相应的选项并按回车。 5. **下载并安装esptool.py**:如果尚未安装esptool.py,可以通过以下命令安装: ``` sudo pip install esptool ``` 6. **烧录固件**:在编译完成后,使用esptool.py将编译好的固件烧录到ESP-01模块。在命令行中输入以下命令: ``` esptool.py --port /dev/ttyUSB0 write_flash 0x00000 your_firmware.bin ``` 其中,`/dev/ttyUSB0`是ESP-01模块的串口设备,`your_firmware.bin`是编译生成的固件文件。 7. **重置模块**:在烧录完成后,将ESP-01模块的GPIO0引脚与GND短接,然后释放。这将使模块从新烧录的固件启动。 8. **检查模块运行情况**:通过串口监视器检查ESP-01模块的运行情况,确保IoT_Demo代码正常运行。 通过以上步骤,应该可以解决在使用1.4 SDK的ESP-01模块上运行IoTDemo的问题。如果仍然遇到问题,请检查硬件连接和固件烧录过程是否正确。 |
|
|
|
只有小组成员才能发言,加入小组>>
429浏览 6评论
362浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
343浏览 5评论
349浏览 4评论
327浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-9-1 14:44 , Processed in 0.782162 second(s), Total 81, Slave 63 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191