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

📄 keyscan.asm

📁 1335液晶的光标控制
💻 ASM
字号:

?PR?KEYSCAN     SEGMENT CODE 

PUBLIC		KEYSCAN					;导出函数名给C语言函数			
                                             

RSEG	?PR?KEYSCAN

KEYSCAN	:	MOV  	R6,#8
	    MOV  	A,#0FFH											   // P1.0送串口数据,P1。1送时钟,P1。2与P1。3送扫描结果 
	    LCALL  	EIGHTSET
	
	    CLR   	P1.0
		SETB  	P1.1
    	NOP
	    CLR  	P1.1			;1
        JB 	    P1.2,TT0
	    MOV  	R7,#00
	    LJMP	EEE
TT0:	JB 	    P1.3,TT1
	    MOV     R7,#01
	    LJMP	EEE
;*************************************************
TT1:    SETB    P1.0
        SETB    P1.1
        NOP
        CLR     P1.1
				;2
	    JB   	P1.2,TT2
        MOV     R7,#02
        LJMP	EEE
TT2:   	JB 	    P1.3,TT3 
        MOV     R7,#03
        LJMP	EEE
;*************************************************
TT3:    SETB    P1.0
        SETB    P1.1
        NOP
        CLR     P1.1
				 ;3
	    JB      P1.2,TT4
        MOV     R7,#04
        LJMP	EEE
TT4:    JB 	    P1.3,TT5
        MOV     R7,#05
        LJMP	EEE
;*************************************************
TT5:    SETB    P1.0
        SETB    P1.1
        NOP						   ;4
        CLR     P1.1
	
	    JB      P1.2,TT6
        MOV     R7,#06
        LJMP	EEE
TT6:    JB      P1.3,TT7
        MOV     R7,#07
        LJMP	EEE
;*************************************************
TT7:    SETB    P1.0
        SETB    P1.1
        NOP							 ;5
        CLR     P1.1
	
	    JB      P1.2,TT8
        MOV     R7,#08
        LJMP    EEE
TT8:    JB      P1.3,TT9
        MOV     R7,#09
        LJMP	EEE
;*************************************************
TT9:    SETB    P1.0
        SETB    P1.1	   
        NOP							  ;6
        CLR     P1.1
	
	    JB      P1.2,TT10
        MOV     R7,#0aH
        LJMP	EEE
TT10:   JB      P1.3,TT11
        MOV     R7,#0bH
        LJMP	EEE
;*************************************************
TT11:   SETB    P1.0
        SETB    P1.1
        NOP								  ;7
        CLR     P1.1
	
	  //  JB      P1.2,TT12
		JB      P1.2,TI12
        MOV     R7,#0cH
        LJMP	EEE
TI12:	MOV		R7,#0

/*

TT12:   JB      P1.3,TT13
        MOV     B,#0dH
        LJMP    EEE
;*************************************************
TT13:   SETB    P1.0
        SETB    P1.1
        NOP							   ;8
        CLR     P1.1
	
	    JB      P1.2,TT14
        MOV     B,#0eH
        LJMP	EEE
TT14:   JB      P1.3,TT15
        MOV     B,#0fH
		LJMP    EEE
*/

//TT15:   lJMP    KEYSCAN
;*************************************************
EEE://	MOV   R6,#08H
	  //  MOV  	A,#0FFH		
    //	LCALL  	EIGHTSET
	    LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
		LCALL  	del
//		lJMP  	START
;*************************************************
EIGHTSET:
         RLC    A				   //1 1111,1110
         MOV    P1.0,C				  
	     SETB   P1.1
	     NOP
	     CLR    P1.1
	     DJNZ   R6,EIGHTSET
	     RET
;*************************************************
del: 	MOV     R4,#0ffffH
loop2:   MOV       R5,#0ffffH
loop1:   DJNZ    R5,loop1
        DJNZ     R4,loop2
		RET 
;*************************************************
END

⌨️ 快捷键说明

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