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

📄 fir.asm

📁 基于CCS开发的低通滤波器
💻 ASM
字号:
;数字低通滤波器
;fl=1000HZ
;fs=15000Hz
;N=10
 	.mmregs	
 	.global _data_start	;声明全局函数
 	.bss mem,100			;定义变量 mem  存放待计算数据
 	.bss input,100		;input存放输入数据
 	.bss output,100		;output存放输出数据
 	.bss coff,10			;coff 存放滤波器系数
table:  					;滤波器抽头系数表,共10阶       
	.word 0x43,0x5a,0x6e,0x7c,0x84,0x84,0x7c,0x6e,0x5a,0x43
	.text
_data_start:
	STM		#coff,AR4
	RPT 	#9
	MVPD 	table,*AR4+	;将表中系数读入coff所指的内存中
load:   
	
	STM 	#output,AR3	;读入输入数据,在此处加断点、探测点
	STM     #mem,AR6
	STM 	#99,BRC		;设置循环次数,每次输100点
	RPTB 	next-1
loop:	
	MVMM	AR6,AR5		;将AR6的内容传给AR5,既每计算一次,指针向后移一点,取一组新数据
	LD		*AR6+,A		;指针后移
	STM		#coff,AR4 
	LD		#0,A			;A清零
conv:            
	RPT     #9				;计算10点卷积,A+=mem(m)*coff(n-m) 
	MAC		*AR4+,*AR5+,A
   	STH 	A,*AR3+		;将结果存入output
next:
	STM		#mem,AR5	
	STM		#input,AR4
	RPT		#99				;将输入数据前移
	MVDD	*AR4+,*AR5+
	BC		#load,UNC		;无限次循环
	ret
	.end

⌨️ 快捷键说明

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