10 REM INVAMP.BAS 20 REM WRITTEN BY RUSS KINCAID, 27 NOV 2001 30 REM REVISION 0 100 PRINT"THIS PROGRAM DESIGNS AN INVERTING OP AMP CIRCUIT THAT TRANSFORMS AN INPUT" 110 PRINT"VOLTAGE RANGE TO A SPECIFIED OUTPUT VOLTAGE RANGE. THE CIRCUIT HAS TWO " 120 PRINT"RESISTORS AND A BIAS VOLTAGE." 260 INPUT"WHAT IS THE LOWEST INPUT VOLTAGE";VINMIN 270 INPUT"WHAT IS THE CORRESPONDING OUTPUT VOLTAGE";VOUTMIN 280 INPUT"WHAT IS THE HIGHEST INPUT VOLTAGE";VINMAX 290 INPUT"WHAT IS THE CORRESPONDING OUTPUT VOLTAGE";VOUTMAX 291 GAIN=(VOUTMAX-VOUTMIN)/(VINMAX-VINMIN): REM GAIN IS NEGATIVE 292 IF GAIN>0 THEN PRINT"YOU MUST USE POSAMP.BAS ":GOTO 1100 294 PRINT "THIS IS THE SCHEMATIC:" 296 PRINT" |\" 298 PRINT" BIAS -------|+\" 299 PRINT" | \____________B OUT" 300 PRINT" | / |" 301 PRINT" |---|-/ |" 302 PRINT" | |/ RF" 303 PRINT" | |" 304 PRINT" A IN---RI--------|--------------|" 309 PRINT:PRINT 310 INPUT"WILL YOU CHOOSE RI(1) OR LET THE PROGRAM CHOOSE(2)";C 320 IF C>2 OR C<1 THEN PRINT"ONE OR TWO ONLY PLEASE":GOTO 310 330 IF C=1 THEN 350 340 RI=1E4:GOTO 360 350 INPUT"GIVE THE VALUE OF RI: ",RI 360 RF=-RI*GAIN 370 BIAS=(VOUTMIN-VINMIN*GAIN)/(1-GAIN) 380 PRINT:PRINT"RI=";RI,"RF=";RF,"BIAS V=";BIAS 400 INPUT"HARDCOPY";Y$ 410 IF LEFT$(Y$,1)="Y" OR LEFT$(Y$,1)="y" THEN 490 ELSE END 490 OPEN "PRN" FOR OUTPUT AS #1 494 PRINT#1, DATE$,TIME$ 496 PRINT#1,"THIS CIRCUIT TRANSFORMS ";VINMIN;" TO ";VINMAX;" VOLTS INPUT TO:" 498 PRINT#1, VOUTMIN;" TO ";VOUTMAX;" VOLTS OUTPUT": PRINT#1, 500 PRINT#1,"THIS PROGRAM DESIGNS A NON-INVERTING OP AMP CIRCUIT THAT TRANSFORMS AN INPUT" 510 PRINT#1,"VOLTAGE RANGE TO A SPECIFIED OUTPUT VOLTAGE RANGE. THE CIRCUIT HAS TWO RESISTORS" 520 PRINT#1,"AND A BIAS VOLTAGE. THIS IS THE SCHEMATIC:" 530 PRINT#1," |\" 540 PRINT#1," BIAS-------|+\" 550 PRINT#1," | \____________B OUT" 560 PRINT#1," | / |" 570 PRINT#1," |---|-/ |" 580 PRINT#1," | |/ RF" 590 PRINT#1," | |" 600 PRINT#1," A IN---RI----|--------------|" 680 PRINT#1,:PRINT#1,"RI=";RI,"RF=";RF,"BIAS V=";BIAS 1090 PRINT#1, CHR$(12):CLOSE#1 1100 END