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

📄 test2.asm

📁 语音信号的fir滤波!!整个dsp的程序!!调试可用!
💻 ASM
字号:

			.title  	"test2.ASM"
			.mmregs 
stack		.usect 		"stack",50
buffer	 	.usect 		"buffer",0x1900
frame	 	.usect 		"frame",1
flag     	.usect 		"flag",1
currbuff  	.usect 		"curbuff",1
xn			.usect 		"xn",80
a0			.usect		"a0",80
			.bss   xi,1
			.bss   y,1
		
			
 			.mmregs 
length      .set 		04FFh
			.global 	buffer,frame,flag,stack
			.global 	currbuff
			.global   xi,y
		
				
   			.def 		_c_int00
  			.ref		_init_5402
			.ref		_init_AD50
			
			.include 	"reg.h"	
			
			.data
table:   .word       -5*32768/10000           ;	H0----H79
        .word       25*32768/10000
        .word       24*32768/10000
        .word       -27*32768/10000
        .word       -55*32768/10000
        .word       8*32768/10000
        .word       88*32768/10000
        .word       39*32768/10000
        .word       -103*32768/10000
        .word       -115*32768/10000
        .word       80*32768/10000
        .word       207*32768/10000
        .word       7*32768/10000
        .word       -286*32768/10000
        .word       -176*32768/10000
        .word       310*32768/10000
        .word       445*32768/10000
        .word       -207*32768/10000
        .word       -873*32768/10000
        .word       -215*32768/10000
        .word       1926*32768/10000
        .word       3915*32768/10000
        .word       3915*32768/10000
        .word       1926*32768/10000
        .word       -215*32768/10000
        .word       -873*32768/10000
        .word       -207*32768/10000
        .word       445*32768/10000
        .word       310*32768/10000
        .word       -176*32768/10000
        .word       -286*32768/10000
        .word       7*32768/10000
        .word       207*32768/10000
        .word       80*32768/10000
        .word       -115*32768/10000
        .word       -103*32768/10000
        .word       39*32768/10000
        .word       88*32768/10000
        .word       8*32768/10000
        .word       -55*32768/10000
        .word       -27*32768/10000            
        .word       24*32768/10000
        .word       25*32768/10000
        .word       -5*32768/10000
        
        
	
    	.text   
_c_int00:     
		RSBX XF        
		RSBX XF
 		SSBX XF 
		SSBX INTM        ;关闭所有可屏蔽中断,INTM=1
		STM #stack+50,SP
		NOP
		NOP
        
		CALL _init_5402   ;初始化C5402
		NOP
		NOP
      
	; ***init McBSP1(C5402有两个MCBSP[1,2])***
		STM SPCR1,MCBSP1_SPSA   ;给出要修改的寄存器
		STM #0000h,MCBSP1_SPSD;0021h  ;修改MCBSP1_SPCR1寄存器的值为0000h

		STM SPCR2,MCBSP1_SPSA
		STM #0000h,MCBSP1_SPSD;0201h  ;修改MCBSP1_SPCR2寄存器的值为0000h

		STM RCR1,MCBSP1_SPSA
		STM #0040h,MCBSP1_SPSD;16bits ;the length of frame is1.1 word per frame,the length of word is 16 bits

		STM RCR2,MCBSP1_SPSA
		STM #0000h,MCBSP1_SPSD

		STM XCR1,MCBSP1_SPSA
		STM #0040h,MCBSP1_SPSD;1 word ,16 bits

		STM XCR2,MCBSP1_SPSA
		STM #0000h,MCBSP1_SPSD

		STM SRGR1,MCBSP1_SPSA
		STM #0000000000000000b,MCBSP1_SPSD

		STM SRGR2,MCBSP1_SPSA
		STM #0000000000000000b,MCBSP1_SPSD

		STM PCR,MCBSP1_SPSA
		STM #000ch,MCBSP1_SPSD   ;发送帧同步信号和发送数据均在下降沿触发
		NOP                      ;接受帧同步信号和发送数据均在上升 沿触发
		NOP 
		
		STM SPCR1,MCBSP1_SPSA  
		STM #0001h,MCBSP1_SPSD;0021h ;接收XRST=1使能
		
		STM SPCR2,MCBSP1_SPSA
		STM #0001h,MCBSP1_SPSD;0201h  发送RRST=1使能
	
		CALL _init_AD50  ;初始化AD50
		NOP
		NOP
		
  ;判断SPCR1中RRDY是否为1(接收是否准备好),为1(准备好)就继续执行(接受数据),否则死循环。
	
	    SSBX FRCT
	    STM #a0,AR1
	    RPT #43
	    STM #0,*AR1+
	    STM #xn+43,AR3
	    STM #a0+43,AR4
	    STM #-1,AR0
	    
LOOP:	STM  SPCR1,MCBSP1_SPSA
LOOPR:  BITF *(MCBSP1_SPSD), #0x0002                
        BC LOOPR, NTC
        NOP
        NOP
        
   ;DSP接收数据      
 		LDM MCBSP1_DRR1, A  
 		STL A,*AR3+0%
 		RPTZ A,#43
 		MAC *AR3+0%,*AR4+0%,B
 		STH B,*(y)
        STM #y,AR2
        LD  *AR2,A
 	
 		NOP
 		NOP
  ;判断SPCR2中XRDY是否为1(发送是否准备好),为1(准备好)就继续执行(发送数据),否则死循环。
 		STM SPCR2,MCBSP1_SPSA
L:		BITF *(MCBSP1_SPSD), #0x0002               
        BC L, NTC 
        NOP
        NOP
        
     ;DSP发送数据   
        
 		STLM A, MCBSP1_DXR1  
 		NOP
 		NOP
 		
 		B   LOOP
 		NOP
 		NOP	
 		
 		.END	 

⌨️ 快捷键说明

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