或者叫它延时上升电路。利用USB - TTL 芯片的RTS# 或者DTR# 信号让单片机自动断电复位。比较完整的串口电路参见:STC 串口下载电路 - CH340G USB转串口以及漏电隔离

原理

开门见山吧,搜了一圈好像没发现相同工作方式的电路。


注意Q3 是NPN,发射极向上画了,可能看着不太习惯。SW1 是手动触发的按键,并不必要。原理就是用PMOS 管控制单片机的供电C-VCC,电路触发时让单片机断电,然后自动重新上电,冷复位电路基本都这样。PMOS 管Q1 用R6 下拉默认保持导通状态。当PNP 三极管Q2 基极被下拉时,R6 上经过电流,电压上升,Q1 关断,单片机断电。用PNP 控制PMOS 的好处是未触发的时候这里不会有多余的电流。可以用SW1 按键手动下拉Q2 基极给单片机断电。

左半边NPN 三极管Q3 周围基本上是一个电容延时电路。UART-DTR# 是来自USB 芯片的信号,默认高电平,经过R8 和二极管D4 给电容C8 充电。R11 有分压的效果,但是阻值远大于R8,效果不明显。电容大致可以充到VCC - 0.6V,此时Q3 发射极是高电平,比基极还高,当然不导通。

UART-DTR# 到低电平时,D4 反向截止,C8 不会从这里快速放电。Q3 基极现在是电容正极电压,接近VCC,发射极是低电平,所以Q3 导通,Q2 基极被拉低,PMOS Q1 关断,单片机掉电。这时C8 主要经过Q3 放电,基极电阻R10 限流延时。放电大概会上百毫秒,C8 放完电后Q3 截止,连带Q2 也截止,PMOS Q1 恢复导通,单片机上电。这就是延时自动上电的过程,反映到波形大概是这样:

另外,两个三极管能起到类似达林顿的效果,防止PMOS 不彻底关断。100k 电阻R11 用来给电容一个彻底放电的通道,同时下拉Q3 的基极,应该能起到抗干扰,避免误触发的效果。1M 电阻R9 是为了消除仿真自动上电时看到的一个负电压尖峰,大概和MOS 管的寄生电容有关,能量应该很小,不至于造成什么麻烦,但是总之加个电阻保平安。元件的型号都没有特殊要求,图里只是举例。因为RTS#DTR# 信号的行为差不多,所以把控制信号换成RTS# 也行。

受到评论启发,用MOS 管改了个升级版的简化电路:STC 纯硬件自动下载电路 V2,我自己以后应该只会用这个简化版了。

DTR# 和RTS# 信号

大部分自动下载的电路设计都和这两个串口信号有关,不光是STC 的电路会用。之前听说过RTS# 信号是下载开始给个负脉冲,那就直接把RTS# 接过来就行了,但是并不能~ STC-ISP 软件编程时DTR#RTS# 信号是全程低电平,下载结束才恢复。大部分串口助手软件默认也是开启串口时DTR#RTS# 都拉低,关闭时才拉高。所以直连的话单片机会一直断电,无法完成下载。

用stcgal 的下载信号举例,这是个开源的STC 单片机下载工具。D0 通道是RTS#D1DTR#


可以看到两个信号是全程拉低的,STC-ISP 和这个一样。放大看的话两个信号还是稍有差异:


DTR# 相比RTS# 要滞后500us。这个行为stcgal 和stc-isp 也是统一的,所以也看到有人基于这个实现了另一种原理的自动复位,就是当RTS# 为低,而DTR# 为高时触发。这篇介绍的电路可能会无差别的被各种串口软件触发复位,相对来说这种原理可能更加稳定,避免一些串口助手开启串口时的信号产生干扰,但是也不是能完全避免,各种串口软件实现并不统一,反正多复位个几次也无所谓。另外推荐一下Coolterm,也是个串口助手,可以设置关闭DTR#RTS# 信号,这样就不会误触发复位了。

类似的,这两个信号有可能通过上位机设置来传递更专用的复位信号。比如stcgal 可以设置在下载时用DTR# 作为自动复位信号,如图:


下载开始后DTR# 信号被拉低了差不多500ms,然后自动恢复高电平。这样的话就可以直接DTR# 信号控制单片机断电上电,不需要多做处理。比方说stcgal 的文档里推荐用NMOS 管控制单片机的GND 来断电,栅极直接连接DTR#。用GND 开关是因为那样更彻底,不用考虑USB 芯片给单片机漏电导致断电不彻底的问题。但是~ 感觉这样一来单片机的地会飘起来,感性的认为这样可能对ADC 的精度不利[doge]。所以还是用PMOS 控制电源,USB 部分隔离处理一下就好了,可以参见STC 的文档。

注:电容放电时间过长

实际用的时候看到了和仿真不太一样的现象。如果延时电容C8 用的是电解电容,那么一切OK,但如果换成了陶瓷电容,就会发现很长时间后才能自动上电。测了一下电压,看到电容电压降到0.6V 以下后下降非常缓慢,此时左边的NPN 三极管Q3 大概是处于将断未断的状态,电容经过基极的放电电流很小,用电解电容没问题应该是因为电解电容漏电比较大,相当于并联了一个比较大的电阻到地。解决方案就是把R11 减小,换成10k,或者把电容换成1uF 应该也行。但是放电时间也不能太短,如果太短的话单片机掉电的时间就太短,可能无法正常触发掉电然后上电复位。按我自己板子上的经验,单片机掉电时间在500ms 左右比较好,如果小于200ms 效果就不可靠了。C8 使用了10uF 陶瓷电容,R11 用47k,测到掉电时间是四百多毫秒。

STC 纯硬件自动下载电路 - 三极管负脉冲电路相关推荐

  1. STC 纯硬件自动下载电路 V2

    在之前那篇电路STC 纯硬件自动下载电路 - 三极管负脉冲电路 的基础上略微简化,把三极管换成了MOS 管,减少了一两个元件.原理的详细信息,比如RTS# 和DTR# 信号,参见那篇. 原理 主要的差 ...

  2. 论ESP32自动下载电路

    1.先来看看ESP32手册说明的启动运行方式 由上图可知,ESP32有SPI启动模式(正常启动)与下载启动模式两种,要实现程序自动下载肯定是需要上电时自动进入下载启动模式,方法就是将GPIO0与GPI ...

  3. 服务器看门狗芯片电路图,新型纯硬件看门狗电路设计分析研究

    摘   要:看门狗电路是电子电路中一种非常常见的电路,常用的看门狗电路在喂狗进程工作,CPU死机的状态时,可以重新复位CPU,防止CPU跑飞.但是在一些极端条件下,看门狗进程也会挂死,例如温度过高等, ...

  4. esp32使用CH340N实现自动下载电路

    无解~~~hhh 从网上查了一上午,看了这两位大佬的文章: ESP8266/ESP32自动下载电路原理分析 - 知乎 (zhihu.com) (6条消息) 论ESP32自动下载电路_苏守坤的博客-CS ...

  5. 【Arduino+ESP32专题】CP2102串口自动下载电路

    目录 CP2102介绍 原理图设计 实现的时序 在设计功耗测试工装时,需要使用到ESP32模块.这个模块也是一个单片机,下载时需要使用串口通信功能.串口通信可以使用CH340芯片或是CP2102都是很 ...

  6. ESP8266/ESP32自动下载电路分析

    要让ESP8266/ESP32进入下载模式,需要在上电时拉低GPIO0,下载完成后又需要拉高GPIO0然后重新上电来正常运行. 一般在GPIO0上设置个按键来实现,但是每次都需要手动操作比较麻烦,其实 ...

  7. STC单片机自动下载调试器设计

    目录 简介 改进方案 1. 解决思路 2. 电路设计 3. 软件 测试结果 参考文献 简介 在推文<全自动STC下载电路设计>中给出了利用STC单片机的ISP程序自动下载调试板的是设计.使 ...

  8. 【开源】STC单片机免冷启动自动下载器

    [开源]STC单片机免冷启动自动下载器 首版效果图 实物打板图 手动焊接完成的PCBA,并且上电测试bug修复后的实物图 烧录器的验证对象 在烧录STC15F408AS最小系统板上进行实测. 实物连接 ...

  9. 【ESP8266 快速入门】硬件:ESP12S/ESP12F最小系统设计及typeC自动下载电路设计

    [ESP8266]ESP12S/12F 最小系统设计及typeC自动下载电路设计 0.引言 ESP8266面向物联网应用的,高性价比.高度集成的 Wi-Fi MCU. 芯片ESP8266EX采用的QF ...

最新文章

  1. 365天里有300天都想辞职,换个公司,你的2019会更好吗?
  2. 低能量社交时代,我们都成了小心翼翼的「舔狗」
  3. C语言十六进制数转八进制(十进制作为中介)(附完整源码)
  4. index.html图片弹窗,原生javascript实现图片弹窗交互效果
  5. 【UVA - 11383】Claw Golden Tiger (二分图最优匹配,KM算法原理)
  6. 常规sql读取CLOB
  7. SublimeText3 初探(工欲善其事,必先利其器)
  8. Linux内核同步机制--自旋锁【转】
  9. 帆软高级函数应用之时间函数
  10. Python3.WRF的投影转换
  11. 办公技巧:腾讯文档怎么固定表头?
  12. LaTeX插入参考文献教程 | 非BibTeX格式
  13. 第二章-FPGA的概要-《FPGA的原理与结构》
  14. Ubuntu 20.04 server乌班图服务器部署django,uwsgi,mysql,nginx细节
  15. 深度学习:生成式对抗网络,让机器在博弈中实现“自我成长”
  16. 中国联通再次下调国际漫游资费 最高降幅达90.42%
  17. 更便捷的中间人攻击框架Xerosploit
  18. QQ靓号申请器v1.1.0.0【已更新】
  19. 研报复现系列(五)【光大证券】放量恰是入市时:成交量择时初探
  20. Discuz!论坛运营之增加创始人的方法

热门文章

  1. Java设计模式之模板方法模式(UML类图分析+代码详解)
  2. JS邮箱验证_手机号码验证_电话号码验证-正则验证
  3. Apache JMeter压测工具
  4. golang坑之 'godoc' 不是内部或外部命令,...
  5. Java 日志框架详解
  6. TCP MSS PMTU PING
  7. word文件解除保护模式让其可编辑
  8. 小新Air15的USB接口只能充电,不能传送数据
  9. linux 创建wifi 热点_linux开启wifi和热点双用
  10. 如何清空Github上某仓库,而不是删除