0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ESP8266自动下载电路分析

machao1680 来源:电子设计宝典 2023-11-25 09:29 次阅读

硬件环境如下:

乐鑫官方开发板 ESP8266-DevKitC

板载自动下载电路如下:

9d2f506e-8b26-11ee-939d-92fbcf53809c.png

开发板入门指南的描述如下:

9d690fc0-8b26-11ee-939d-92fbcf53809c.png

显然,选择自动下载功能后,RTS 就是 Auto_RTS

9d782992-8b26-11ee-939d-92fbcf53809c.png

此处,ESP8266 的自动下载涉及 CP2102 的两个引脚,DTR 和 RTS

9d86c448-8b26-11ee-939d-92fbcf53809c.png

DTR 引脚是 MODEM 联络输出信号,数据终端就绪,低有效;

RTS 引脚也是 MODEM 联络输出信号,请求发送,低有效;

注意,所谓 MODEM 联络信号都是由计算机应用程序控制并定义其用途的

ESP8266工作模式

下载模式:芯⽚启动时,若 IO0 为低电平,芯⽚会进⼊下载模式;

运⾏模式:芯⽚启动时,若 IO0 为⾼电平,芯⽚会进⼊运⾏模式;

9d9be436-8b26-11ee-939d-92fbcf53809c.png

上图的逻辑关系如下:

9db7eb72-8b26-11ee-939d-92fbcf53809c.png

显然,这种逻辑关系下 EN 和 IO0 不可能同时为 0,

然而,ESP8266 进入下载模式却需要如下条件:

9dcaad3e-8b26-11ee-939d-92fbcf53809c.png

那么,问题来了,单靠以上电路 ESP8266 无法进入下载模式。

网上找到了一些解释,然而并不能让我信服……可能大多参考了正点原子的自动下载电路原理,但人家的自动下载功能也需要 mcu-isp 软件配合才能实现啊……等等,吐槽之中获得灵感,ESP8266 不也是有下载软件的嘛,就算在命令行下不也是有下载脚本的嘛。

9dcfb0ae-8b26-11ee-939d-92fbcf53809c.png

显然,下载软件是看不出所以然的。

那么,找到官方 SDK 中的下载脚本源码

ESP8266_RTOS_SDK/components/esptool_py/esptool/esptool.py

9ddd5768-8b26-11ee-939d-92fbcf53809c.png

9df276ac-8b26-11ee-939d-92fbcf53809c.png

隐藏的好深,看程序的注释其实就差不多了

利用 RTS 控制 EN 或 nRST,因为它们都是低电平触发芯片复位;

利用 DTR 控制 IO0,低电平启动则进入下载模式;

9e02abe4-8b26-11ee-939d-92fbcf53809c.png

注意,此处 True 为低电平,False 为高电平

程序解析如下:

9e0be240-8b26-11ee-939d-92fbcf53809c.png

设置 DTR = 1,RTS = 0,此时 Q1 导通,Q2 截止,EN = RTS = 0,IO0 = 1,芯片掉电复位;

9e2942ea-8b26-11ee-939d-92fbcf53809c.png

延时 100ms,为了确保 EN 为低电平,原因嘛很简单,因为 EN 附近有一个 RC 电路,充放电都是需要时间的

9e344d52-8b26-11ee-939d-92fbcf53809c.png

例如低电平为 0.25VCC,则由高电平放电至低电平需要的时间可按如下公式计算:

9e3f4ce8-8b26-11ee-939d-92fbcf53809c.png

此处,t ≈ 0.29ms,延时 100ms 绰绰有余。

9e493550-8b26-11ee-939d-92fbcf53809c.png

设置 DTR = 0,RTS = 1,此时 Q1 截止,Q2 导通,EN = 1,IO0 = 0,芯片重新上电,由于 IO0 为低电平,芯片进入下载模式;

9e5507f4-8b26-11ee-939d-92fbcf53809c.png

延时 50ms,为了确保 EN 为高电平

同理,

9e632ab4-8b26-11ee-939d-92fbcf53809c.png

此处,t ≈ 1.39ms,延时 50ms 绰绰有余

9e728b94-8b26-11ee-939d-92fbcf53809c.png

设置 DTR = 1,RTS = 1,此时 Q1 导通,Q2 导通,EN = 1,IO0 = 1,确保下载完成后再复位芯片正常运行;

补充一下,不点击下载按钮的话,实际测试 DTR 和 RTS 均为高电平,也就是说不会影响 ESP8266 芯片的正常运行。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 电路分析
    +关注

    关注

    62

    文章

    518

    浏览量

    98804
  • 开发板
    +关注

    关注

    25

    文章

    5027

    浏览量

    97363
  • RTS
    RTS
    +关注

    关注

    0

    文章

    21

    浏览量

    14336

原文标题:ESP8266自动下载电路分析

文章出处:【微信号:电子设计宝典,微信公众号:电子设计宝典】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ESP8266自动下载电路设计方案

    前言使用过51单片机的朋友会清楚:51单片机在烧写程序的时候需要断一下电再上电;使用过STM32单片机的朋友会清楚:烧写程序时需要设置Boot模式。ESP8266在烧写程序时也需要手动设置模式,STM32的ISP自动下载
    的头像 发表于 09-20 10:04 3938次阅读

    ESP8266自动下载电路相关资料下载

    硬件环境乐鑫官方开发板ESP8266-DevKitC板载自动下载电路如下开发板入门指南的描述如下显然,选择自动
    发表于 01-25 08:22

    ESP8266硬件设计指南的详细资料免费下载

    本手册提供了 ESP8266EX 系列的产品信息,包括 ESP8266EX 芯片,配置 ESP8266EX 芯片的 ESP-LAUNCHER 开发板,以及
    发表于 03-15 08:00 34次下载
    <b class='flag-5'>ESP8266</b>硬件设计指南的详细资料免费<b class='flag-5'>下载</b>

    ESP8266模块的的硬件设计指南资料免费下载

    本手册提供了ESP8266EX 系列的产品信息,包括 ESP8266EX 芯片,配置 ESP8266EX 芯片的 ESP-LAUNCHER 开发板,以及
    发表于 03-18 08:00 47次下载
    <b class='flag-5'>ESP8266</b>模块的的硬件设计指南资料免费<b class='flag-5'>下载</b>

    ESP8266电路原理图免费下载

    本文档的主要内容详细介绍的是ESP8266电路原理图免费下载
    发表于 03-13 08:00 481次下载
    <b class='flag-5'>ESP8266</b>的<b class='flag-5'>电路</b>原理图免费<b class='flag-5'>下载</b>

    中移合物固件ESP8266软件下载

    中移合物固件ESP8266软件下载
    发表于 05-06 10:09 8次下载

    ESP8266系列封装库资源下载

    ESP8266系列封装库资源下载
    发表于 05-20 16:04 0次下载

    Esp8266原理图分享

    Esp8266原理图免费下载
    发表于 06-18 11:21 510次下载

    ESP8266和Node MCU扫盲与开发入门

    下图是网上出现最频繁的NODE MCU开发板,由ESP8266模块、USB转TTL芯片、5V转3.3V的LDO、自动下载电路等组成。ESP8266
    发表于 10-26 09:06 30次下载
    <b class='flag-5'>ESP8266</b>和Node MCU扫盲与开发入门

    ESP8266自动下载电路分析

    硬件环境乐鑫官方开发板ESP8266-DevKitC板载自动下载电路如下开发板入门指南的描述如下显然,选择自动
    发表于 11-30 17:51 9次下载
    <b class='flag-5'>ESP8266</b><b class='flag-5'>自动</b><b class='flag-5'>下载</b><b class='flag-5'>电路</b><b class='flag-5'>分析</b>

    ESP8266/ESP32自动下载原理

    前一段时间需要自己制作一片ESP32单板,成本和封装考虑,计划选择CH340E作为USB转串口芯片,ESP8266/ESP32的单板一般都有自动下载
    的头像 发表于 10-10 15:06 4594次阅读

    使用MPU6050、ESP8266和Qubitro进行ART分析

    电子发烧友网站提供《使用MPU6050、ESP8266和Qubitro进行ART分析.zip》资料免费下载
    发表于 10-28 09:33 2次下载
    使用MPU6050、<b class='flag-5'>ESP8266</b>和Qubitro进行ART<b class='flag-5'>分析</b>

    使用ESP8266 WiFi模块DIY自动智能喂鱼器

    电子发烧友网站提供《使用ESP8266 WiFi模块DIY自动智能喂鱼器.zip》资料免费下载
    发表于 12-27 10:05 3次下载
    使用<b class='flag-5'>ESP8266</b> WiFi模块DIY<b class='flag-5'>自动</b>智能喂鱼器

    ESP8266硬件

    目前市面上有关ESP8266模组有很多的种类,但是都是使用的乐鑫公司开发的ESP8266的wifi模组,而且种类也很多。
    的头像 发表于 02-10 14:25 4715次阅读
    <b class='flag-5'>ESP8266</b>硬件

    NodeMCU家庭自动化(ESP8266)

    电子发烧友网站提供《NodeMCU家庭自动化(ESP8266).zip》资料免费下载
    发表于 07-10 14:59 0次下载
    NodeMCU家庭<b class='flag-5'>自动</b>化(<b class='flag-5'>ESP8266</b>)