记ESP32S / ESP 8266 模块的自动烧录,自动复位
文章目录
记录自己给ESP32S / ESP 12F /ESP 01模块自动烧录,自动复位
烧录原理
ESP 8266 和 ESP 32系列都是降低GPIO 0 电平来触发烧录.
但是直接拉低电平不能直接烧录.
因为, 8266和ESP 32 都有个下载模式,一个运行模式.
直接复位(或者通电) ,如果GPIO 0是高电平 进入运行模式. (默认是高电平.)
直接复位(或者通电) ,如果GPIO 0是低电平 进入下载(烧录)模式.
手动烧录原理
1,接个按钮RST,按下的时候短接模块RST GND . 也就是按下就复位.
2,接个按钮,FLASH ,按下的时候短接模块GPIO 0 GND .也就是按下拉低GPIO 0电平.进入烧录模式用.
在运行模式的时候,直接按FLASH按钮是不会进入烧录模式的.
要先按RST复位,然后马上按FLASH按钮.才会进入下载模式.
自动烧录
USB转TTL有两个比较便宜有好用的芯片支持自动烧录.
CH340C 和 CH340G (340有好几个可以)
这里分享一个官方图,只要同时支持RST DTR的芯片都可以.
通过NPN三极管当继电器用,控制板子电平高低来自动复位,自动烧录.
山寨版本的arduino uno / 以及其他8266开发板 D1 / nodemcu 大数用的CH340G
340G需要外部晶振.340C不需要,内置晶振,所以如果自己DIY的话ch340C是个很不错的选项.
大致图纸是,(毫无电子基础的我,看的不太懂.只参考了底部的自动烧录路线部分.)
USB转TTL部分
我尝试DIY一个340c转TTL,因为不小心掰弯了一个340C的UD-脚,而失败.
于是用了一个现成的模块.
淘宝搜索 "WEMOS CH340G Breakout" 3-4元包邮的亚子.
这个模块,并不能直接自动下载.线路是需要自己手动改下的.
这个板子:
1,底部的三个触点, 3.3V 5V无论如何短接 ,最后VCC出来都是5V.所需后续电路还需降压.
2,正面也有三个触点. 按我这个图,芯片右边有个短接触点.短接R/C那边两个触点
万用表量下就非常明白了.
中间一个触点是连接出口 R/C一脚.
R/C那边那个触点是连接芯片RST一脚,另外一个触点就是连接芯片CTS一脚.
ESP 8266 /esp 32需要选RST.
转接板
这是我早做了一个ESP 01 / 12F 转接板 两用 直插一个烧录板.需要手动按键烧录
最开始因为手头没有ESP 32S,所以没有给ESP 32S做一个直插.
不过我预留了排针. 6个针. 两排.另外一排是备用的.可以给ESP 32S用.
VCC , GND , TX , RX , GPIO 0 , RST
如果手动烧录,前4脚即可.要自动烧录就6pin都需要.
这部分线路非常简单.
如果输入是5V 需要 接一个1117降压到3.3V
其他5个脚对应模块的5个脚.无需解释.
单独做两个按钮,一个flash 一个 RST按钮. 就是前面说的.手动下载需要的两个按钮.
自动下载线路
自动下载线路需要零件非常简单 S8050或者SS8050 (NPN 三极管) 2个 , 12K 电阻(我自己用得10K) 2个.即可
从前面原理图可以看出来.
1, 340G/340C 芯片的RST 和DTR 两个脚 ,各自 接一个12K电阻 , 电阻 分别接一个三极管 基级 (2号脚)
(340c/340g) RST -> 12K电阻 -> A三极管 2号脚.
(340c/340g) DTR -> 12K电阻 -> B三极管 2号脚.
2, 340G/340C 芯片的RST 和DTR 两个脚 , 分别接一条线 接到另外一个三极管 的发射极 (1号脚)
(340c/340g) RST -> B三极管 1号脚.
(340c/340g) DTR -> A三极管 1号脚.
3,三极管另外一个脚就是出口 RST /GPIO 0了
A三极管 3号脚 --> GPIO 0
B三极管 3号脚 --> RST
这样就能自动烧录了.
后记
总体成本5-6块,一个多用自动烧录座.
打板还是太麻烦,
还是胶带神教比较香.
制作成品pcb
制作一个自动烧录自动复位的PCB