摘要:STC单片机具有便利的ISP串口下载程序的功用,无需购买专用的编程器;然而在重复调试程序的过程中,每次下载都需求冷启动就令人厌烦了,一起还缩短了开关原件的寿数;为此笔者研发了一种完全用硬件完结单片机主动冷启动的电路,完结一键下载程序,显着的降低了硬件本钱,减小了操作难度,而且不占用单片机的串口。
1.基本原理
进行STC下载时,需求运用官方供给的STC–ISP软件;运用国产的ch340g芯片作为USB转TTL的芯片,其引脚如下图。第13和14引脚为MODEM联络信号输出引脚,遭到STC-ISP下载软件的操控,默以为高电平,点击下载时变为继续的低电平,下载完结又变回高电平。
用MODEM联络信号引脚的下降沿作为触发信号,硬件电路检测到下降沿时给单片机断电一段时刻,然后上电,即完结主动冷启动。
2.详细硬件电路
Ch340g的下载电路在此不做赘述,值得注意的是二极管D1运用肖特基二极管或许开关管1n4148,保证单片机完全断电。
下面首要解说主动冷启动部分,将RTS或许DTR引脚作为信号的输入端,因为两个引脚在下载时都会跳变为低电平,因而能够恣意挑选一个引脚;运用一个10uf的钽电容C4用于耦合输入信号,只要电平跳变时有信号经过,后级电路首要由三个NPN三极管组成,笔者运用的是贴片的SS8050三极管,答应经过1.5A的电流,完全能够满意单片机供电的需求;其间两个三极管作为单稳态振荡电路的组件,一个三极管作为电子开关,操控单片机的通断电。
对电路进行剖析,未点击下载时,RTS/DTR为高电平,无信号经过耦合电容C4,单稳态多谐振荡器处于稳态,3Q1饱满而Q2截止,单稳态振荡电路输出端(R8)为高电平,Q3饱满导通,对单片机处于供电状况;点击下载时,RTS/DTR敏捷跳变为低电平,电平跳变时相当于交流电,经过耦合电容R4,输入一个负向脉冲信号到Q1的b极,Q1截止,Q2导通,振荡电路输出低电平,Q3截止,单片机断电,一起脉冲信号经电容C6耦合使Q1的b极电压下降,构成正反馈,振荡电路处于非稳态;经电容C6经过电阻R6放电,电路回到稳态。
剖析知非稳态时刻即断电时刻遭到R6和C6的巨细影响,计算式为:
非稳态时刻 T=0.7*R6*C6
依照图中参数断电时刻约为0.5秒
下图为ch340g下载电路图
下图为主动冷启动电路图
3.优势与缺点
现在常见的两种主动下载方式存在的问题:
*1运用STC15F014W单片机检测串口下载指令流——电路体积较大,主动下载部分硬件本钱高,约为1.3元,因为STC15单片机没有原生串口,需求用软件模仿串口,代码较为杂乱,关于下载波特率有约束,有必定的失败率;
*2运用51单片机自带的串口检测下载指令流——每次写程序都要参加主动下载检测代码,操作杂乱,占用了单片机的串口功用,往往是杂乱的程序才需求重复调试,占用了串口关于单片机的运用造成了较大的困扰;
本规划的优势在于,运用纯硬件电路完结主动冷启动,硬件体系作业比软件牢靠,主动下载部分硬件本钱极低,约为0.4元(钽电容可用一般瓷片%&&&&&%替代),电路体积小,运用的三极管均为常见的SS8050三极管,资料易得,电路较为简略,便于DIY;硬件电路呼应速度快,不必等候检测下载指令,成功率高,牢靠性高,笔者一次调试成功后下载失败率简直为0;
规划缺点:因为下载模块上电时,计算机与ch340g联络通讯,RTS/DTR引脚会在4秒左右的时刻内凹凸电平重复跳变,同样会触发冷启动电路,假如此刻主动下载电路连接了单片机,会导致单片机重复通断电三次,影响运用体会,笔者进行优化规划后未获得显着作用,故在此不做处理;
另附笔者焊接的主动下载模块如下图,电路较为紧凑