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

📄 ledopt.asm

📁 dsp tmslf2407a 汇编,c的原代码,包括i2c,scitimer,fir等的很多程序.
💻 ASM
字号:
	 .copy  "LF2407.h"		    
     .copy  "llasm.asm"
     
	 .def   _LedOptOut
	 .def   _delay104us    ;for sim serial  
	 .def   _delay52us     ;for sim serial 
	 .def   _delay26us     ;for sim serial
	 .def   _delay34us    ;for sim serial
	 .def   _delay17us     ;for sim serial	 
;	 .def   _Delay_150_Nano_Seconds  ;for flash
	 .def   _Delay_100_Milli_Seconds 	;for cpu rest delay
	 .def   _mutiBlockWrDelay
	 .def   _rfDelay20ms 

	 .ref  _ledVlu                   ;for led and opt    
SAVE_AR11  .set    2f0H         

;;;;;;;;;;;;;;;;;;;;;;;;;  
_LedOptOut: 
	POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11
;---------------------
	LDP     #DP_PF2
    LACL    PCDATDIR
    OR      #4040H      ;CLR设置为1 
	SACL 	PCDATDIR
;---------------------      	
    LACL	PDDATDIR
    AND	#0FFFEH 
    SACL	PDDATDIR;CLK设置为0       	
;---------------------        
    RPT     #80
    NOP    
    LAR     AR2,#_ledVlu
    MAR     *,AR2
    LACL    * 
    LDP     #100H
    SACL    8001H
    NOP
    NOP           
;----------------------       
	LDP 	#DP_PF2
	LACL    PDDATDIR
	OR	#0001H   ;CLK设置为1 
	SACL	PDDATDIR 
;----------------------
    ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret                     
;;;;;;;;;;;;;;;;;;;;;;;;;
_delay104us: 
	POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11
	
	ldp #0 
	;splk #4158,60h 
	splk #4125,60h	
	rpt 60h
	nop 
	
	ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;   
_delay52us: 
	POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11

	ldp #0 
	;splk #2078,60h 
	splk #2043,60h	
	rpt 60h
	nop 
	
	ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 	
	ret  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
_delay26us: 
	POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11


	ldp #0 
	;splk #1038,60h 
	splk #1005,60h	
	rpt 60h
	nop   
	
	ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret  
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;_Delay_150_Nano_Seconds:              
;	rpt #5
;	nop
;	ret
;;;;;;;;;;;;;;;;;;;;;;;;;
_delay34us:  
   	POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11

	ldp #0 
	;splk #1385,60h 
	splk #1352,60h 	
	rpt 60h
	nop   
	
	ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret
;;;;;;;;;;;;;;;;;;;;;;;;;
_delay17us:    
	POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11

	ldp #0 
	;splk #691,60h 	
	splk #658,60h 
	rpt 60h
	nop   
	
	ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret
;;;;;;;;;;;;;;;;;;;;;;;;;;
_Delay_100_Milli_Seconds:     
    POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11
;------------------------                
    ldp #0 
	splk #0ffffh,60h ;1.6384ms
	lar ar2,#59      ;(1.6384+0.050)ms*60 = 100ms
	mar *,ar2
loop2:	
	rpt 60h
	nop	
	banz loop2  ;ar0!=0 to loop2,ar0=(ar0)-1	
;------------------------------
    ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
_mutiBlockWrDelay:
    POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11
;---------------------------    	
	LAR	AR2,#1538	;10ms	   
dd: RPT	#0FFH
    NOP
    MAR	*,AR2
    BANZ	dd   
;------------------------------    
    ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
_rfDelay20ms:    
    POPD         *+           
    SAR          AR0,*+  
    SAR          AR2,*+ 
    SAR          AR3,*+
    SAR          AR4,*+  
    SAR          AR5,*+
    SAR          AR6,*+
    SAR          AR7,*+  
    SAR          AR1,*              
    ldp          #5h
    SAR          AR1,SAVE_AR11
;------------------------------    	
	LAR	AR2,#3076	;20ms	   
dd15ms: 
	RPT	#0FFH
    NOP
    MAR	*,AR2
    BANZ	dd15ms
;------------------------------       
    ldp          #5h
	LAR          AR1,SAVE_AR11
    MAR          *,AR1   
    SBRK         #01H
    LAR          AR7,*-  
    LAR          AR6,*-   
    LAR          AR5,*-  
    LAR          AR4,*-
    LAR          AR3,*-
    LAR          AR2,*- 
    LAR          AR0,*-    
    PSHD         * 
	ret  	
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

⌨️ 快捷键说明

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