⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 diir.asm

📁 有限长和无限长数字滤波器的设计程序原代码及完整报告
💻 ASM
字号:
    .title   "diir.asm"
     .mmregs
     .global	start
     .def  	start,_c_int00
 N	 .set		16
	    .copy	 "iirin.inc"	;输入信号x(n)数据
 table				;IIR滤波器系数
     .word  63,   0,  -188, 0, 188,  0, -63
		 .word  0, 11675, 0, 9663, 0,  2948
     .data 	 

BN	   .usect	 "BN",N+1
AN	   .usect	 "AN",N+1
INBUF  .usect	"INBUF",256;输入缓冲区在数据区0x2400
OUTPUT .usect "OUTPUT",256;输出缓冲区在数据区0x2600
        .text 
        .asg	AR0,INDEX_P
        .asg	AR2,XN_P
        .asg	AR3,ACOFF_P
        .asg	AR4,YN_P
        .asg	AR5,BCOFF_P	 
_c_int00
         b start 
         nop
         nop
start:		SSBX	FRCT
SSBX 	OVM
SSBX 	SXM 				
STM		#BN+N,AR1			
RPT		#N
MVPD	#table,*AR1-; ;将bi由程序区存放到数据区
STM		#AN+N-1,AR1
RPT		#N-1
MVPD	#table+N+1,*AR1- 	;将ai由程序区存放到数据区
STM		#OUTPUT,AR1
RPTZ	A,#255
STL	    	A,*AR1+  ;输出数据缓冲区清零
STM		#INBUF,AR1
RPT		#255
MVPD	#INPUT,*AR1+	 ;将输入数据由程序区 
STM	#OUTPUT,YN_P 
	 STM	#INBUF,XN_P
		 STM	#N-1,INDEX_P
		 STM	#255,BRC
		 RPTB	 LOOP-1
IIR:	 SUB   A,A
		 STM	#BN,BCOFF_P
		 STM	#AN,ACOFF_P
		 RPT	#N-1	;计算前向通道
		 MAC	*XN_P+,*BCOFF_P+,A 
		 MAC	*XN_P,*BCOFF_P,A		
MAR   *XN_P-0 	;将AR2指针指向x(n-N)     	
		  RPT	 #N-1	;计算反馈通道
		  MAC		*YN_P+,*ACOFF_P+,A
		  STH		A,*YN_P-0	;保存y(n)
LOOP:
EEND B 	EEND
		  .end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -