下载模式
ESP8266/ESP32进入下载模式的条件很简单:
EN(也称为RST)上升沿时候GPIO0保持为低电平,如图所示,
下载电路如下所示,其结构与RS触发器比较类似,注意EN和IO0信号均连接在三极管集电极,通过控制三极管只能拉低此信号,若三极管截止,则此信号的状态由其他电路决定(一般来说,此类信号会默认接电阻上拉到VCC)
2.下载电路如下所示,其结构与RS触发器比较类似,注意EN和IO0信号均连接在三极管集电极,通过控制三极管只能拉低此信号,若三极管截止,则此信号的状态由其他电路决定(一般来说,此类信号会默认接电阻上拉到VCC)
DTR = 0; RTS = 0, 此时Q1截止,Q2截止,EN = 1; IO0 = 1
DTR = 0; RTS = 1,此时Q1截止,Q2导通, EN = 1; IO0 = 0
DTR = 1; RTS = 0, 此时Q1导通,Q2截止, EN = 0; IO0 = 1
DTR = 1; RTS = 1, 此时Q1截止,Q2截止, EN = 1; IO0 = 1
简单总结:当DTR和RTS同时为0或者同时为1时,三极管Q1和Q2均为截止状态,此时EN和IO0的状态由其他电路决定(内部/外部上拉电阻)
当不同时为0或者1时:
EN = RTS
IO0 = DTR
注意这种逻辑下 EN和IO0是不可能同时为0的,然而进入下载模式则需要如下的序列
1. IO = 0; EN = 0
2. IO = 0; EN 0 -> 1
从逻辑表上看是根本无法正常进入下载模式的,此为疑惑1。