【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        对于esp32的开发,一般是两种开发方式。一种是arduino开发,还有一种就是esp-idf的开发方式。不管是哪种开发方式,本身系统都提供了对应的下载方式。但是如果给客户,应该怎么下载呢。这一点是需要思考一下的。

1、串口下载

        和mcu靠swd下载不同,esp32本身是通过uart0进行下载的。所以很多时候,这个uart0不能做别的用途。如果客户自己想用串口,通常都是推荐串口2去使用。

2、用idf.py去下载不现实

        不管是arduino下载,还是esp-idf下载,本质上都是靠idf.py去实现下载。但是idf.py还是命令,而且安装idf.py稍显复杂,所以让客户自己去idf.py下载image也不现实。

3、需要下载哪几个文件

        一般来说,下载的时候有三个bin文件需要处理,第一个是bootloader.bin,第二个是partitions.bin,最后一个就是项目的bin文件。

4、偏移位置

        刚才说到的三个bin文件,下载的位置是不同的,第一个bin文件偏移位置是0x1000,第二个偏移位置是0x8000,第三个文件偏移位置是0x10000。

5、下载工具

        下载的工具名字是flash_download_tool。通过搜索引擎,都可以很快找到。单击文件之后,就可以看到对应的界面,选择对应的esp32类型,

        接着,就是填上刚才说的这些文件和偏移位置,同时注意右下角选择上com口和波特率,

        正式下载前,可以先erase一把,看看是不是可以正常擦除,没啥问题的话,你就可以看到一个finish的提示,

        这个时候就可以开始点击start烧录了。烧录的过程当中,下面的进度条也会不停更新。

        最后烧录完毕的时候,同样会有一个finish的提示,

6、arduino的开发其实也可以这么烧录

        当然,不管是arduino的开发,还是esp-idf的开发,本质上都是为了生成这三个bin文件。既然这三个bin文件可以通过图形界面工具烧录,那就说明这种烧录方式是通用的烧录方式。前面说过,让客户自己安装idf.py烧录并不可取,但是上位机烧录还是可以的。真的发出去的产品软件上面有一些问题,也可以通过这种方式进行升级处理。

        很多时候,升级不一定要ota多么完美,能解决问题比完美解决问题本身可能更重要。这或许就是技术开发和产品开发的区别。

Logo

智能硬件社区聚焦AI智能硬件技术生态,汇聚嵌入式AI、物联网硬件开发者,打造交流分享平台,同步全国赛事资讯、开展 OPC 核心人才招募,助力技术落地与开发者成长。

更多推荐