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

📄 d5608.asm

📁 dsp5402编写的da转换程序
💻 ASM
字号:
		.mmregs
		.def  _c_int00
        .data
TEMP	.usect	"TEMP", 10h  
flag	.usect  "vars",1 
cout	.usect  "vars",1 	
                       ;
DK_SPCR10 .set 0000000000000000b
DK_SPCR20 .set 0000000011100001b 
DK_RCR10  .set 0000000001000000b;1 fax 1 word,1 word 16 bit
DK_RCR20  .set 0000000001000000b;
DK_XCR10  .set 0000000001000000b 
DK_XCR20  .set 0000000001000000b 
DK_SRGR10 .set 0000111000000100b
DK_SRGR20 .set 0011000000001111b
                      ;       ;
DK_PCR0   .set 0000101000001100b 
           
SPSA0	.set 38h
McBSP0	.set 39h
DXR10   .set 23h
DXR20	.set 22h
DRR10   .set 21h
DRR20   .set 20h 

TMP		.set 6Ah 
 
SPCR10  .set 00h 
SPCR20  .set 01h
RCR10   .set 02h
RCR20   .set 03h
XCR10   .set 04h
XCR20   .set 05h
PCR0    .set 0Eh
SRGR10  .set 06h
SRGR20  .set 07h

BOS			.usect	"stack",0Fh
TOS			.usect	"stack",1   
		.text
_c_int00
		b start
		nop
		nop
NMI		rete
		nop
		nop
		nop
SINT17	.space 4*16
SINT18	.space 4*16
SINT19	.space 4*16
SINT20	.space 4*16
SINT21	.space 4*16
SINT22	.space 4*16
SINT23	.space 4*16
SINT24	.space 4*16
SINT25	.space 4*16
SINT26	.space 4*16
SINT27	.space 4*16
SINT28	.space 4*16
SINT29	.space 4*16
SINT30	.space 4*16
INT0	rete
		nop
		nop
		nop
INT1	rete
		nop
		nop
		nop
INT2	rete
		nop
		nop
		nop
TINT:	rete
		nop
		nop
		nop
RINT0:	rete
		nop
		nop
		nop
XINT0:	B		XT
		nop
		nop 
SINT6	.space 4*16
SINT7	.space 4*16
INT3:	rete
		nop
		nop
		nop  
HPINT:	rete
		nop
		nop
		nop  
RINT1:	rete
		nop
		nop
		nop
XINT1:	rete
		nop
		nop
		nop
;*************************
start	LD 		#0,DP
		STM		#TOS,SP
		STM 	#4007H,CLKMD
		STM 	#1020h,PMST
		ST		#1000,*(cout)
        ST		#0,TMP    
        ST		#0,*(flag)
        CALL	DACBSP
        
        STM		#3FFFH,IFR
        SSBX	INTM		
		STM		#0020H,IMR			;ENABLE TINT0 INTERRUPT 
		RSBX	INTM
		
;*************************				
WAIT:	NOP
		NOP 
		B 		WAIT   
;*************************        
XT:    	STLM	A,DXR10
		LD		*(cout),A
		ADD	 	#-0FH,A 
		STL		A,*(cout)
		BC		XT0,ANEQ
		ST		#03FFH,*(cout)
XT0:	AND		#0FFCH,A		
        CMPM	*(flag),#0
        BC		XT1,NTC
        OR		#0000H,A 
		ST		#1,*(flag)
		B		XT8	    			
XT1:	CMPM	*(flag),#1
		BC		XT2,NTC
		OR		#1000H,A
		ST		#2,*(flag)
		B		XT8 
XT2:	CMPM	*(flag),#2
		BC		XT3,NTC
		OR		#2000H,A
		ST		#3,*(flag)
		B		XT8 
XT3:	CMPM	*(flag),#3
		BC		XT4,NTC
		OR		#3000H,A
		ST		#4,*(flag)
		B		XT8 
XT4:	CMPM	*(flag),#4
		BC		XT5,NTC
		OR		#4000H,A
		ST		#5,*(flag)
		B		XT8 
XT5:	CMPM	*(flag),#5
		BC		XT6,NTC
		OR		#5000H,A
		ST		#6,*(flag)
		B		XT8 
XT6:	CMPM	*(flag),#6
		BC		XT7,NTC
		OR		#6000H,A
		ST		#7,*(flag)
		B		XT8 
XT7:	CMPM	*(flag),#7
		BC		XT8,NTC
		OR		#7000H,A
		ST		#0,*(flag)

		NOP
		RSBX	XF           ;DAC  OUT
		NOP
		nop
		nop
		SSBX	XF

XT8:	RETE  
;**********************
DACBSP:	STM 	#SPCR10,SPSA0  
		STM 	#0000h,McBSP0  		;RESET R
		NOP
		NOP
		
		STM 	#SPCR20,SPSA0  
		STM 	#0000h,McBSP0  		;RESET X	
		NOP
		NOP
				
		STM 	#SPCR10,SPSA0
		STM 	#DK_SPCR10,McBSP0    ;ENBLE R
		NOP
		NOP
		
		STM 	#SPCR20,SPSA0
		STM 	#DK_SPCR20,McBSP0    ;ENBLE X
		NOP
		NOP
		  
		STM 	#RCR10,SPSA0
		STM 	#DK_RCR10,McBSP0 
		NOP
		NOP   
		
		STM 	#XCR10,SPSA0
		STM 	#DK_XCR10,McBSP0
		NOP
		NOP
		
		STM 	#PCR0,SPSA0
		STM 	#DK_PCR0,McBSP0
		NOP
		NOP
	    
	    STM		SRGR10,SPSA0
	    STM		#DK_SRGR10,McBSP0
	    NOP
		NOP
		
		STM		SRGR20,SPSA0
	    STM		#DK_SRGR20,McBSP0
	    NOP
		NOP 
		
		STM 	#RCR20,SPSA0
		STM 	#DK_RCR20,McBSP0 
		NOP
		NOP 
		
		STM 	#XCR20,SPSA0
		STM 	#DK_XCR20,McBSP0
		NOP
		NOP  
		RET
;*********************************		
		.end


⌨️ 快捷键说明

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