51单片机USB转TTL一键下载
使用51单片机进行电路设计下载时需要断一下电才能烧录进去,这从一些51开发板就能看出来。
一般在项目中不会像开发板那样有USB接口直接插,然后烧录测试。
为了解决这个问题测试了一个电路,发现可以解决这个问题,如图1,图2。
图1 未按下按键
图2 按下按键
通过三极管控制MOS管电源输出,通过按下按键使三极管基极电压为零,进而使MOS管关断,切断后级电源。通过仿真可以发现功能可实现。
图3 USB转TTL电路
USB转TTL使用了CH340C,接口采用TYPE C 16pin接口,留了一个5V和3.3V的排针及GND。STC8系列功耗很低,这会使USB转TTL的TX连接MCU的RX时使MCU不能完全断电,所以按照STC给出的下载电路添加进去即可。5V转3.3V选用了一款贝岭的LDO。通过短路冒选择输出电压5V或者3.3V。
图4 PCB正面
图5 PCB反面
使用AD设计了一下PCB,如图4、图5。
图6 实物正面
图7 实物反面
如图6、图7是打样并焊接好后的实物图。
图8 选择程序下载
图9 按下按键
图10 烧录成功
如图8选择一个程序进行下载,图9下载成功。
通过这个设计解决了51单片机下载后需要插拔断电的问题,虽然不是自动下载,但用起来还不赖[呲牙]
针对常用51单片机下载程序问题做下详解
目前为止,接触单片机已有不少,从选择元器件、原理图、PCB、电路硬件调试、软件开发也算小有心得。
单片机软件开发里面第一步当属下载程序了,如果这一步都有问题,那么后面的一切便无从谈起,记得当初刚接触单片机时,对于下载电路方法及原理也是一头雾水。好在随着经验的积累以及自己的努力探求,现在对此问题算是有了点点自己的经验理解。故今天在此针对常用51单片机下载程序问题做下详解,以求新手们少走弯路。
原理
单片机的TXD、RXD是TTL电平,所以你得万变不离其宗的将其它信号转成TTL电平,只有这样给单片机下载程序才有可能成功!其中CH340、PL2303等芯片是直接将USB信号转换为TTL电平,而MAX232等芯片是将TTL转换为RS232信号或者将RS232信号转换为TTL.下面请看利用这种原理的两种常用方法:
方法一:
请看图一,这是我们最常见的单片机下载电路了,其中从②到⑥属于大家常用的USB转串口线,用这种方案的好处是,如果自己的PC带有串口(可能很老的机器没有USB接口),那么就可以直接给单片机开发板下载程序,因为采用这种方法的开发板必定带有串口接口嘛。当然,如果PC仅有USB接口而不带串口,那么只能找根USB转串口线了(其电路原理就是图中②到⑥),这里我推荐大家使用采用CH340芯片的USB转串口线,而不要采用PL2303的USB转串口线,因为PL2303价钱便宜所以山寨的水货较多,这会导致下载电路不稳定,甚至无法正常下载。同时此方案的坏处是电路板上必定要做一个9针串口接口(太巨大了),这必将增加了电路PCB的面积,当然也就增加了成本啦!(顺便发表下个人见解:那个9针接口实在太丑,又大又重,无形中便降低了自己的设计档次,哈哈。所以不推荐这种方法!)
请看图二,这是我经常采用的单片机下载电路。实践证明效果非常好,几乎没出过任何问题!它的好处是只需要找根普通的USB2.0线(如图二中②)就可以下载了,比找根USB转串口线要轻松的多,同时由于将串口9针接口换成了USB接口,所以电路板的体积、重量也减少了不少,也显得更美观时尚,呵呵。在此强调一点:推荐使用CH340芯片(可以用CH340G,它引脚间距大很容易焊接)而不是PL2303,上文已说PL2303水货多,况且PL2303的外围电路比较复杂,这也给硬件电路的调试增加了难度。当然如果项目对成本特敏感,那么采用价钱相对较低的PL2303也无可厚非。大家看到没,图二的电路结构比图一要简化很多,那么是不是可以说明图二的性能比图一要更好呢?应该是吧!简单的结构出问题的概率当然更小了!
值得一提的是在使用CH340时,有些问题得注意下,因为很多同学反映用CH340下程序失败,但其实一般都很容易解决的。经本人总结常见原因有三:
一:某些CH340的引脚给单片机供了电导致单片机断电不彻底(下载程序要断电重启),从而导致程序没法下载。解决方案:在CH340的TXD引脚反向串联一个二极管(推荐肖特基二极管)、在CH340的RXD引脚串联一个约300欧姆的电阻。如此单片机可以彻底断电,问题解决!!(特别注意:此种情况不适用于stm32等芯片)
二:有些同学在给单片机供电时,为了防反接保护电路,在电源处串联了个二极管,由于二极管的正向压降导致单片机供电不足,从而导致程序无法下载。解决方案:将二极管用0欧电阻代替或者采用正向压降很小的二极管,以确保单片机的正常供电。问题解决!!
三:有些同学由于粗心将CH340的TXD引脚连接了单片机的TXD引脚,RXD引脚连接了单片机的RXD引脚,这自然不能下载程序了,一收一发不用多说吧,呵呵。解决方案:将CH340的TXD引脚连接单片机的RXD引脚,RXD引脚连接单片机的TXD引脚。问题解决!
相关问答
51单片机下载 原理,讲一下步骤,从电脑端到单片机,电脑端是怎...电脑端通过下载器软件或叫程序烧录工具(如STC-ISP等),把已经编译好了的程序数据文件(hex)以串口通信方式,向单片机发送数据;而单片机本身固化有所谓都片内烧录...
单片机下载 程序方法?你好,单片机下载程序的方法主要有以下几种:1.使用单片机编程器:将编写好的程序通过编程器连接到单片机上,通过编程器将程序下载到单片机的存储器中。2.使...
52 单片机怎么下载 程序步骤?1.下载程序的步骤包括准备工作、连接硬件、设置软件、下载程序等。2.首先需要准备好52单片机开发板、USB转串口模块、下载线等硬件设备,然后将它们连接好。...
STC 51单片机下载 器自己怎么做啊?其实STC系列单片机是直接用串口下载的,其下载器就是直接做个MAX232的电平转换就可以了!!!当然如果你的电脑没有串口,比如笔记本,你就需要设计个USB转TTL电...
proteus 怎么下载 程序到 单片机 ?下载程序到单片机的方法有很多种,其中一种常用的方法是通过使用Proteus软件进行仿真和下载。下面是具体步骤:1.打开Proteus软件,并创建一个新的工程。2.在工...
51单片机 ,程序 下载 失败,显示:打开串口失败! Chinese:串口已...电脑板载的串口不用装驱动,打开设备管理器看看里面有没有串口,有的话看看串口号是多少,用对应的串口号进行下载就可以了,如果设备管理器中没有串口,进入BIOS设置...
单片机下载 器是什么,有什么用啊?您好:单片机下载器是给单片机下载程序的东西,程序经过编译生成目标代码,然后通过下载软件和下载器下载到单片机的ROM或者flash中。希望可以帮到您。您好:...
如何将程序导入 51单片机 ?使用串口线接到电脑的9针串口,然后使用STC软件可以将HEX文件下载到单片机中去。如果你的程序只是源代码,那么必须用keil编译成HEX文件,才能使用STC软件。使用...
用keil编写 51单片机 程序步骤?编写51单片机程序步骤一般包括以下几个步骤:1.确定程序的需求和功能,对程序进行整体设计。2.编写程序代码,采用C语言或汇编语言进行编程。3.使用keil集...
stc 下载 器如何接线到 单片机 ?STC下载器与单片机使用3线连接,其中:下载器的TXD接单片机P3.0(串口1的RXD端),下载器的RXD接单片机P3.1(串口1的TXD端),下载器与单片机共地,即短接二者GN...ST...