添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

或者叫它延时上升电路。利用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# D1 DTR#

在这里插入图片描述
可以看到两个信号是全程拉低的,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,测到掉电时间是四百多毫秒。

或者叫它延时上升电路。利用USB - TTL 芯片的RTS# 或者DTR# 信号让单片机自动断电复位。原理开门见山吧,搜了一圈好像没发现相同工作方式的电路。注意Q3 是NPN,发射极向上画了,可能看着不太习惯。SW1 是手动触发的按键,并不必要。原理就是用PMOS 管控制单片机的供电C-VCC,电路触发时让单片机断电,然后自动重新上电,冷复位电路基本都这样。PMOS 管Q1 用R6 下拉默认保持导通状态。当PNP 三极管Q2 基极被下拉时,R6 上经过电流,电压上升,Q1 关断,单片机断电。用PNP
本文介绍的是带电压电流表的多功能 STC 免冷启动 自动 下载 器,功能如下: 由于常用的 STC 自动 下载 器没有电流检测功能,没法判断实验板的工作电流大小,怕电流过大,不方便,所以自己动手DIY个带电压电流表的 下载 器。主要功能有 自动 下载 、各接口的电压、输出的工作电流、及4路电压表。4路电压表用于实验板特定点的电压监测,充分利用 单片机 的资源,不浪费。对于 自动 下载 器的原理网上有,就是监测串口是否连续输出0X7F的值,有就说明要断电重启 下载 数据,本 下载 器支持1200-115200b的常用波特率,程序是采用每0.1S改变一下串口的波特率(由于采用先判断收到不是7F值就改变波特率的方法会出现有时不响应。所以改为这种方式。),然后检查是否有7F的值,如有就停止改变波特率,如连接接收到7F值,就关电0.4S再开电。 STC 自动 下载 器制作器件清单: 这个制作电压检测最大为25V,电流最大为2A,它的受控输出接有1A的保险的,所以采控电流不能过大,它的输出接口有专门USB供电的直出口,可以利用这个接口外接USB座,可以把这东东变身成USB电压电流表。 工作界面如下,分2页显示,下图为第一页,显示有输出5V的电压值及输出的3.3V的值、输出电流值、外接输入的值、 单片机 的供电,如当USB电压电流表时,跳线短接USB供电,CPU的电压为USB输出电压。 PCB截图: 说明:由于上图PCB制作是没找到表贴LED的封装,用二极管的封装,所以尺寸大了,而且有一线布不过去,用跳线跳过的,如下图右上角接口那条红线,它是连接两个焊盘。 电路 板设计是采用表贴47U电容,实际使用中出现向外供电时, 单片机 出现重启的情况,加表贴电容的方法也解决不了问题,后来只加个普通的100U的电解就解决了,这个有可能是表贴电容性能有问题,所以 电路 板上多了2个电解电容。 以下是装上元件的图,焊工一般,能用。 接口的图,由于内部 单片机 及输出有多个输入源可选择,所以有跳线,分别选择USB供电,外接5V供电,外接12V转5V供电,由于板过小,三端稳压散热位小,所以如用12V转5V稳压供电时,电流不能过大,会出现过热的情况。
STC 单片机 的程序 下载 使用ISP模式, 下载 程序通过微机上串口,或者USB转串口,与 单片机 上特定的 下载 端口相连进行 下载 。不需要任何第三方的 下载 器,调试器便可以完成 单片机 的开发,使用起来非常方便。 本文介绍了 STC 下载 的过程,并设计全 自动 STC 下载 电路 ,使得整个 下载 过程不需要人工干预,这就大大提高的程序的开发效率,使得通过 下载 -运行-测试 模式完成程序的开发。 STC 下载 模式介绍 STC ...
是给一个 STC 15W408AS 的开发板用的,带有 自动 下载 功能,不用每次手动断电复位。 USB接口部分 用了经典(古老)的mini-usb 接口,因为我不喜欢micro-usb,当年手机上经常坏。type-c 的又贵又复杂,体积比mini-usb 还大。而且正好手头的Arduino nano 用的也是mini-usb。一根能用的数据线也就几毛钱。 D+ 和 D- 数据线上串联的电阻说是可以提高信号质量,阻值我见过有用22、33的,似乎还有用47 的,也有干脆什么也不接。 这种共阳极接法要注意两个LED 用相
当我们在 stc 官方烧录软件点击 下载 时,烧录软件会以2400的波特率连续发送0x7f,同时ch340g的DTR和RTS引脚会拉低。 于是我们就可以利用DTR或RTS引脚做一个 硬件 自动 烧录器。 图1 硬件 版原理图 1/2 图2 硬件 版原理图 2/2,接上图 模块上电稳定后且没有 下载 命令时,DTR/RTS输出高电平,电容C11右端为高电平,NPN 三极管 Q2导通,Q1: pmos管si2301cds导通,目标 单片机 上电。 当 stc 烧录软件发出 下载 信号时,DTR/RTS拉低,左
在之前那篇 电路 STC 硬件 自动 下载 电路 - 三极管 脉冲 电路 的基础上略微简化,把 三极管 换成了MOS 管,减少了一两个元件。原理的详细信息,比如RTS# 和DTR# 信号,参见那篇。 主要的差别是把左边延时 电路 三极管 换成了MOS 管,原理还是一样的。然后就是改用一个NMOS 控制 单片机 的GND 来控制断电和上电,因为这么一来就可以直接把Q2 的输出连接到Q1 栅极,要是Q1 用PMOS 的话中间还得再加一个管子反相,就太蹩脚了。这么一来两个管子可以用一样的NMOS,也简化了BOM。图里用的2N7
51单片机 一键 下载 电路 是一种用来方便地将程序 下载 51单片机 中的 电路 设计。该 电路 通常包括以下几个主要部分: 1. 串口转USB模块:用于将计算机的USB接口转换成适合 51单片机 的串口接口。常用的串口转USB芯片有CH340、PL2303等。 2. 下载 器芯片: 责将计算机上的程序通过串口发送到 51单片机 中,并实现 下载 过程的控制和管理。常用的 下载 器芯片有 STC 89C52、PL2303、CP2102等。 3. 复位 电路 :用于在 下载 过程中对 51单片机 进行复位操作,以便重新启动程序。一般包括一个复位按钮和一个复位 电路 。 4. 扩展接口:为了方便使用,一些设计还会在 电路 中增加扩展接口,用于连接其他外设或者模块,如LCD屏幕、按键、LED灯等。 需要注意的是,具体的 电路 设计可能会因应用场景而略有不同,你可以根据自己的需求进行相应的改进和调整。同时,为了确保 下载 的稳定性和可靠性,建议参考相关资料和文档,并严格按照官方推荐的 电路 设计进行操作。