ESP8266_RTOS_SDK编译烧写与运行

       ESP8266内置Tensilica L106,32位卫星MCU,具有超低功耗的16位RSIC。CPU时钟速度为80MHZ,最高可达160MHZ,并支持实时RTOS操作系统。 官方SDK分NON-OS版本和RTOS版,RTOS版SDK采用的是FreeRTOS实时操作系统与Lwip网络协议栈。使用RTOS进行开发有很多NON-OS版本无法体会的好处,所以我们使用强烈推荐使用ESP8266_RTOS_SDK。

     一、SDK下载与编译

1.下载ESP8266官方sdk:本次测试使用的是带RTOS版本的SDK,下载地址为 https://github.com/espressif/ESP8266_RTOS_SDK,当前最新版本为1.5.0。

2.官方SDK自带的示例程序位于“examples”目录下  

3.进入“example”->“wifi_station_machine_demo”,编辑“gen_misc.sh”脚本文件 修改“SDK_PATH”及“BIN_PATH”为当前SDK所在目录(请按照SDK下载目录自行修改) export SDK_PATH=~/Desktop/ESP8266_RTOS_SDK export BIN_PATH=~/Desktop/ESP8266_RTOS_SDK/bin 其中BIN_PATH为编译完成后烧写bin文件所在目录

4.运行编译 在“wifi_station_machine_demo”目录下运行./gen_misc.sh 在提示“Please check SDK_PATH & BIN_PATH, enter (Y/y) to continue:”后输入Y 在提示“STEP 2: choose bin generate”后输入:1,选择“1=user1.bin” 在提示“STEP 3: choose spi speed”后输入:2,选择“2=40MHz” 在提示“STEP 4: choose spi mode”后输入:0,选择“0=QIO” 在提示“STEP 5: choose spi size and map”后输入:选择6,选择 “6=4096KB(1024KB+1024KB)” 以上设置须根据硬件实际使用的flash大小选择,而且与下载设置有关系,错误的选择将导致ESP8266无法正常运行程序。以上设置基于最新的ESP-12F模块 完成以上设置后,如之前交叉编译器设置正常,就开始编译,直至编译完成。编译成功后,可看到如下提示: 当前编译后应用文件名为user1.4096.new.6.bin,位于SDK根目录下bin/upgrade目录,烧写地址为0x1000。Boot文件名为boot.bin,烧写地址为0x0000。

        二、烧写与运行 ESP8266只能通过串口下载,使用的工具为:flash_download_tools_v3.4.4_0,该软件同时支持EPS8266/ESP8285/ESP32下载,我们选择的是ESP8266 下载该软件请至官网:http://www.espressif.com/zh-hans/support/download/other-tools下载。 我们测试的开发板是ESP-12F模块做成的开发板,下载设置如下: step1:选择烧写文件 boot_v1.6.bin:主程序启动(0x0000) user1.4096.new.6.bin:我们自己编译出来的示例应用(0x1000) blank.bin:初始化RF_CAL参数区(0x3FB000) esp_init_data_default.bin:初始化其他射频参数区,至少烧录一次。当RF_CAL参数区初始化烧录时,该文件也需要烧录。(0x3FC000) step2:SPI Flash设置:该设置与实际硬件及编译时编译选项对应 step3:串口及波特率设置:根据串口号及波特率选择,为提高下载速度推荐波特率为1152000 step4:让ESP-12F硬件进入boot下载模式,点击“START”按钮开始下载 下载开始后,可以看到软件显示当前ESP8266模块MAC地址及下载进度条。否则请检查硬件是否处于boot下载模式下。 step5:ESP8266运行 重新复位后,ESP8266从boot下载模式进入运行状态,可看到运行日志,ESP8266已正常工作。 特别注意,ESP8266调试串口默认波特率为74880,否则输出日志为乱码。 如为ESP8266未正常运行示例程序,请检查以上每一步是否出错! 

猜你喜欢

转载自blog.csdn.net/guiwukejiBGG/article/details/82821543
今日推荐