* Optocoupler vs K-Line: CTR grade sweep at 510 ohm + R2=100 * Tests all PC817 grades with aggressive R2 at K-line impedance * PC817 pin order: 1=Anode, 2=Cathode, 3=Collector, 4=Emitter .param CTRgain 1m V_BAT V12 0 12 V_MCU VCC 0 3.3 * === TX Test Signal at 10400 baud === V_TX TX 0 PWL( + 0u 0 + 99u 0 + 100u 3.3 + 292u 3.3 + 292.5u 0 + 580u 0 + 580.5u 3.3 + 772u 3.3 + 772.5u 0 + 1500u 0) * === K-Line: 510 ohm pull-up === R_PULL V12 KLINE 510 C_BUS KLINE 0 100p * === TX Driver === R5 TX R5_R3 470 R3 R5_R3 Q1B 10k Q1 Q1C Q1B 0 BC547B * === TX Optocoupler (R2=100 for maximum LED current) === R2 VCC U2_A 100 XU2 U2_A Q1C KLINE 0 PC817 Igain={CTRgain} * === RX Optocoupler on same K-Line === R1_RX KLINE U1_A 2k XU1 U1_A 0 VCC RX PC817 Igain={CTRgain} R4_RX RX 0 1k * === PC817 Subcircuit === .subckt PC817 1 2 3 4 R1 N003 2 2 D1 1 N003 LD G1 3 N004 N003 2 {Igain} C1 1 2 18p Q1 3 N004 4 [4] NP .model LD D(Is=1e-20 Cjo=18p) .model NP NPN(Bf=1200 Vaf=140 Ikf=100m Rc=1 Cjc=19p Cje=7p Cjs=7p C2=3e-15) .ends PC817 * === BC547B Model === .model BC547B NPN(IS=2.39E-14 NF=1.008 ISE=3.545E-15 NE=1.541 BF=294.3 IKF=0.1357 VAF=63.2 NR=1.004 ISC=6.272E-14 NC=1.243 BR=7.946 IKR=0.1144 VAR=25.9 RB=1 IRB=1.00E-06 RBM=1 RE=0.4683 RC=0.85 XTB=0 EG=1.11 XTI=3 CJE=1.358E-11 VJE=0.65 MJE=0.3279 TF=4.391E-10 XTF=120 VTF=2.643 ITF=0.7495 PTF=0 CJC=3.728E-12 VJC=0.3997 MJC=0.2955 XCJC=0.6193 TR=1.00E-32 CJS=0 VJS=0.75 MJS=0.333 FC=0.9579 Vceo=45 Icrating=100m mfg=NXP) .step param CTRgain list 0.5m 1.0m 1.5m 2.3m 3.4m .tran 0 1500u 0 0.1u .meas tran KLINE_HIGH MAX V(KLINE) .meas tran KLINE_LOW MIN V(KLINE) .meas tran LED_CURRENT MAX I(R2) .meas tran RX_HIGH MAX V(RX) .meas tran RX_LOW MIN V(RX) .backanno .end