简要总结一下单片机下载程序电路
目前为止,接触单片机已有一些,从选择元器件、原理图、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下程序失败,但其实一般都很容易解决的。经本人总结常见原因有三:
1、某些CH340的引脚给单片机供了电导致单片机断电不彻底(下载程序要断电重启),从而导致程序没法下载。解决方案:在CH340的TXD引脚反向串联一个二极管(推荐肖特基二极管)、在CH340的RXD引脚串联一个约300欧姆的电阻。如此单片机可以彻底断电,问题解决!!(特别注意:此种情况不适用于STM32等芯片)
2、有些同学在给单片机供电时,为了防反接保护电路,在电源处串联了个二极管,由于二极管的正向压降导致单片机供电不足,从而导致程序无法下载。解决方案:将二极管用0欧电阻代替或者采用正向压降很小的二极管,以确保单片机的正常供电。
3、有些同学由于粗心将CH340的TXD引脚连接了单片机的TXD引脚,RXD引脚连接了单片机的RXD引脚,这自然不能下载程序了,一收一发不用多说吧,呵呵。解决方案:将CH340的TXD引脚连接单片机的RXD引脚,RXD引脚连接单片机的TXD引脚。
51单片机程序下载、ISP及串口基础知识
本文详细介绍了串口、51单片机的ISP下载等基础知识,已经学过单片机的也可以看看,加强一下对这方面的了解。
串口
串行接口简称串口,也称串行通信接口,是采用串行通信方式的扩展接口。
我们比较熟悉的USB接口,全名通用串行总线(Universal Serial BUS),就属于串口。
串行接口按电气标准及协议来分还包括UART、RS232、RS422、RS485等。
老式的台式计算机和部分笔记本上则有RS232串口,这里RS232指的是RS232电平的串口。后来由于这种串口使用很少、速度较慢、体积较大而逐渐在笔记本甚至台式机上被淘汰了。而51单片机等中含有UART串口,UART这里指的是TTL电平的串口。
UART与RS232区别主要在于其电平定义不同。TTL电平是5V的,而RS232是负逻辑电平,它定义+5~+12V为低电平,而-12~-5V为高电平。
标准串口即RS232串口(通常指COM接口),如图。
由于USB接口与单片机的TTL串口无法直接连接,一般通过转换芯片来连接。连接到USB接口的转换芯片一般需要在电脑上安装驱动。
USB转RS232串口(常用转换芯片为CH341,价格10-20元)
RS232转TTL(电平转换芯片MAX232)
MAX232电路图
USB转TTL串口(常称为USB转TTL升级小板,USB-TTL转接板,常用转换芯片为PL2303,价格6-10元)
PL2303电路图
USB - RS232串口 - TTL串口 转接板
USB-RS232电路图
通常成品学习板上都是USB接口或者RS232串口+USB接口。一方面USB接口负责给单片机供电,另一方面,USB转TTL或RS232转TTL已经集成的学习板上。
51单片机程序的烧写
我们最常见的51单片机是美国Atmel公司生产的AT系列单片机和中国宏晶公司生产的STC系列单片机。早期的AT89C51系列(89后面是字母C)单片机,下载程序时需要使用专门的烧写器烧写进去,单片机烧写程序时必须从电路上取下来,非常麻烦。后来推出了支持ISP(In System Programming)在线编程的AT89S51系列单片机,只需连接几根线即可烧写程序,也不需取下单片机。
标准10芯ISP插头
如图,学习板的左上角为标准10芯ISP插座
标准10芯ISP插座的接口定义
ISP下载电路图
AT89S51系列单片机下载程序时,计算机端可使用ProgISP等软件来下载。
AT89S51系列单片机的ISP下载是通过P1^5、P1^6、P1^7、RST引脚来下载的,而宏晶国产STC单片机则具有串口ISP功能,可直接使用串口,将程序下载进单片机。即将USB转TTL的TXD接单片机的RXD,RXD接单片机的TXD(实际中一些TTL转接板可能会把TXD、RXD标反,如果反了,交换即可)。STC系列的单片机在上电的时候会执行在ISP FLASH的ISP程序。只要在串口上收到连续的0x7F,便会进入ISP模式。所以STC单片机下载程序时,需要先在计算机端程序中点下载,然后给单片机通电。另外STC单片机需使用宏晶专用的单片机下载程序STC-ISP下载。
下载程序顺序如下:
1、设置单片机型号,COM口,波特率等参数。
2、装载好要烧的单片机程序。
3、点击“下载”。
4、给单片机上电。
5、下载软件显示:正在下载....
6、下载完成。
STC-ISP软件:
下载程序时注意,如果使用USB接口转串口的需安装对应驱动(PL2303、CH341等)。安装好驱动后连接上学习板或下载线,可以在设备管理其中看到相应的串口,如图:
相关问答
单片机 系统中, 串口下载程序 ,软件是如何下载进去的?STC单片机,装好USB转TTL或USB转串口的驱动,打开下载软件选择驱动安装后虚拟出来的串口(有的软件会自动扫描),选择正确的单片机型号,选择合适的波特率(默...
在keil中怎么设置通过 串口 向 单片机下载程序 -ZOL问答不能用keil作下载,它应该只是一个程序编辑和调试用的吧,用keil生成hex文件。下载时用专门的下载软件找到生成的那个hex文件就可以下载了。,有专门的单片机烧...
单片机串口下载 驱动怎么设置?单片机串口下载驱动设置通常需要在计算机上安装对应的串口下载驱动程序,然后在设备管理器中找到串口下载设备并右键选择更新驱动程序选项,手动选择已安装的驱...
51 单片机 , 程序下载 失败,显示:打开 串口 失败! Chinese: 串口 已...51单片机,程序下载失败,显示:打开串口失败!Chinese:串口已被其它程序打开或该串口不存在固态硬盘讨论回答(3)电脑板载的串口不用装驱动,打开设备管理器看看...
我用充电宝给51 单片机 供电,usb转 串口 给 单片机下载程序 ,这样行不行?为什么?可以的,只要共地就可以。把充电宝的地跟USB转串口的线的地相连,两边都是5V电压。我常这样分开供电,有时候比较方便。可以的,只要共地就可以。把充电宝的地...
多个 单片机串口 通信如何进行?两个单片机之间串口通信,如果是用proteus仿真,最简单了,两个单片机的RXD,TXD交叉连接就行了。要是实物最好用RS232连接通信,距离可以达到几十米。再远点距离...
单片机串口 检测不到怎么办?单片机串口检测不到可能有以下几种原因:1.串口线接触不良或者损坏。您可以检查一下串口线是否连接牢固,或者更换一条新的串口线来测试。2.串口驱动程序没...
单片机 同时收发 串口 怎么解决?一样的设置,,一样的东西,就是高级了一点,按普通设置就OK了一样的设置,,一样的东西,就是高级了一点,按普通设置就OK了
51 单片机 有几个 串口 ?普通51只有一个串口,有些51单片机有2个串口。比如STC12C5A60S2就有两个串口。普通51只有一个串口,有些51单片机有2个串口。比如STC12C5A60S2就有两个串口。
单片机串口 初值计算公式?初值=最大定时时间-定时时间初值=最大定时时间-定时时间