乐鑫的ESP系列芯片(ESP8266、ESP32等)采用串口下载程序,做PCB板的时候一般会把串口下载部分做到产品PCB上去,并留出USB下载接口到产品面板上。
传统设计存在的问题
- 安全问题:发售的产品最好不要这样留程序下载口并暴露在设备外壳,会导致安全问题,总有一些别有用心或无心的人用这个USB接口搞事情。发售的产品最好是直接烧死eFuse。
- 成本问题:每个产品都要在PCB板上设计和焊接USB下载部分的电路元件,这部分又是一般用户用不着的,白白增加产品成本。USB下载部分包括:USB接口、USB转串口的芯片、电源芯片、几个电阻电容、LED灯,成本加起来还是好几块钱了。
- 设计复杂度问题:USB下载部分的电路在PCB上要占用一定空间,尤其在小型设备上PCB空间问题比较突出。同时设备外壳上也要考虑USB接口的开孔问题。这两方面都白白增加了产品设计的复杂度。
解决方案
把USB下载部分电路从产品拿出来,降低产品复杂度,提升安全性,降低成本。
只在产品PCB上留一个下载接口,把下载所需的IO引到接口上即可。把USB部分的电路单独做一个下载器,这个就是本项目的ESP下载器。
系统框图
这个下载器的设计核心思想是将开发阶段需要的功能与最终产品分离,既降低了产品成本,又提高了产品的安全性和可靠性。