当前位置:首页 > 技术心得 > 正文内容

USB转串口 漏电给MCU,如何处理

xjtudll10年前 (2016-12-18)技术心得35620

参考资料:

http://bbs.21ic.com/icview-331251-1-1.html

http://bbs.21ic.com/icview-1262058-1-1.html

https://zhidao.baidu.com/question/1446506599856343620.html

问题:

PL2303(USB转串口)与MCU的串口连接,当掐断MCU电源后,MCU居然还在工作

原因:

(1) PL2303串口闲置时,TXD和RXD均是高电平(3.3V或5V),某些模块可能只有TXD是高电平

(2) 现代CMOS芯片,端口上基本都有保护二极管,串口TXD一端静态输出是高电平,通过上面的二极管串到目标板的电源系统上为其供电

(3) 有些低功耗MCU本身运行就非常省电,微弱的漏电也能使MCU正常运行

解决办法:

1、利用光耦隔离,但较慢光耦可能会影响通信,当波特率较高时,可能通信异常或失败。

2、利用二极管隔离USB转串口的TXD和MCU的RXD

此法无法隔离PL2303的RXD与单片机的TXD

x

分析:

A、PL2303 TXD高电平时,二极管截止,由于MCU RXD有上拉电阻(内部或外部),所以MCU RXD端也是高电平;

B、PL2303 TXD低电平时,由于MCU RXD有上拉电阻(内部或外部),所以二极管导通,导通后,由于拉电流的存在,RXD被拉低成低电平;

STC的datasheet里也有这个电路

TX

3、利用三极管做隔离

简单的说,就是两级NPN三极管反相。这样的话PL2303的电绝对无法反灌给MCU。

这个方法可以防止USB转串口PL2303的TXD,RXD的反灌,而不仅仅是TXD。

缺点:整套电路电流会变大,因为三极管导通时,会有电流流向地。

217dbb96-15c3-4ae8-89ed-5d870c2898e1

扫描二维码推送至手机访问。

版权声明:本文由鸟的天空发布,如需转载请注明出处。

本文链接:http://www.xjtudll.cn/Exp/430/

标签: 串口单片机
分享给朋友:

“USB转串口 漏电给MCU,如何处理” 的相关文章

IAR Error: Unknown or ambiguous symbol. main解决

IAR Error: Unknown or ambiguous symbol. main解决

网上下载了一个程序(含工程),打开一debug,提示:“Error (col 1): Unknown or ambiguous symbol. main”。经查:设置里没有生成debug information 解决办法: Project->C/C++Compiler-...

Keil优化及如何设置某段代码不优化

Keil优化及如何设置某段代码不优化

Keil默认会对代码进行优化的,如图所示: 一般情况缺省编译优化设置被设定为8级优化,实际最高可设定为9级优化。 1、Dead code elimination 2、Data overlaying 3、Peephole optimization 4、Register variables 5、Com...

再谈无线网络受限——无法获得IP地址

前面曾经写了一篇[无线网络连接受限]的解决办法(http://www.xjtudll.cn/Exp/66/),本次再谈一些这方面的内容。上次无线网络受限导致的结果就是:无线网卡无法获得IP地址,即便信号很好,也一直连不上。上次最后的解决办法是用WEP加密方式,后来在网上看到WPA2-PSK加密方式更...

K3老单插件控制字段显示

K3老单插件控制字段显示

https://www.cnblogs.com/youzhangcai1/p/10685778.html 【问题描述:】 我想在工业单据的插件中锁定单据头字段,但实现不了? 【解决方法:】 For i = 0 To m_BillTransfer.Head.count - 1 &n...

金蝶K/3修改帐套启用期间

不要乱修改 select * from t_SystemProfile where fkey = 'startyear' select * from t_SystemProfile where fkey = 'startperiod' 如果一个帐套已使用,要再修改会计期间个数或启用期间或会计期间开始...

DDS原理

DDS原理

DDS原理框图 假设时钟为2MHz,数据保持寄存器选择N Bit,在时钟驱动下,累加器输出结果S被反馈到累加器输入端B,B和A的数据被累加到S,下一个时钟脉冲又将S反馈到B,再次与A累加到S,下一个时钟脉冲又将S反馈到B,如此循环累加,实现按步进值,按时钟节拍循环累加,使得N Bit数据被徐循...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。