普通光耦做高速通信隔离
最近在做多机通信,两个芯片之间的电源需要相互独立,所以通信需要做隔离,手头没有高速光耦,又加上经济问题不舍得买,考虑拿普通光耦来做隔离,问题来了,如图1-1,一般pc817,tlp521开关速度超过10KHz 信号衰减就很明显了。
图1-1
所以大部分时候按照图1-2的电路来做通信隔离,5v 电源时R4选3K 通信速度最快,这个时候实际5v 单片机串口通信速度能够达到14400bps ,当然,在3v 供电的情况下,可以减小R4到2K 。但是这个电路有个明显的缺点,突破了TLP 的速度极限后,通信波形会失真,所以串口通信的误差会很大,导致通信误码率上升。
图1-2
在实际应用中,如果是硬件串口,测试使用9600bps ,通信是正常的,但是超过9600后,通信效果随单片机的型号存在差异。
如果更高的通信速率,那么通常情况下就需要选择高速光耦,像6N138就能达到100Kbit/S,还有更高速度的光耦,但是价格也是翻好几倍。自己玩的话一是成本高,主要的是一般不会常备,所以我们就需要找替代的器件,刚开始我选择用红外对管做,但是效果是一样的,后来改了思路,能不能借鉴高速光耦的内部结构呢?
答案是肯定的,如图1-3,为高速光耦6n138内部结构图。
图1-3 于是根据该电路就有了如图1-4的电路。
图1-4
测试结果表明。该电路在115200bps 波特率下,通信正常。串口助手发送几百行数字,没有发现误码。在9600bps 波特率下,与单片机通信了一下午,没有发现异常,但是不保证长期的稳定性,同样,产品的话不好说行不行,测试使用该电路可以,还有那些像我一样的穷孩子。
普通光耦做高速通信隔离
最近在做多机通信,两个芯片之间的电源需要相互独立,所以通信需要做隔离,手头没有高速光耦,又加上经济问题不舍得买,考虑拿普通光耦来做隔离,问题来了,如图1-1,一般pc817,tlp521开关速度超过10KHz 信号衰减就很明显了。
图1-1
所以大部分时候按照图1-2的电路来做通信隔离,5v 电源时R4选3K 通信速度最快,这个时候实际5v 单片机串口通信速度能够达到14400bps ,当然,在3v 供电的情况下,可以减小R4到2K 。但是这个电路有个明显的缺点,突破了TLP 的速度极限后,通信波形会失真,所以串口通信的误差会很大,导致通信误码率上升。
图1-2
在实际应用中,如果是硬件串口,测试使用9600bps ,通信是正常的,但是超过9600后,通信效果随单片机的型号存在差异。
如果更高的通信速率,那么通常情况下就需要选择高速光耦,像6N138就能达到100Kbit/S,还有更高速度的光耦,但是价格也是翻好几倍。自己玩的话一是成本高,主要的是一般不会常备,所以我们就需要找替代的器件,刚开始我选择用红外对管做,但是效果是一样的,后来改了思路,能不能借鉴高速光耦的内部结构呢?
答案是肯定的,如图1-3,为高速光耦6n138内部结构图。
图1-3 于是根据该电路就有了如图1-4的电路。
图1-4
测试结果表明。该电路在115200bps 波特率下,通信正常。串口助手发送几百行数字,没有发现误码。在9600bps 波特率下,与单片机通信了一下午,没有发现异常,但是不保证长期的稳定性,同样,产品的话不好说行不行,测试使用该电路可以,还有那些像我一样的穷孩子。