关于高速光耦6N137的使用总结,如有不对请大家指正哈!
光耦以光信号为媒介来实现电信号的耦合与传递,输入与输出在电气上完全隔离,具有抗干扰性能强的特点。对于既包括弱电控制部分,又包括强电控制部分的工业应用测控系统,采用光耦隔离可以很好地实现弱电和强电的隔离,达到抗干扰目的。(来自网络)
此次用6N137高速光耦来对USART和CAN进行光耦隔离。stm32的CAN波特率最高可达1Mbits/s,stm32的USART波特率最高可达4.5Mbits/s,6N137高速光耦的转换速率高达10Mbits/s,所以6N137可以用来对USART和CAN进行光耦隔离。
1光耦的工作原理(拿FAIRCHILD的高速光耦6N137为例):

T-1
图T-1显示,信号从脚2和脚3输入,发光二极管发光,经片内光通道传到光敏二极管,反向偏置的光敏管光照后导通,经电流--电压转换后送到与门的一个输入端,与门的另一个输入为使能端,当使能端为高时与门输出高电平,经输出三极管反向后光电隔离器输出低电平。当输入信号电流小于触发阈值或使能端为低时,输出高电平,但这个逻辑高是集电极开路的,可针对接收电路加上拉电阻或电压调整电路。(来自网络,简而言之就是发光二极管发光——光敏二极管导通——三极管导通——Vo被拉低,即输出低电平;反之输出高电平)

T-2
看T-2,通过电路的真值表可以看出,使能脚不置低时:发光二极管发光,Vo输出为低电平;发光二极管不发光,Vo输出为高电平。
2实际应用电路为:

T-3
<ignore_js_op>
T-4
1)8-VCC:如上表T-4,芯片的供电电压在4.5-5.5V之间,这个需要注意一下,之前没注意直接接了3.3V,结果电路不好用。
2)7-VE:如上表T-4,VEH的电压在2.0-Vcc之间。R2=10K即可。

T-5

T-6
3)2脚输入高电平,当3脚输入高电平时,发光二极管不发光,光敏二极管不导通,即6脚为高电平。
2脚输入高电平,当3脚输入低电平时,发光二极管发光,光敏二极管导通,经输出三极管反向后光电隔离器输出低电平。即6脚为低电平。
由T-6可知,当IF>3mA时,发光二极管导通,单通道光耦IF最大值为50mA;当IF<1mA时,发光二极管截止。
由T-5可知,二极管的压降VF在1.4V左右;R1=(VCC1-VF)/IF;
4)C1根据数据手册的参考电路,可取0.1uF。5)RL可取330R—4K。
3在本板上应用电路为:

USART1光耦隔离电源隔离原理图
两个高速光耦一个用来对输入信号进行隔离,一个用来对输出信号隔离;B0505S用来进行电源隔离。一定要进行电源隔离,不然不能完全的将电路和外部电路隔离。
1)由1.2节可知,8-VCC在4.5-5.5V之间,+5V_POWER2=VCC5V=5V。
2)由1.2节可知,7-VE的电压VEH在2.0-Vcc之间,所以通过一个10K电阻直接链接到VCC上。
3)由1.2节可知,R1=(VCC1-VF)/ IF; 50mA>IF>3mA发光二极管导通。所以(3.3-1.4)V/ 50mA<R11<(3.3-1.4)V/ 3mA,即38R<R11<630R。所以本项目中R11取390R。所以(5-1.4)V/ 50mA<R22<(5-1.4)V/ 3mA,即72R<R11<1.2K。所以本项目中R22取1K。
4) C1根据数据手册的参考电路,可取0.1uF。即C17、C18取0.1uF.
5) RL可取330R—4K。即R29、R30取330R。以下参数同理可得。

USART2光耦隔离电源隔离原理图

CAN光耦隔离电源隔离原理图
3所遇问题:
3.1光耦供电电压在4.5-5.5V之间,开始时接了3.3V,导致电路不工作,需注意。
3.2因为光耦隔离了stm32和TJA1050,所以TJA1050的供电电压应是隔离之后的电压。开始时没有考虑到电源隔离的问题,导致电路隔离不彻底,需注意。
3.2光耦中输入电阻R1,R2,C1,RL的值要根据数据手册上来,尤其是R1的计算。之间没有计算对,导致光耦不导通火光耦一直导通,需注意。