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

📄 key.asm

📁 这是dsp2107上用键盘控制led等的程序
💻 ASM
字号:
;/******************************************************************************/
;/* file name:key.ASM                                                          */
;/*                                                                            */
;/* This is proprietary information, not to be published -- NUAA_306_WORKGUROP */
;/* Copyright (C) 2003, NUAA_306_WORKGROP.  All Rights Reserved.               */
;/*                                                                            */
;/* Author: Jianbo.CHU                                                         */
;/* Date: June,22, 2003                                                         */
;/*                                                                            */
;/* This code is FOR ALL TMS320LF2407                                     */
;/*                                                                            */
;/*                                                                            */
;/******************************************************************************/

						.include  	"F2407REGS.H" 		;引用头部文件
						.def      	_c_int0
;(1)建立中断向量表
						.sect	".vectors"					;定义主向量段	
RSVECT			B    _c_int0				;PM 0	复位向量1
INT1	  		B    GISR1					;PM 2	中断优先级 14
INT2	  		B    PHANTOM				;PM 4	中断优先级2	5
INT3	  		B    PHANTOM				;PM 6	中断优先级 36
INT4	  		B    PHANTOM				;PM 8	中断优先级 47
INT5	  		B    GISR5					;PM A	中断优先级 58
INT6	  		B    PHANTOM				;PM C	中断优先级 69
RESERVED  		B    PHANTOM				;PM E	 (保留位)10
SW_INT8   		B    PHANTOM				;PM 10  	 用户定义软件中断		-

INT9	  		B    PHANTOM
INT10	  		B    PHANTOM
INT11	  		B    PHANTOM
INT12	  		B    PHANTOM
INT13	  		B    PHANTOM
INT14	  		B    PHANTOM
INT15	  		B    PHANTOM
INT16	  		B    PHANTOM
INT17	  		B    PHANTOM
INT18	  		B    PHANTOM
INT19	  		B    PHANTOM
INT20	  		B    PHANTOM
INT21	  		B    PHANTOM
INT22	  		B    PHANTOM
INT23	  		B    PHANTOM
INT24	  		B    PHANTOM
INT25	  		B    PHANTOM
INT26	  		B    PHANTOM
INT27	  		B    PHANTOM
INT28	  		B    PHANTOM
INT29	  		B    PHANTOM
INT30	  		B    PHANTOM		
SW_INT31  		B    PHANTOM				;PM 3E  	用户定义软件中断	 	-
;中断子向量入口定义pvecs
			.sect	".pvecs"					;定义子向量段
PVECTORS	B	PHANTOM				;保留向量地址偏移量0000h 
		
			.space 80h*16  		
			B	PHANTOM				;保留向量地址偏移量0040h  CAN接收中断
			B	PHANTOM				;保留向量地址偏移量0041h
;(2)主程序
					.text
_c_int0             clrc xf
					CALL	SYSINIT 					;系统初始化程序				
				    CALL    IOPE_INIT
				    LAR AR6,#60H 
				    CLRC INTM
				
WAIT:				;MAR *,AR6
					;IN *,0100H
					;LACC *
					;AND #00FH ;
					;SACL *+
					CLRC XF 
					NOP
                    CALL DELAY                                         
                    SETC XF
                    CALL DELAY
					B	 WAIT
;(3)系统初始化程序
SYSINIT:
					SETC 	INTM
			    	CLRC 	SXM
			       	CLRC 	OVM
					CLRC 	CNF
					LDP 	#0E0H
		            SPLK	#86FEH,SCSR1	;CLKIN=10M,CLKOUT=10M			       
			        SPLK	#0E8h,WDCR	
				    LDP		#0
					SPLK	#01h,IMR		; 
					SPLK	#0FFFFh,IFR
					LDP     #XINT1CR>>7
					SPLK    #8001H,XINT1CR        ;priority 
					
					NOP				;清中断标志
			        RET

 ;中断允许 , LVC245缓冲允许
IOPE_INIT:		    LDP #MCRC>>7 ;IOPE7为output low 
					LACL MCRC
					AND #0FF7FH
					SACL MCRC
					LACL PEDATDIR
					OR #8000H
					AND #0FF7FH
					SACL PEDATDIR
					RET


;(4)CAN初始化程序
DELAY:              LAR AR0,#9000H
					MAR *,AR0
DELAY1:             NOP 
                    NOP       
                    NOP
					BANZ DELAY1       
						;清全部中断标志
					RET
;(5)中断程序
GISR1:				SETC INTM
					MAR *,AR6
					IN *,0100H
					LACC *
					AND #00FH ;
					SACL *+
					
					RPT #100        ;priority 
					NOP
					RPT #100
					NOP
					MAR *,AR0
					LDP #0
					SPLK #01H,IFR
					LDP  #XINT1CR>>7
					SPLK #8001H,XINT1CR
					CLRC INTM
					RET




GISR5:								;优先级INT5中断人口
				
					CLRC	INTM	;开总中断,因为一进中断就自动关闭总中断
					RET	
;(6)假中断程序
PHANTOM 	
KICK_DOG						;复位看门狗
					RET
					END

⌨️ 快捷键说明

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