📄 key4559n.inc
字号:
;**************************************************************;
; Remote controller for M34559 DEMO ;
; MODULE : KEY INPUT SUBROUTINE
; MCU: M34559G6-xxxFP ;
; VERSION: 1.0 ;
; DESIGNED: GAO YUAN HONG ;
; DATE: 2006-05-12 ;
; Renesas System Solutions Asia Pte. Ltd ;
; SHANGHAI Representative Office ;
;**************************************************************;
;***************************************
; Get code value of the pressed key
; Input A -- value inputted from port
; Return key -- the pressed key code
;***************************************
GET_KEY:
BML D0_ON
BML D1_ON
BML D2_ON
BML D15us
IAP1
NOP
SEA 1111b
BL SCAN_START
.SEB NOKEYF
NO_KEY:
LXY KEYDATA
LA 0fh
TMA 0
RTS
SCAN_START:
RC
BML D1_OFF
BML D2_OFF
BML D0_ON
BML D15us
BML KEY_COM
BL NO_KEY ; if double key
;
BML D0_OFF
BML D1_ON
BML D15us
BML KEY_COM
BL NO_KEY ; if double key
;
BML D1_OFF
BML D2_ON
BML D15us
BML KEY_COM
BL NO_KEY ; if double key
RT
;-------------------------
KEY_TAB:
TABE
TABP 44
LXY KEYDATA
SEAM
B KEY_TAB05
TMA 0
RT
KEY_TAB05:
TMA 0
.SZXYB NOKEYF
A 0
RTS
.CLB NOKEYF
RT
;--------------------------
KEY_COM:
TAY
TBA
KEY_COM10:
IAP1
NOP
LXY INPUT
TMA 0
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
BML D2MS
IAP1
NOP
SEAM
BL KEY_COM10 ; Waiting the input is stable
CMA ; Check if the input is valide
NOP
SEA 01h
A 0 ; Skip
BL Load00
SEA 02h
A 0
BL Load01
SEA 04h
A 0
BL Load02
SEA 08h
BL Load10
LA 03h
Load02:
LA 02h
Load01:
LA 01h
Load00:
LA 00h
;
TEAB
Load05:
TAB
TDA
BML KEY_TAB
SZC
BL Load08
SC
RTS
Load08:
.CLB NOKEYF
RT
;-----------------------------------
Load10: ; one line double key check
SEA 0
A 0
RTS ; on key input
SC
BL Load08 ; double key
;----------------------------------
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -