原创设计: 廉价的STC免启动下载简易电路
STC单片机下载,是很多初学单片机的人必须经历的过程,但是如果每次下载都要断电,肯定非常不爽。如果要自行设计一个属于自己的开发板,包含免启动下载电路是不能绕过的坎。
STC单片机免启动下载有很多方法,网上公布的方法有软件的和硬件的方法,其实每种方法都有其优缺点。软件的方法资金投入少,但是要占用程序空间,而且每次新项目开发都要嵌入一些代码也比较烦。网上公布的硬件方法,主要是用类似stc15F104单片机去控制自动断电和恢复电源,这个方法优点是电路非常简单,但是缺点是:1. 控制代码中要有延时参数设置,延时大了小程序要下载很久,延时小了大程序下载不完就中断了。2. 本身就是下载器,而控制单片机程序也要下载,修改控制下载的程序是不能享受免下载待遇的。3. stc单片机最便宜也要1元的成本。
本人通过试验,设计另外一款stc单片机免下载电路,元件数量少,而且都是廉价常用元件,估计很多人家里库存都有,电路虽然比stc单片机控制复杂一些,多了几个元件,但是总体也是很简单的廉价电路。目前淘宝的ch340g芯片大跌价,已经跌到甚至跌破1元大关,如果在自己的产品中加上廉价的自动下载电路接上MicroUSB手机通用充电接口作为下载插座,那么产品的软件升级功能变得非常简单方便,立马秒杀同行而显得高大上。
电路如图:
P1从要冷启动的CH340G模块输出电源导入输入电源,Po是自动启动电源输出,直接接自己要开发项目的stc单片机的电源。电路主体就是一个最简单的单稳态电路。Q2就是一个开关,跟网上的stc15f104板的8550作用一样,但是用场效应管压降低,输出电压更接近原始的Vcc而已,同时场效应管更容易选择大电流管子实现大功率输出。
RTS 从CH340G的14脚引出,电流非常小,完全可以用漆包线飞线飞出。当然也也可以不用RTS而用DTR, 从ch340g的13脚引出DTR使用,使用效果完全一样,都是在下载软件点击下载按钮后生成一个低电平。使用RTS(或DTR)控制的好处是无论要下载的程序大小均可稳定工作,这是比使用网上流传的stc15f104w版本的自动下载器优胜的地方。
元器件参数仅供参考,可以按照自己手头元器件调整,不必拘泥于图中的参数。其中,Q1可以用任意小功率NPN三极管,Q2可以用任意启动电压低于4V的P沟道场效应管。二极管D1可以用任意肖特基二极管。阻容的参数也是可调的,R1, C1令低电平输入变成一个脉冲信号,R2参数只要保证Q1可靠的在开关状态即可(即输入低电平能完全截止,输入高电平能进入饱和状态),R3、C2控制充放电时间,只要保证充放电时间在100ms以上都可以,太短了不能可靠工作,太久了可能点下载按钮后要等待一些时间才开始下载而已,所以宁长勿过短,只要总等待时间少于1秒,一般人根本感觉不出明显的等待。
为了测试效果,自己焊接了测试板。就懒得搞PCB了,直接用洞洞板。元器件选用0805封装,基本上与2.54mm间距的洞洞板吻合。
实际上只需要指甲大小的5孔X5孔的洞洞板就能完成,刚好手头上有这个碎料,也懒得再去锯小了,直接拿来用。
大部分都是信号线,电流很小,为了节省焊锡,飞线基本采用淘宝卖几毛钱1卷的免刮漆漆包线,效果还不错。
(以上是测试板正面和背面图,其实只需要5孔X5孔的洞洞板)
测试板焊接好后,直接用面包板和要冷启动的ch340g模块连接进行测试,测试结果非常成功!
[ 此帖被gffx在2017-08-24 14:39重新编辑 ]