B.5 Il programma filter
 

CLS
PRINT "      ***********************************************************************"
PRINT "      * Questo programma produce del codice assembler per la costruzione di *"
PRINT "      * un filtro FIR per il DSP TMS320C31                                                      *"
PRINT "      ***********************************************************************"
PRINT ""
INPUT "Nome del file di output:  "; nn$
OPEN nn$ FOR OUTPUT AS #1

INPUT "Nome del file di input:  "; nn$
OPEN nn$ FOR INPUT AS #2
 

INPUT "Numero di coefficienti del filtro : ", k

;*******************************************
;Riempimento del buffer dei campioni con degli zeri
;*******************************************

FOR j = 1 TO k
IF j = 1 THEN
 cod$ = "last_x       .float    0.0 "
 PRINT #1, cod$
 GOTO 10
 END IF
IF j = k THEN
 cod$ = "first_x      .float    0.0 "
 PRINT #1, cod$
 GOTO 10
 END IF
cod$ = "             .float    0.0 "
PRINT #1, cod$
10 NEXT j

;*******************************************
;Riempimento del buffer dei coefficienti.
;*******************************************

PRINT #1, ""
PRINT #1, ";************************************"
PRINT #1, "; FIR filter coefficients"
PRINT #1, ";************************************"
PRINT #1, ""
       n = 0
    DO WHILE NOT EOF(2)
        LINE INPUT #2, line$  'Legge i coefficienti contenuti nel file prodotto da FDAS. '
         n = n + 1
         coeff$ = "             .float" + "   " + LEFT$(line$, 24)
        IF n = 1 THEN
         coeff$ = "FIR_coef     .float" + "   " + LEFT$(line$, 24)
         GOTO 20
         END IF
20     PRINT #1, coeff$
       LOOP

        PRINT #1, "END_coef"
        CLOSE #1


Home | Precedente | Successivo