22.09.2015 Views

of Microprocessors

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

Musical-Applications-of-Microprocessors-2ed-Chamberlin-H-1987

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

428 MUSICAL ApPLICATIONS OF MICROPROCESSORS<br />

1000 REM TABLE NOISE CALCULATE PROGRAM<br />

1001 REM N=NUMBER OF TABLE ENTRIES P=PHASE SHIFT DUE TO TRUNCATION<br />

1010 N=256: P=1/(2*N)<br />

1100 REM GET THE MEAN OF THE IDEAL SAMPLE STREAM AND THE MEAN OF THE<br />

1101 REM DIFFERENCE BETWEEN WEAL AND TABLE LOOKUP SAMPLES<br />

1110 REM M1=MEAN OF IDEAL, M2=MEAN OF DIFFERENCE<br />

1120 M1=0: M2=0: Tl=O<br />

1130 FOR 1=1 TO 1000<br />

1140 Tl=Tl+.314159<br />

1150 IF Tl>=l THEN T1=Tl-l<br />

1160 T=T1<br />

1170 GOSUB 2000<br />

1180 Ml=Ml+S<br />

1190 SI=S<br />

1200 T=(INT(N*T1)/N)+P<br />

1210 GOSUB 2000<br />

1220 M2=M2+(Sl-S)<br />

1300 NEXT I<br />

1310 M1=M1/1000<br />

1320 M2=M2/l000<br />

1330 PRINT "MEAN OF IDEAL SAMPLES = ";M1<br />

1340 PRINT "MEAN OF DIFFERENCE = ";M2<br />

1400 REM GET THE AUDIBLE IDEAL SIGNAL POWER AND AUDIBLE NOISE POWER<br />

1401 REM VI IS SIGNAL POWER V2 IS NOISE POWER<br />

1410 V1=0: V2=0: T1=0<br />

1420 FOR 1=1 TO 1000<br />

1430 T1=T1+.314159<br />

1440 IF T1>=1 THEN T1=T1-1<br />

1450 T=T1<br />

1460 GOSUB 2000<br />

1470 V1=V1t(S-M1)*(S-M1)<br />

1480 Sl=S<br />

1490 T=(INT(N*T1)/N)+P<br />

1500 GOSUB 2000<br />

1510 V2=V2+(((Sl-S)-M2)*((Sl-S)-M2))<br />

1520 NEXT I<br />

1600 REM PRINT RESULTS<br />

1610 PRINT "SIGNAL POWER = ";V1<br />

1620 PRINT "NOISE POWER = ";V2<br />

1630 PRINT "NOISE LEVEL IS ";4.3429*(LOG(V1)-LOG(V2));" DB DOWN."<br />

1999 STOP<br />

2000 REM SIMPLE WAVEFORM SUBROUTINE, INPUT IS T, O

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!