home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / eepub03 / cap-calc.bas (.txt) < prev    next >
Encoding:
GW-BASIC  |  1986-09-01  |  2.4 KB  |  57 lines

  1. 10  CLS: PRINT "PROGRAM TO CALCULATE MICROSTRIP CAPACITANCE V1.0I (9/1/86)"
  2. 20  PRINT "WRITTEN BY A. KATZ FOR TSC ELECTRONICS PROGRAM SERIES
  3. 30  PRINT "ALL DIMENSIONS ARE IN MILLS OR WAVELENGTHS - USE MS-IBM TO CONV": PI=4*ATN(1)
  4. 32  PRINT: INPUT "MICROSTRIP OR PARALLEL PLATE CAPACITOR (M/PP)"; T$
  5. 34  IF T$="PP" THEN 400 ELSE IF T$<>"M" THEN 32
  6. 40  PRINT: INPUT "ANALYSIS OR SYNTHESIS (ANA/SYN)"; Q$
  7. 50  IF Q$="ANA" THEN 200 ELSE IF Q$<>"SYN" THEN 40
  8. 60  PRINT: INPUT "Z0 OF LINE"; Z0
  9. 70  INPUT "FREQ IN MHz"; F: F=F*1E+06
  10. 80  INPUT "CAP. PICOFARADS"; CP: X=2*PI*F*CP*0*Z0
  11. 90  LM=ATN(X/(1-X*X))/(2*PI): IF LM<0 THEN LM=0.25-LM
  12. 100  LC=LM*Z0/(2*F*0): PRINT
  13. 110  PRINT "XC/Z0="; 1/X; "MUST BE >> 1 FOR GOOD APPROX, SERIES IND IN nHr="; LC
  14. 120  PRINT "LENGTH IN WAVELENGTHS ="; LM
  15. 130  PRINT: INPUT "WANT HARDCOPY (Y/N)"; H$
  16. 140  IF H$<>"Y" THEN 180
  17. 150  LPRINT: LPRINT "LINE Z0 ="; Z0
  18. 160  LPRINT: LPRINT "LENGTH IN WAVELENGTHS ="; LM, "SERIES IND="; LC
  19. 170  LPRINT: LPRINT "CAP. IN PICOFARADS="; CP
  20. 180  INPUT "DO YOU WANT TO TRY OTHER VALUES ( Y OR N)"; Q$
  21. 190  IF Q$="Y" THEN 40 ELSE END
  22. 200  PRINT: INPUT "Z0 OF LINE"; Z0
  23. 210  INPUT "FREQ IN MHz"; F: F=F*1E+06
  24. 220  INPUT "LENGTH IN WAVELENGTHS ="; LM
  25. 230  BC=1/Z0*SIN(2*PI*LM): LC=LM*Z0/(2*F*0): CP=BC/(2*PI*F*0): PRINT
  26. 240  PRINT "CAP PICOFARADS"; CP; " CAP REACTANCE="; 1/BC; " SERIES IND nHr="; LC
  27. 250  PRINT: INPUT "WANT HARDCOPY (Y/N)"; H$
  28. 260  IF H$<>"Y" THEN 300
  29. 270  LPRINT: LPRINT "LINE Z0 ="; Z0
  30. 280  LPRINT: LPRINT "LENGTH IN WAVELENGTHS ="; LM, "SERIES IND="; LC
  31. 290  LPRINT: LPRINT "CAP. IN PICOFARADS ="; CP, "REACTANCE="; 1/BC
  32. 300  INPUT "DO YOU WANT TO TRY OTHER VALUES ( Y OR N)"; Q$
  33. 310  IF Q$="Y" THEN 40 ELSE END
  34. 400  PRINT: INPUT "ANALYSIS OR SYNTHESIS (ANA/SYN)"; Q$
  35. 410  IF Q$="ANA" THEN 500 ELSE IF Q$<>"SYN" THEN 400
  36. 420  PRINT: INPUT "CALCULATE SPACING OR SIDE LENGTH (S/L)"; C$
  37. 421  IF C$<>"S" AND C$<>"L" THEN 420
  38. 422  PRINT: INPUT "CAPACITANCE IN pFd"; CP: CP=CP
  39. 424  INPUT "RELATIVE DIELECTRIC CONSTANT"; E
  40. 430  IF C$="L" THEN INPUT "SPACING IN MILLS"; D: L=SQR(CP*D/(0.000224999*E)):GOTO 450
  41. 440  INPUT "SIDE LENGTH IN MILLS"; L:  A=L^2: D=0.000224999*E*A/CP
  42. 450  PRINT: PRINT "CAP pFd=" CP; " ER=" E; " SPACING=" D; " LENGTH=" L
  43. 460  PRINT: INPUT "WANT HARDCOPY (Y/N)"; H$
  44. 470  IF H$<>"Y" THEN 490
  45. 480  LPRINT: LPRINT "CAP IN pFd=" CP; " ER=" E; " SPACING=" D; " LENGTH=" L
  46. 490  INPUT "DO YOU WANT TO TRY OTHER VALUES ( Y OR N)"; Q$
  47. 495  IF Q$="Y" THEN 32 ELSE END
  48. 500  PRINT: INPUT "RELATIVE DIELECTRIC CONSTANT"; E
  49. 510  INPUT "SPACING IN MILLS"; D
  50. 520  INPUT "SIDE LENGTH IN MILLS"; L:  A=L^2: CP=0.000224999*E*A/D
  51. 530  PRINT: PRINT "CAP pFd=" CP; " ER=" E; " SPACING=" D; " LENGTH=" L
  52. 540  PRINT: INPUT "WANT HARDCOPY (Y/N)"; H$
  53. 550  IF H$<>"Y" THEN 570
  54. 560  LPRINT: LPRINT "CAP pFd=" CP; " ER=" E; " SPACING=" D; " LENGTH=" L
  55. 570  INPUT "DO YOU WANT TO TRY OTHER VALUES ( Y OR N)"; Q$
  56. 580  IF Q$="Y" THEN 32 ELSE END
  57.