图解单片机下载程序电路原理之USB转串口线、CH340、PL2303、MAX232芯片的使用! .

本文主要是介绍图解单片机下载程序电路原理之USB转串口线、CH340、PL2303、MAX232芯片的使用! .,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目前为止,我接触单片机已有不少时日,从选择元器件、原理图、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引脚。问题解决!!

        最后附上一张CH340的典型应用图(截自STC的文档)供大家参考!若碰到相关问题可以给我留言!!!

这篇关于图解单片机下载程序电路原理之USB转串口线、CH340、PL2303、MAX232芯片的使用! .的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/193818

相关文章

windows和Linux安装Jmeter与简单使用方式

《windows和Linux安装Jmeter与简单使用方式》:本文主要介绍windows和Linux安装Jmeter与简单使用方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录Windows和linux安装Jmeter与简单使用一、下载安装包二、JDK安装1.windows设

Spring 缓存在项目中的使用详解

《Spring缓存在项目中的使用详解》Spring缓存机制,Cache接口为缓存的组件规范定义,包扩缓存的各种操作(添加缓存、删除缓存、修改缓存等),本文给大家介绍Spring缓存在项目中的使用... 目录1.Spring 缓存机制介绍2.Spring 缓存用到的概念Ⅰ.两个接口Ⅱ.三个注解(方法层次)Ⅲ.

PyTorch中cdist和sum函数使用示例详解

《PyTorch中cdist和sum函数使用示例详解》torch.cdist是PyTorch中用于计算**两个张量之间的成对距离(pairwisedistance)**的函数,常用于点云处理、图神经网... 目录基本语法输出示例1. 简单的 2D 欧几里得距离2. 批量形式(3D Tensor)3. 使用不

电脑系统Hosts文件原理和应用分享

《电脑系统Hosts文件原理和应用分享》Hosts是一个没有扩展名的系统文件,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应... Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应

C#使用MQTTnet实现服务端与客户端的通讯的示例

《C#使用MQTTnet实现服务端与客户端的通讯的示例》本文主要介绍了C#使用MQTTnet实现服务端与客户端的通讯的示例,包括协议特性、连接管理、QoS机制和安全策略,具有一定的参考价值,感兴趣的可... 目录一、MQTT 协议简介二、MQTT 协议核心特性三、MQTTNET 库的核心功能四、服务端(BR

无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案

《无法启动此程序因为计算机丢失api-ms-win-core-path-l1-1-0.dll修复方案》:本文主要介绍了无法启动此程序,详细内容请阅读本文,希望能对你有所帮助... 在计算机使用过程中,我们经常会遇到一些错误提示,其中之一就是"api-ms-win-core-path-l1-1-0.dll丢失

使用@Cacheable注解Redis时Redis宕机或其他原因连不上继续调用原方法的解决方案

《使用@Cacheable注解Redis时Redis宕机或其他原因连不上继续调用原方法的解决方案》在SpringBoot应用中,我们经常使用​​@Cacheable​​注解来缓存数据,以提高应用的性能... 目录@Cacheable注解Redis时,Redis宕机或其他原因连不上,继续调用原方法的解决方案1

Dubbo之SPI机制的实现原理和优势分析

《Dubbo之SPI机制的实现原理和优势分析》:本文主要介绍Dubbo之SPI机制的实现原理和优势,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Dubbo中SPI机制的实现原理和优势JDK 中的 SPI 机制解析Dubbo 中的 SPI 机制解析总结Dubbo中

java中XML的使用全过程

《java中XML的使用全过程》:本文主要介绍java中XML的使用全过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录什么是XML特点XML作用XML的编写语法基本语法特殊字符编写约束XML的书写格式DTD文档schema文档解析XML的方法​​DOM解析XM

使用Java实现Navicat密码的加密与解密的代码解析

《使用Java实现Navicat密码的加密与解密的代码解析》:本文主要介绍使用Java实现Navicat密码的加密与解密,通过本文,我们了解了如何利用Java语言实现对Navicat保存的数据库密... 目录一、背景介绍二、环境准备三、代码解析四、核心代码展示五、总结在日常开发过程中,我们有时需要处理各种软