Loading... ## Platform IO烧录ESP32代码的简单理解 对ESP32进行开发,将代码编译好了之后,可以提取后在其他设备使用ESP Flash Download Tool直接烧录。使用ESP Flash Download Tool烧录需要提前准备四个文件,其中包含两个启动引导文件`bootloaderbin` `boot_app0.bin` 一个flash划分文件`partitions.bin`和一个固件文件`firmware.bin`当然名字是可以更改的。 <!--more--> # PlatformIO & Arduino: ### 下面说下这些文件的存放位置以及烧录地址: ### Windows: - `bootloader.bin`的位置为PlatformIO安装目录下的`.platformio\packages\framework-arduinoespressif32\tools\sdk\bin`目录下面,它的对应的烧录地址为`0X1000`。(此处注意,每个不同的bootloader对应烧录时SPI MODE 和 SPI SPEED都不同,一定要确定好对应关系) - `boot_app0.bin`的位置为PlatformIO安装目录下的`platformio\packages\framework-arduinoespressif32\tools\partitions`目录下面,它对应的烧录地址为`0xe000` - `partitions.bin`的位置为代码工程目录下的`.pioenvs\[board]`目录下面,它对应的烧录地址为`0x8000`。同时`platformio\packages\framework-arduinoespressif32\tools\partitions`目录下面的`partitions.csv`为编译的分区配置文件,会根据版型选择的不同有所不同,可以使用Excel打开进行编辑,然后在编译器内使用PIO进行重新编译即可,同时他也可以使用PIO包里面带的`gen_esp32part.py`脚本进行编译与反编译,操作方法为:`python C:\SPB_Data\.platformio\packages\framework-arduinoespressif32\tools\gen_esp32part.py --verify 转换反编译成csv) - `firmware.bin`的位置为代码工程目录下的`.pioenvs\[board]`目录下面,这个就是代码编译出来的固件,它对应的烧录地址为`0x10000`,如果分区文件未做修改的话(人为修改,或者更换编译平台),更新固件或者重新烧录只在对应地址开始需要烧录这一个文件即可。 #### 同上面介绍的对分区文件的转换的操作方法相似的烧录方法为: `python C:\SPB_Data\.platformio\packages\tool-esptoolpy\esptool.py --port COM19 --baud 115200 write_flash -fm dio -fs 4MB 0x010000 xxx\firmware.bin`后面选择编译出来固件,进行代码更新,直接可以在cmd.exe内执行这条指令即可,方便快捷。 #### Github: [BPI:bit板功能测试固件](https://github.com/yelvlab/BPI-BIT/tree/master/Test_bin) # Webduino: [Webduino大陆地区官网](http://webduino.com.cn/site/zh_cn/index.html) [Webduino台湾地区官网](https://webduino.io/) Webduino的实现就是预先烧录解释器,具体原理不对赘述,但烧录方法与上边一样,使用软件烧录官方提供的固件,即可体验webduino各项功能,固件下载请访问下方github。 #### Github [Webduino固件地址](https://github.com/yelvlab/BPI-BIT/tree/master/Webduino_bin) #microPython: 在uPyCraft的github仓库内下载esp32的microPython固件然后是使用`ESP FLASH DOWNLOAD TOOL`进行烧录,烧录位置`0x00` 下载在下方github仓库内。 #### Gitbook: [DfRobot_uPyCraft](https://legacy.gitbook.com/book/dfrobot/upycraft_cn/details) #### Github: [uPyCraft IDE与固件下载地址](https://github.com/DFRobot/uPyCraft) [uPyCraft 源码](https://github.com/DFRobot/uPyCraft_src) Last modification:April 26, 2018 © Allow specification reprint Like 1 If you think my article is useful to you, please feel free to appreciate