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

📄 colock2.asm

📁 TMS2407开发平台键盘LED试验
💻 ASM
📖 第 1 页 / 共 2 页
字号:
 ;/******************************************************************************/
;press the key and the leds display the key value!
;the key value is from:0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f
;the leds dislay the value as:0,1,2,3,4,5,6,7,8,9,-,E,H,L,NULL                                         */
;/******************************************************************************/
    
     .include  "F2407REGS.H" 		;引用头部文件
     .def      _c_int0
DIN_7219  		.set 02h
LOAD_7219 		.set 04h
CLK_7219  		.set 08h 
;(1)建立中断向量表
			.sect	".vectors"				;定义主向量段
RSVECT		       B    _c_int0				;PM 0	复位向量  			1
INT1	  		B    GISR1			;PM 2	中断优先级1			4
INT2	  		B    GISR2			;PM 4	中断优先级2			5
INT3	  		B    PHANTOM			;PM 6	中断优先级3			6
INT4	  		B    PHANTOM			;PM 8	中断优先级4			7
INT5	  		B    PHANTOM			;PM A	中断优先级5			8
INT6	  		B    PHANTOM			;PM C	中断优先级6			9
RESERVED  	       B    PHANTOM			;PM E	 模拟量输入中断(保留)	10
SW_INT8   	       B    PHANTOM			;PM 10  	用户定义软件中断   		-
  				
SW_INT31  	       B    PHANTOM			;PM 3E  	用户定义软件中断 		-
;中断子向量入口定义pvecs
			.sect	".pvecs"				;定义子向量段
PVECTORS	B	PHANTOM	;0	
			B	XINT1_ISR;2
			B	PHANTOM ;4
			B	PHANTOM	;6	
			B	PHANTOM ;8
			B	PHANTOM ;A
			B	PHANTOM	;C	
			B	PHANTOM ; 
			
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM
			
			B	PHANTOM	;0	
			B	PHANTOM ;2
			B	PHANTOM ;4
			B	PHANTOM	;6	
			B	PHANTOM ;8
			B	PHANTOM ;A
			B	PHANTOM	;C	
			B	PHANTOM ; 
			
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM
			B	PHANTOM
			B	PHANTOM		
			B	PHANTOM				
			B	T1PINT_ISR	 ;

			B	PHANTOM		
			B	PHANTOM		

;(2)主程序
			.text
_c_int0             clrc xf
                    CALL SYSINIT
                    CALL    IOPF_INIT
				    CALL    IOPE_INIT				     
				    LDP #200H>>7
				    SPLK #0CC11H,200H
				    SPLK #0FF00H,201H
				    SPLK #099ffH,202H
				    SPLK #0AA44H,203H
				    SPLK #0BB77H,204H 
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
			        SPLK #0000H,218H
				    SPLK #0000H,219H
				    SPLK #0000H,21AH
				    SPLK #0000H,21BH
                    SPLK #0000H,21CH
	    ;-------------------
		            LAR     AR1,#200H			
                    CALL    WRITE_7219  
                    LAR     AR1,#201H			
                    CALL    WRITE_7219
                    LAR     AR1,#202H			
                    CALL    WRITE_7219
                    LAR     AR1,#203H			
                    CALL    WRITE_7219
                    LAR     AR1,#204h		
                    CALL    WRITE_7219
                    CALL TIMEINIT
                    CALL    DISP0
                                 
WAIT:	             NOP
			B	    WAIT

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
DISP0:        LDP #200H>>7
              SPLK #1100H,210H
		      SPLK #2280H,211H
		      SPLK #3300H,212H 
		      SPLK #4480H,213H
		      SPLK #5500H,214H
		      SPLK #6680H,215H
		      SPLK #7700H,216H
		      SPLK #8800H,217H
                    LAR     AR1,#210h		
                    CALL    WRITE_7219
                    LAR     AR1,#211h		
                    CALL    WRITE_7219
                    LAR     AR1,#212h		
                    CALL    WRITE_7219 
                    LAR     AR1,#213h		
                    CALL    WRITE_7219
                    LAR     AR1,#214h		
                    CALL    WRITE_7219
                    LAR     AR1,#215h		
                    CALL    WRITE_7219
                    LAR     AR1,#216h		
                    CALL    WRITE_7219
                    LAR     AR1,#217h		
                    CALL    WRITE_7219
                    RET

                  ;(3)定时器中断服务程序  
GISR2:						
                                 	;	保护现场
		LDP		#0E0H
		LACC	PIVR,1				;读取外设中断向量寄嫫鳎≒IVR),并左移一位
		ADD		#PVECTORS			;加上外设中断入口地址
		BACC						;跳到相应的中断服务子程序
T1PINT_ISR:			                 ;通用定时器1中断服务程序
       	LDP		#DP_EVA	
		SPLK	#0,T1CNT
              CLRC	INTM
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
              LDP #4
              LACL 18H
              SUB #99H
              BCND SEC1,EQ       ;到加1SECOND
              LACL 18H
              ADD #1
              AND #0FH
              SUB #0AH
              BCND MS01, EQ      ;到加0.1SECOND
              LACL 18H
              ADD #1
              SACL 18H
              AND #0FH
              OR #8800H
              SACL 17H
              LAR     AR1,#217h		
              CALL    WRITE_7219
              B GISR2_RET
MS01:         LACL 18H
              AND #0F0H
              ADD #10H
              SACL 18H
              RPT #3
              SFR
              OR #7700H
              SACL 16H
              LAR     AR1,#216h		
              CALL    WRITE_7219
              B GISR2_RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
SEC1:         SACL 18H
              LDP #200H>>7
              SPLK #7700H,216H
	          SPLK #8800H,217H
              LAR     AR1,#216h		
              CALL    WRITE_7219
              LAR     AR1,#217h		
              CALL    WRITE_7219
              LDP #4
              LACL 19H
              ADD	#1
              SUB #5AH
              BCND MIN1,EQ            ;到加1分钟
              LACL 19H
              ADD	#1
              
              AND #0FH
              SUB #0AH
              BCND SEC10, EQ      ;到加10秒钟  
              LACL 19H
              ADD #1 
              SACL 19H
              ;LACL 19H
              AND #0FH
              OR #6680H
              SACL 15H
              LAR     AR1,#215h		
              CALL    WRITE_7219
              LDP #4 
              
              B GISR2_RET
SEC10         LACL 19H 
              ADD #10H
              AND #0F0H
              SACL 19H
              RPT #3
              SFR
              OR #5500H
              SACL 14H
              LAR     AR1,#214h		
              CALL    WRITE_7219
              LDP #4
              LACL 19H 
              AND #0FH
              OR #6680H
              SACL 15H
              LAR     AR1,#215h		
              CALL    WRITE_7219   
              LDP #4
              ;LACL 19H 
              ;ADD #1
              ;SACL 19H
              B GISR2_RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
MIN1:         ADD #1
              SACL 19H
              LDP #200H>>7
              SPLK #6680H,215H
	          SPLK #5500H,214H
              LAR     AR1,#215h		
              CALL    WRITE_7219
              LAR     AR1,#214h		
              CALL    WRITE_7219
              LDP #4
              LACL 1AH 
              SUB #59H
              BCND HOUR1,EQ            ;到加1HOUR
              LACL 1AH
              AND #0FH
              SUB #09H
              BCND MIN10, EQ      ;到加10MIN
              LACL 1AH 
              ADD #1
              SACL 1AH
              AND #0FH
              OR #4480H
              SACL 13H
              LAR     AR1,#213h		
              CALL    WRITE_7219  
              B GISR2_RET
MIN10         LACL 1AH 
              ADD #10H
              AND #0F0H
              SACL 1AH
              RPT #3
              SFR
              OR #3300H
              SACL 12H
              LAR     AR1,#212h		
              CALL    WRITE_7219  
              LDP #4
              LACL 1AH 
              AND #0FH
              OR #4480H
              SACL 13H
              LAR     AR1,#213h		
              CALL    WRITE_7219   
              B GISR2_RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
HOUR1:        ADD #1
              SACL 1AH
              LDP #200H>>7
              SPLK #4480H,213H
	          SPLK #3300H,212H
              LAR     AR1,#213h		
              CALL    WRITE_7219
              LAR     AR1,#212h		
              CALL    WRITE_7219
              LDP #4
              LACL 1BH
              ADD #1
              SUB #24H
              BCND ZERO,EQ           ;到全部清零
              LACL 1BH
              ADD #1
              AND #0FH
              SUB #0AH
              BCND HOUR10, EQ      ;到加10HOUR
              LACL 	1BH
              ADD #1
	          SACL	1BH		;M
              AND #0FH
              OR #2280H
              SACL 11H
              LAR     AR1,#211h		
              CALL    WRITE_7219
              B GISR2_RET
HOUR10        LACL 1BH
              AND #0F0H
              ADD #10H
              SACL 1BH
              RPT #3
              SFR
              OR #1100H
              SACL 10H
              LAR     AR1,#210h		
              CALL    WRITE_7219
		;LACL	1BH		;M
		;AND	#0		;M
		;OR	#2280H		;M
		;SACL	09H		;M 
			LDP		#4
			LACL	1BH
			AND		#0FH
			OR		#02280H
			SACL	09H	
			LAR		AR1,#209H	;M	
			CALL	WRITE_7219
              B GISR2_RET
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

⌨️ 快捷键说明

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