正文
一、元器件选型
1、 P 沟道 mos 管

2、 22uF 电容

3、47k 电阻

4、10Ω电阻

5、10kΩ电阻
二、原理图
三、设计说明
1、 CH340N 与硬件控制流
(1) RTS#引脚的功能
RTS(Request To Send,发送请求)引脚的作用是向其他设备发出“我有数据要发送,
请准备接收”的信号。当芯片准备好发送数据时,RTS 引脚会进入激活状态。如果在 RTS
旁边有一个#(即 RTS#),或者名字上方有一个横杠(RTS),这通常表示它是以低电平激
活的。
对于 CH340N 芯片,其 RTS#引脚在空闲状态时会保持高电平。在使用电脑通过 CH340N
对芯片进行程序烧录时,RTS#引脚会被拉至低电平,并在程序烧录完成后恢复至高电平。
利用 RTS#引脚的这一特性,我们可以设计一个电路来控制微控制器(MCU)的电源供
应,从而实现在需要时自动重置或启动 MCU。
(2)什么是硬件流控制
硬件流控制是一个专业数据,意思是在设备之间的数据通信中,使用一些辅助的硬件信
号来控制数据传输速率和保证数据完整性的一种方法。这种控制方式主要用于避免数据发送
速度过快,接受设备来不及处理而造成数据丢失的问题。
下面我们用两幅漫画来解释硬件流控制为什么可以保证数据完整性。
1)没有 RTS 的场景:
2)有 RTS 的场景:
RTS 是 Request to Send,用来告诉别的硬件我要发送数据的。这样可以让别的设备停下
来准备接数据,保证数据完整性。
3)CH340 系列芯片与常见硬件控制引脚
我们选择的 CH340N 芯片,设计 CH340 系列芯片中引脚最少的一个。CH340 系列的其
他型号主要是引入了不同的硬件控制流引脚,同学们在日后可以根据不同的需要选择不同的
芯片型号。
此处我们简单介绍一下含 RTS 的常见硬件流工作引脚:
(1)RTS(Request To Send)-发送请求:
这是发送设备用来告诉接收设备“我有数据要发送,请准备好接收”的信号。当发送设
备准备好数据发送时,它会将 RTS 信号设置为激活状态。
(2)CTS(Clear To Send)-清除发送:
这是接收设备用来回应发送设备“我已准备好接收数据,你可以发送了”的信号。只有
在接收设备将 CTS 信号设置为激活状态时,发送设备才开始数据传输。
(3)DTR(Data Terminal Ready)-数据终端就绪:
由发送设备用来指示其已准备好进行通信。
(4)DSR(Data Set Ready)-数据设备就绪:
由接收设备用来响应 DTR,表示它已准备好进行通信。
(5)CD(Carrier Detect)-载波检测:
有时候也叫 DCD(Data Carrier Detect),这个信号用于调制解调器通信,表明已经检
测到一个有效的传输信号。
(6)RI(Ring Indicator)-振铃指示:
这个信号在电话线调制解调器中使用,指示电话线上有来电信号。
2、 自动冷启动电路的设计
(1)设计目的
每次烧录程序都需要按两下开关,这实在是太不友好了,时间长了容易磨出茧子,因此
我们设计一个自动冷启动电路让 MCU 能够自动掉电再上电,保护我们的纤纤玉手。
(2) 设计思路
现在,我们已经了解了 CH340N 的 RTS#引脚的工作逻辑,可以设计一个电路来捕捉
CH340N 的 RTS#引脚电平拉低的事件,并利用它去控制一个电子开关,从而控制 MCU 的
供电。
具体来说,该电路需要满足以下四个要点:
(1)这个电路要捕捉到 CH340N 的 RTS#引脚的电平拉低事件。
(2)捕捉到 CH340N 的 RTS#引脚电平拉低的事件。
(3)在捕获到电平拉低信号后,关闭电子开关,使 MCU 断电关机。
(4)在一个很小的间隔后,重新打开电子开关,使 MCU 上电开机。

3、在开源社区中寻找已有设计
(1)了解嘉立创开源硬件平台
嘉立创创建并维护了一个开源平台,名为 OSHWHub(Open Source Hardware Hub)。
在这个网站上,许多极客分享他们的硬件设计。通过该平台,我们可以参考许多优秀设计,
丰富自己的学习经验。

(2)在 OSHWHUB 中寻找已有设计
我们可以在 OSHWHUB 中搜索 STC 冷启动等关键词,最终老师找到了下面这个开源
项目:
这位创客在 B 站上也有一个账号:SFR-小曾。
这是一个独立的 CH340 下载模块,这样的模块可以用于给许多不同的 STC 芯片下载程
序。而我们将 CH340 集成到了核心板上。
在这个项目中,包含了一个自动冷启动电路。我们可以在自己的项目中照搬大神设计的
电路。
4、自动冷启动电路的工作过程
原创作者已经在开源项目中详细讲解了整个电路的工作原理。现在,我们可以再次模拟
并解释这个电路的工作过程。
下图是我们在项目中照搬后结果:
(1)输入、输出和控制
自动冷启动电路有 3 个对外连接的电,分别是 VIN_5V,这个地方再向上游是我们的
USB 供电,RTS 连接着 CH340N 的 RTS#引脚。VCC_SW 是自锁开关的上游,自锁开关紧
接着后面是 MCU。
(2)CH340N 空闲时
在不需要下载程序的时候,CH340N 的 RTS#会维持在高电平状态。你可以 MOS 管理解
为一个电子开关,自动冷启动电路中使用的 MOS 管均为 P 沟道 MOS 管,这种 MOS 管的
特点是当栅极的电平比源极低到一定程度时,MOS 管就会导通。如果栅极和源极的电压差
距很小那么就会切断电路。
(3)CH340N 准备发送数据时
(1)当 CH340N 准备发送数据时,RTS#的电压从 5V 迅速降至 0V,此时左侧的 PMOS
导通。
(2)左侧 PMOS 导通后,22uF 的电容开始充电。由于之前电容是空的,所以刚开始充
电时电容相当于一根导线。
(3)流经左侧 PMOS 的 5V 电压通过 10Ω电阻直接抵达右侧 PMOS 的栅极,使其电压
非常接近 5V,从而使右侧 PMOS 关断。
(4)右侧 PMOS 一旦关闭,后面的 MCU 就断电了。
(4)电容充电到一定程度时
(1)随着 22uF 电容的充电,它的阻抗逐渐增大,最终几乎变为开路
(2)此时,通过左侧 PMOS 导通的 5V 电压经过 47K 电阻分压后到达右侧 PMOS 的栅
极,右侧 PMOS 的栅极电压变为低电平。于是右侧 MOS 管导通,MCU 重新上电。
(5)CH340N 完成数据发送时
(1)当程序下载完成时,CH340N 进入空闲状态,此时 RTS#恢复至 5V,左侧 PMOS
的栅极电压和源极电压基本相等,导致左侧 PMOS 关闭。
(2)随着左侧 PMOS 的关闭,右侧的电容失去了电压源供电,并通过右侧的 47K 电阻
放电。
(3)左侧电路的变化对右侧 PMOS 栅极的电压没有影响,右侧 PMOS 的栅极电压仍然
保持低电平,PMOS 持续导通,MCU 继续有电源供应。
5、MOS 管的栅极为什么要串电阻
AO3401 作为一个 MOS 管,我们可以认为它的栅极是高阻态的。只对电压敏感,但是
这个位置我们为什么要串一个10Ω的电阻呢?这与MOS管内部的寄生电容以及寄生电感有
关。下面我们只做简单的说明。
(1)振铃效应
MOS 管的栅极具有一定的寄生电容,连接线和 MOS 管自身也会有一定的寄生电感。
如果栅极的连接上没有任何的阻尼,这些寄生的电气效应可能会组成一个 LC 震荡电路,从
而引起振铃现象,如下图所示:
因此,我们可以在 MOS 管的栅极去串联一个电阻,以此来削弱振铃效应。
(2)米勒平台
也是因为 MOS 管上的寄生电容,MOS 管的栅极在电平拉高或拉低时,会遇到一个平
台期,这个现象与米勒效应有关,因此也被称为米勒平台。下面是理想方波与带有米勒平台
的方波示意图。
理想的栅极电平切换:
带有米勒平台的栅极电平切换:
米勒平台对 MOS 管的影响是,它导致 MOS 管从开启转到闭合时的时间间隔延长。这
种半开半闭的 MOS 管能够通过一定的电流,同时又具有较高的阻值,因此如果平台期太长,
那么会导致 MOS 管的发热比较明显。
(3)电阻阻值怎么选
根据前面的内容,我们知道,栅极如果不串联任何电阻,MOS 管容易产生震荡。因此,
我们需要再栅极上串联一个电阻来避免这个现象的出现。但是,我们也不能串联太大的电阻,
这是因为随着我们串联电阻的阻值的升高,米勒平台会相应地延长。
栅极电阻越大米勒平台越长:
因此,我们不能无限制地在栅极串联过大的电阻。通常,在栅极上串联 10 到 100Ω的
电阻是一种常见做法,这不仅可以有效抑制振铃效应,还能防止过长的米勒平台导致的开关
延迟。在实践中,通常可以首选 10Ω的电阻。
6、自锁开关还有没有必要保留
虽然我们有了自动冷启动电路,表面上看似不再需要通过自锁开关来手动冷启动,但实
际上我们目前的自动冷启动电路并不完美。
如果用户在电脑上快速点击两次下载,系统可能会卡住。原因是第二次下载时,电容还
没有完全放电。你可能会考虑通过调整电容的容值或 47K 电阻的阻值来缩短放电时间。然
而,这样做会导致电容的充电时间也相应缩短,从而使得 MCU 可能来不及完全放电,无法
重启并进入下载状态。
因此,保留自锁开关仍然是有必要的,这样可以在自动冷启动电路失效时提供另一种冷
启动的方法。
四、总结
根据提供的元器件选型和原理图内容,设计说明主要涉及到了P沟道MOS管、22uF电容、47k电阻、10Ω电阻、10kΩ电阻以及CH340N芯片的硬件控制流和自动冷启动电路设计等内容。
在设计说明中,设计了CH340N芯片与硬件控制流的相关内容,包括RTS#引脚功能、硬件流控制的作用和设计原理,以及自动冷启动电路的设计目的、设计思路和工作过程。此外,还提到了在开源社区中寻找已有设计的方法,以及关于MOS管栅极串联电阻的必要性和选择方法,同时也涉及到自锁开关的保留问题。
总的来说,设计说明涵盖了元器件选型、硬件控制流、自动冷启动电路设计和相关工作原理等多方面内容,为电路设计和实现提供了详细的指导和解释。