Приведу выдержки:
Код
**************************************************
* Running this filter takes 113 cycles
**************************************************
;*****************************************************
; New simpler filter at following specification
; Freq_Stop: 2.5KHz, Attenuation_Stop: 40dB
; Freq_Pass: 1.4KHz, Attenuation_Pass: 1dB
; Order of filter = 5
;*****************************************************
filters:
bis #INTERRUPT_TOGGLE,global_status
mov #WDF_PARMS,mem_ptr
.word 4f16h
.word 0000h
.word 498fh
.word 0000h
.word 4f17h
.word 0008h
.word 8607h
.word 4708h
.word 1108h
.word 4806h
.word 1108h
.word 1108h
.word 1108h
.word 1108h
.word 1108h
.word 8806h
.word 8f16h
.word 0008h
.word 4f9fh
.word 0006h
.word 0008h
.word 468fh
.word 0006h
.word 8706h
.word 4f17h
.word 0004h
.word 8907h
.word 4708h
.word 1108h
.word 1108h
.word 1108h
.word 4809h
.word 1108h
.word 1108h
.word 1108h
.word 8809h
.word 5f19h
.word 0004h
.word 8907h
.word 4f9fh
.word 0002h
.word 0004h
.word 478fh
.word 0002h
.word 8906h
mov R6,bit_data
;**************************************************************
; Low pass filter output stored in R6
; R6 get turned into a analogue value after some hard limiting
;**************************************************************
add #80h,R6
tst R6
jge non_negative
mov #0,R6
non_negative
cmp #0ffh,R6
jlo non_ceiling
mov #0ffh,R6
non_ceiling
mov.b R6,&P0OUT
exit_D_A
reti
* Running this filter takes 113 cycles
**************************************************
;*****************************************************
; New simpler filter at following specification
; Freq_Stop: 2.5KHz, Attenuation_Stop: 40dB
; Freq_Pass: 1.4KHz, Attenuation_Pass: 1dB
; Order of filter = 5
;*****************************************************
filters:
bis #INTERRUPT_TOGGLE,global_status
mov #WDF_PARMS,mem_ptr
.word 4f16h
.word 0000h
.word 498fh
.word 0000h
.word 4f17h
.word 0008h
.word 8607h
.word 4708h
.word 1108h
.word 4806h
.word 1108h
.word 1108h
.word 1108h
.word 1108h
.word 1108h
.word 8806h
.word 8f16h
.word 0008h
.word 4f9fh
.word 0006h
.word 0008h
.word 468fh
.word 0006h
.word 8706h
.word 4f17h
.word 0004h
.word 8907h
.word 4708h
.word 1108h
.word 1108h
.word 1108h
.word 4809h
.word 1108h
.word 1108h
.word 1108h
.word 8809h
.word 5f19h
.word 0004h
.word 8907h
.word 4f9fh
.word 0002h
.word 0004h
.word 478fh
.word 0002h
.word 8906h
mov R6,bit_data
;**************************************************************
; Low pass filter output stored in R6
; R6 get turned into a analogue value after some hard limiting
;**************************************************************
add #80h,R6
tst R6
jge non_negative
mov #0,R6
non_negative
cmp #0ffh,R6
jlo non_ceiling
mov #0ffh,R6
non_ceiling
mov.b R6,&P0OUT
exit_D_A
reti
Предполагаю что это таблица идущая по тексту программы. Но не вижу к ней обращения. Короче одни вопросы.
Поясните пожалуйста, что автор здесь делает?