home *** CD-ROM | disk | FTP | other *** search
/ HAM Radio 1 / HamRadio.cdr / tech / vdivnet / vdivnet.bas (.txt)
Encoding:
GW-BASIC  |  1985-05-24  |  4.5 KB  |  158 lines

  1. 10  '**************************************************************************
  2. 20  '
  3. 30  '                   1% PRECISION RESISTOR FINDING PROGRAM
  4. 40  '
  5. 50  '
  6. 60  '
  7. 70  '**************************************************************************
  8. 80  '
  9. 90  CLS
  10. 91  GOSUB 1400
  11. 92  LOCATE 1,1
  12. 100  PRINT"*****************************************************"
  13. 110  PRINT:PRINT"     1% PRECISION RESISTOR FINDING PROGRAM"
  14. 120  PRINT:PRINT"*****************************************************"
  15. 130  PRINT:PRINT
  16. 140  PRINT "THIS PROGRAM WILL FIND THE TWO CLOSEST VALUES OF"
  17. 150  PRINT "THE 96 STANDARD 1% RRESISTOR DECADE, TO GENERATE"
  18. 160  PRINT "A SPECCIFIED VOLTAGE ('V3') DETERMINED BY THE"
  19. 170  PRINT "GIVEN STRING VOLTAGE ('V1' &'V2'). IT WILL ASK"
  20. 180  PRINT "YOU FOR THE STRING VOLTAGES, AND WHAT THE"
  21. 190  PRINT "GENERATED (V3) VOLTAGE THAT YOU WISH TO OBTAIN"
  22. 200  PRINT"IS.  IN ALL CASES, V1 SHOULD BE GIVEN AS THE MOST"
  23. 210  PRINT"POSITIVE.  V2 THE MOST NEGATIVE, AND V3 ANYWHERE"
  24. 220  PRINT"BETWEEN THE TWO.  "
  25. 230  PRINT"     R1 AND R2 WILL CONTINUALLY BE DISPLAYED  "
  26. 240  PRINT"DURING THE COURSE OF COMPUTATION, AS THE"
  27. 250  PRINT"TWO CLOSEST VALUES FOUND UP TO THAT TIME.."
  28. 260  PRINT"     R1 IS THE RESISTOR TIED TO THE MOST POSITIVE VOLTAGE,"
  29. 270  PRINT"AND R2 IS THE RESISTOR TIED TO MOST NEGATIVE VOLTAGE."
  30. 280  PRINT:PRINT
  31. 290  INPUT"TYPE <RETURN> TO CONTINUE . . .";BG$
  32. 295  SCREEN 0
  33. 300  FOR J=1 TO 5:PRINT:NEXT J
  34. 310  DIM D(96)
  35. 320  DIM F(96)
  36. 330  INPUT"INPUT V1 (MOST POSITIVE STRING VOLTAGE): ";V1
  37. 340  INPUT"INPUT V2 (POST NEGATIVE STRING VOLTAGE): ";V2
  38. 350  IF V2>=V1 THEN 1310
  39. 360  INPUT"INPUT V3 (DESIRED GENERATED VOLTAGE): ";V3
  40. 370  IF V3=<V2 OR V3>=V1 THEN 1330
  41. 380  X=((V1-V2)-V3+V2)/(V3-V2)
  42. 390  PRINT "RATIO FOR COMPUTATION =";X
  43. 400  ' 'T' IS 1 IF R1>R2;T=2 IF R1<R2
  44. 410  IF X<1 THEN 440
  45. 420  T=1
  46. 430  GOTO 450
  47. 440  T=2
  48. 450  ' T=1 IF R1>R2 : T=2 IF R2>R1
  49. 460  FOR I=1 TO 96
  50. 470  READ D(I)
  51. 480  NEXT I
  52. 490  RESTORE
  53. 500  FOR I=1 TO 96
  54. 510  READ F(I)
  55. 520  NEXT I
  56. 530  R1=1
  57. 540  R2=1
  58. 550  IF X>1 THEN 580
  59. 560  A1=1
  60. 570  GOTO 590
  61. 580  A1=X
  62. 590  FOR I=1 TO 96
  63. 600  IF Y=0 THEN 690
  64. 610  FOR W=1 TO 5:PRINT:NEXT W
  65. 620  PRINT Y "OUT OF 96 COMPUTATIONS DONE: BEST SO FAR ARE:"
  66. 630  M$="*************************************************"
  67. 640  PRINT M$
  68. 650  PRINT  "R1=";R1", & R2=";R2
  69. 660  PRINT "RATIO OF R1/R2="R1/R2 ": : DESIRED RATIO IS "X"."
  70. 670  PRINT M$
  71. 680  PRINT TAB(30);"PLEASE HOLD. . ."
  72. 690  Y =Y+1
  73. 700  FOR M=1 TO 96
  74. 710  IF T=1 THEN 740
  75. 720  Z=F(M)
  76. 730  GOTO 750
  77. 740  Z=D(I)
  78. 750  IF X>9.76 THEN 780
  79. 760  IF X<0.102459 THEN 780
  80. 770  GOTO 870
  81. 780  IF X>976 THEN 860
  82. 790  IF X<0.00102459 THEN 860
  83. 800  Z=10*Z
  84. 810  GOTO 870
  85. 820  IF X>976 THEN 860
  86. 830  IF X<0.00102459 THEN 860
  87. 840  Z=100*Z
  88. 850  GOTO 870
  89. 860  Z=1000*Z
  90. 870  IF T=1 THEN 900
  91. 880  A2=D(I)/Z
  92. 890  GOTO 910
  93. 900  A2=Z/F(M)
  94. 910  A3=ABS (A2-X)
  95. 920  IF A3>A1 THEN 1000
  96. 930  A1=A3
  97. 940  IF T=1 THEN 980
  98. 950  R1=D(I)
  99. 960  R2=Z
  100. 970  GOTO 1000
  101. 980  R1=Z
  102. 990  R2=F(M)
  103. 1000  NEXT M
  104. 1010  NEXT I
  105. 1020  PRINT "DESIRED R1/R2 RATIO WAS ";X
  106. 1030  PRINT"THE BEST THAT I CAN DO FOR YOU WITH"
  107. 1040  PRINT"THE STANDARD 96 1% RESISTER VALUES"
  108. 1050  PRINT"ARE:"
  109. 1060  PRINT"R1=   ";R1" OHMS"
  110. 1070  PRINT"R2=   ";R2" OHMS"
  111. 1080  PRINT"RATIO OF R1/R2 = ";R1/R2
  112. 1090  PRINT"FOR V1="V1 "VOLTS;V2="V2 "VOLTS; &V3="V3" VOLTS."
  113. 1100  PRINT"******************************************************"
  114. 1110  PRINT"*                                                    *"
  115. 1120  PRINT"********* USE R1="R1" OHMS, & R2="R2" OHMS! ********"
  116. 1130  PRINT"*                                                    *"
  117. 1140  PRINT"******************************************************"
  118. 1150  PRINT"RESULTS IF R1=" R1 ", AND IF R2=" R2 "IS:"
  119. 1160  PRINT"V3 WILL BE:   "(((V1-V2)*R2)/(R1+R2))+V2 "VOLTS!!"
  120. 1170  PRINT""
  121. 1180  ' SOUND ROUTINE:  FINISHED CALCLULATIONS
  122. 1190  PRINT"CALCULATIONS COMPLETED. "
  123. 1200  PRINT CHR$(7);:FOR T=1 TO 1000:NEXT:GOTO 1200
  124. 1210  END
  125. 1220  DATA 1.00,1.02,1.05,1.07,1.10,1.13,1.15,1.18,1.21,1.24
  126. 1230  DATA 1.27,1.30,1.33,1.37,1.40,1.43,1.47,1.50,1.54,1.58
  127. 1240  DATA 1.62,1.65,1.69,1.74,1.78,1.82,1.87,1.91,1.96,2.00
  128. 1250  DATA 2.05,2.10,2.15,2.21,2.26,2.32,2.37,2.43,2.49,2.55
  129. 1260  DATA 2.61,2.67,2.74,2.80,2.87,2.94,3.01,3.09,3.16,3.24,3.32
  130. 1270  DATA 3.40,3.48,3.57,3.65,3.74,3.83,3.92,4.02,4.12,4.22,4.32,4.42
  131. 1280  DATA 4.53,4.64,4.75,4.87,4.99,5.11,5.23,5.36,5.49,5.62,5.76,5.90
  132. 1290  DATA 6.04,6.19,6.34,6.49,6.65,6.81,6.98,7.15,7.32,7.50,7.68,7.87
  133. 1300  DATA 8.06,8.25,8.45,8.66,8.87,9.09,9.31,9.53,9.76
  134. 1310  PRINT:PRINT"V1 MUST BE THE MOST POSITIVE VOLTAGE, AND"
  135. 1320  PRINT"V2 MUST BE THE MOST NEGATIVE VOLTAGE!PLEASE RE-INPUT:":PRINT:GOTO 330
  136. 1330  PRINT:PRINT"V3 IS THE DESIRED GENERATED VOLTAGE DETERMINED BY R1 AND R2,"
  137. 1340  PRINT"AND MUST LIE BETWEEN V1 AND V2!"
  138. 1350  PRINT"   PLESASE RE-ENTER DSIRED V3 VOLTAGE:":PRINT:GOTO 330
  139. 1400  SCREEN 2
  140. 1410  CIRCLE (450,5),5
  141. 1420  PSET (450,7.5)
  142. 1430  DRAW "C2;D10;C1;F3;G5;F5;G5;F3;C2;D10"
  143. 1440  CIRCLE (450,52),5
  144. 1450  PSET (450,55)
  145. 1460  DRAW "D10 F3 G5 F5 G5 F4 D 10"
  146. 1470  CIRCLE (450,100),5
  147. 1480  LOCATE 1,60
  148. 1490  PRINT "V1"
  149. 1500  LOCATE 4,60:PRINT "R1"
  150. 1510  LOCATE 10,60:PRINT "R2"
  151. 1520  LOCATE 13,60:PRINT "V2"
  152. 1530  PSET (456,52)
  153. 1540  DRAW "R20"
  154. 1550  CIRCLE (480,52),5
  155. 1560  LOCATE 7,64
  156. 1570  PRINT "V3"
  157. 1580  RETURN
  158.