📄 main.asm
字号:
;ZY13DSP12BD Sample A/D
;Mr Li Xiao Bei
;Hu Bei Zhong You
;2004.5.3
;A/D
;======================== main.asm =========================
;
.mmregs
.def _c_int00
.include c54.inc
.ref c54init
.def Get_ADValue
;A/D访问地址
AD_ADDR .set 0x0008
DA_ADDR .set 0x0002
;分配数据存储区
.bss y,1 ;y
xn .usect "xn",80 ;xn
h .usect "h",80 ;h
.sect "progsys"
.align 80h
_c_int00:
STM #0x0f80,SP
CALL c54init;设置相应的采样率来完成实验项目
SSBX FRCT ;小数乘法
RSBX OVM
RSBX SXM
;把x(n)-x(n-79)赋始值0
STM #xn,AR1
RPT #79
ST #0,*AR1+
STM #xn+79,AR3 ;x(n-79)---AR3
STM #table1+79,AR4 ;h(n-79)---AR4 ;修改此处来选择不同的fir参数
STM #80,BK ;循环缓冲区大小80
STM #-1,AR0 ;指针调整值-1
LD #y,DP ;DP指向y所在页
LOOP:
NOP
B LOOP
**********ISR Get AD Value*************
Get_ADValue:
nop
nop
PORTR AD_ADDR,*AR3+0% ;输入数据
nop
nop
RPTZ A,#79 ;进行一次FIR运算
MAC *AR3+0%,*AR4+0%,A;A=(AR3)*(AR4)+A, AR3=AR3+AR0,AR4=AR4+AR0
STH A,@y ;保存计算结果
PORTW @y,DA_ADDR
RETE
;参数表
.align 80h
table1: ;低通 0-0.1fm fm=fs/2
.word -3,-10,-17,-24,-30,-35,-37,-34
.word -26,-10,12,41,74,107,136,156
.word 161,145,105,41,-46,-150,-263,-371
.word -461,-518,-524,-468,-339,-132,151,502
.word 908,1347,1797,2228,2615,2931,3155,3271
.word 3271,3155,2931,2615,2228,1797,1347,908
.word 502,151,-132,-339,-468,-524,-518,-461
.word -371,-263,-150,-46,41,105,145,161
.word 156,136,107,74,41,12,-10,-26
.word -34,-37,-35,-30,-24,-17,-10,-3
;table2: ;高通:0.1-1 fm
; .word 0,7,14,21,28,34,38,38
; .word 32,20,0,-27,-59,-94,-126,-152
; .word -164,-159,-130,-77,0,98,208,321
; .word 423,498,531,507,414,246,0,-319
; .word -699,-1124,-1571,-2013,-2424,-2777,-3048,-3219
; .word 29494,-3219,-3048,-2777,-2424,-2013,-1571,-1124
; .word -699,-319,0,246,414,507,531,498
; .word 423,321,208,98,0,-77,-130,-159
; .word -164,-152,-126,-94,-59,-27,0,20
; .word 32,38,38,34,28,21,14,7
;table3: ;带通: 0.1-0.3fm
; .word -6,-12,0,28,57,66,43,0
; .word -30,-20,23,48,0,-126,-259,-297
; .word -189,0,124,78,-88,-177,0,436
; .word 878,984,616,0,-398,-251,286,590
; .word 0,-1584,-3417,-4238,-3073,0,3708,6220
; .word 6220,3708,0,-3073,-4238,-3417,-1584,0
; .word 590,286,-251,-398,0,616,984,878
; .word 436,0,-177,-88,78,124,0,-189
; .word -297,-259,-126,0,48,23,-20,-30
; .word 0,43,66,57,28,0,-12,-6
.end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -