[Diplexers] ' Converted From Old Magazine Article 1982-2005 Bill Yotter MAINWIN 44 36:CLS:PI=asn(1)*2:DIM TABLE(7):PRINT PRINT" Multi Order L/C Diplexer Filter":PRINT PRINT" Chebishev Filter Configurations" PRINT" Maximum Ripple =< 0.1 dB" PRINT" Reflection => -40 dB":PRINT PRINT" 1. Low & High Pass" INPUT" 2. Band Pass & Stop ? ";A INPUT" Order 3, 5, or 7 ? ";ORDER IF NOT((ORDER=3 OR ORDER=5 OR ORDER=7) AND (A=1 OR A=2)) THEN [Diplexers] INPUT" Impedance (3 loads) ? ";Z IF ORDER=3 THEN TABLE(1)=1.5133:TABLE(2)=1.509:TABLE(3)=.7164 IF ORDER=5 THEN TABLE(1)=1.561:TABLE(2)=1.8069:TABLE(3)=1.7659:TABLE(4)=1.4173:TABLE(5)=.6507 IF ORDER=7 THEN TABLE(1)=1.5748:TABLE(2)=1.8577:TABLE(3)=1.921:TABLE(4)=1.827:TABLE(5)=1.734:TABLE(6)=1.3786:TABLE(7)=(.6307) IF A=1 THEN GOSUB [LPandHP] ELSE GOSUB [BPandBS] PRINT :X$=INPUT$(1):GOTO [Diplexers] [LPandHP] INPUT" Cutoff frequency ? ";FC WC=2*PI*FC PRINT:PRINT" *** Low Pass [Ls-Cp etc.] ***": PRINT FOR N=1 TO ORDER STEP 2 TEST=TABLE(N)*Z/WC ' L(N) GOSUB [EngNote] LIN$=" L"+STR$(N)+TEST$ IF N=ORDER THEN [LPloop] TEST=TABLE(N+1)/(Z*WC) GOSUB [EngNote] LIN$=LIN$+" C"+STR$(N+1)+TEST$ [LPloop] PRINT LIN$ NEXT N PRINT:PRINT" *** High Pass [Cs-Lp etc.] ***": PRINT FOR N=1 TO ORDER STEP 2 TEST=1/(TABLE(N)*WC*Z) GOSUB [EngNote] LIN$=" C"+STR$(N)+TEST$ IF N=ORDER THEN [HPloop] TEST=Z/(WC*TABLE(N+1)) GOSUB [EngNote] LIN$=LIN$+" L"+STR$(N+1)+TEST$ [HPloop] PRINT LIN$ NEXT N RETURN [BPandBS] INPUT" Low frequency ? ";F1 W1=2*PI*F1 INPUT" High frequency ? ";F2 W2=2*PI*F2 PRINT:PRINT" *** Band Pass Section *** con/res": PRINT FOR N=1 TO ORDER STEP 2 TEST=(F2-F1)/(W1*F2*Z*TABLE(N)) GOSUB [EngNote] LIN$=" C"+STR$(N)+TEST$ TEST=Z*TABLE(N)/(W2-W1) GOSUB [EngNote] LIN$=LIN$+" L"+STR$(N)+TEST$+" S & S" PRINT LIN$ IF N=ORDER THEN [BPloop] TEST=TABLE(N+1)/((W2-W1)*Z) GOSUB [EngNote] LIN$=" C"+STR$(N+1)+TEST$ TEST=Z*(F2-F1)/(W1*F2*TABLE(N+1)) GOSUB [EngNote] LIN$=LIN$+" L"+STR$(N+1)+TEST$+" P & P" PRINT LIN$ [BPloop] NEXT N PRINT:PRINT" *** Band Stop Section *** con/res": PRINT FOR N=1 TO ORDER STEP 2 TEST=1/(TABLE(N)*(W2-W1)*Z) GOSUB [EngNote] LIN$=" C"+STR$(N)+TEST$ TEST=(F2-F1)*TABLE(N)*Z/(W2*F1) GOSUB [EngNote] LIN$=LIN$+" L"+STR$(N)+TEST$+" S & P" PRINT LIN$ IF N=ORDER THEN [BSloop] TEST=TABLE(N+1)*(F2-F1)/(W2*F1*Z) GOSUB [EngNote] LIN$=" C"+STR$(N+1)+TEST$ TEST=Z/(TABLE(N+1)*(W2-W1)) GOSUB [EngNote] LIN$=LIN$+" L"+STR$(N+1)+TEST$+" P & S" PRINT LIN$ [BSloop] NEXT N RETURN [EngNote] I=0 WHILE TEST<=1 AND I<5 TEST=TEST*1000 I=I+1 WEND IF I=0 THEN [NoEng] DENOM$="munpf" TEST$="= "+LEFT$(STR$(TEST),7)+MID$(DENOM$,I,1)+" " RETURN [NoEng] TEST$="= "+LEFT$(STR$(TEST),7)+"? " RETURN