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 芯片的正常运行。

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

    关注

    57

    文章

    490

    浏览量

    98196
  • 开发板
    +关注

    关注

    25

    文章

    4429

    浏览量

    93992
  • RTS
    RTS
    +关注

    关注

    0

    文章

    20

    浏览量

    14204

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

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

收藏 人收藏

    评论

    相关推荐

    ESP8266自动下载电路设计方案

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

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

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

    ESP8266一键烧写软件下载

    ESP8266一键烧写软件下载
    发表于 11-22 17:00 26次下载

    如何将ESP8266连接到WiFi

    在之前的ESP8266项目中,我简要介绍了ESP8266 WiFi模块,如何开始使用ESP8266和Arduino,ESP8266 ESP-
    的头像 发表于 07-29 11:32 8.5w次阅读
    如何将<b class='flag-5'>ESP8266</b>连接到WiFi

    ESP8266开发板的电路和PCB原理图免费下载

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

    ESP8266电路原理图免费下载

    本文档的主要内容详细介绍的是ESP8266电路原理图免费下载
    发表于 03-13 08:00 461次下载
    <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 466次下载

    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 PCB的模块封装库下载

    ESP8266 PCB的模块封装库下载
    发表于 10-28 14:50 165次下载

    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>

    串口2 esp8266测试程序下载

    串口2 esp8266测试程序下载
    发表于 12-30 10:38 21次下载

    ESP8266/ESP32自动下载原理

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

    NodeMCU家庭自动化(ESP8266)

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