在使用CH340C芯片进行自动烧录时,经常会用到RTS和DTR两个联络输出信号,电脑烧录程序控制芯片这两个引脚的高低电平,从而控制主控芯片IO0和reset引脚进行自动烧录并复位。

ESP12F不可用引脚 esp12f典型应用电路_arm

这两个信号都是低电平有效。

①STM32

ESP12F不可用引脚 esp12f典型应用电路_ESP12F不可用引脚_02

这里需要注意的是使用的是两种不同的三极管:s8050在基极为高电平时导通,s8550在基极为低电平时导通。

当串口开始传输数据前,DTR为高,RTS为低,这样图中Q1导通reset为低开始复位,Q2导通BOOT0变为高,开始写程序准备。之后DTR变为低,复位结束,开始写程序。写完 后BOOT0自动恢复到低电平读取flash的状态,或者可手动复位。stm32就可以执行flash中下好的程序了。

        这里需要说明一点BOOT0非常敏感,在下载程序时仅仅需要一点点时间的高电平就可以下载程序,,且不需要保持到下载程序结束。

②ESP12系列

下面是esp12f的官方引脚图,需要注意的是RST引脚和IO0引脚:

ESP12F不可用引脚 esp12f典型应用电路_物联网_03

 ESP12f的IO0与STM32正好相反,当IO0位低时进入下载模式,所以电路图如下,使用两个s8050即可实现自动下载。

ESP12F不可用引脚 esp12f典型应用电路_arm_04

 分析:首先RTS低,DTR高,Q4导通,Q3截止,EN(RST复位)为低电平,IO0悬空,掉电复位;接着 DTR 为低,RTS 高,此时 Q4截止,Q3 导通,EN 高,IO0 低,芯片重新上电,由于 IO0 为低电平,芯片进入下载模式;最后设置 DTR = 1,RTS = 1,此时 Q1 导通,Q2 导通,EN = 1,IO0 = 1,确保下载完成后再复位芯片正常运行。

不点击下载按钮的话,实际测试 DTR 和 RTS 均为高电平,也就是复位和IO0都为高电平,不会影响正常运行。