drv_key_init.msa
来自「Actions ucOS-II mp3方案源码,可以做参考」· MSA 代码 · 共 56 行
MSA
56 行
/*
*********************************************************************************************************
* uC/OS-II
* The Real-Time Kernel
* CORE FUNCTIONS
*
(c) Copyright 1992-2001, Jean J. Labrosse, Weston, FL
* All Rights Reserved
*
* File :
* By :
*********************************************************************************************************
*/
#include "irqmanager.h"
#include "driver.h"
#include "key.h"
public KeyInit
extern KeyISR
extern IRQ_intercept
extern ?BANK_CALL_DIRECT_L08
extern ?BANK_FAST_LEAVE_L08
rseg KEYBank_D
KeyOldIsr defw 0x0000
rseg KEYBank_C
KeyInit:
GPIOBInit:
push de
push bc
push hl
in a,(0efh)
or 0x77
out (0efh),a
KEYBOARDINIT:
ld a,087h
out (0c1h),a
ld de, lwrd KeyISR
ld c, lwrd IRQ_KEY
ld a, byte3 IRQ_intercept
ld hl, lwrd IRQ_intercept
call ?BANK_CALL_DIRECT_L08
ld (lwrd KeyOldIsr), hl
in a,(0x27)
or 0x40
out (0x27),a
pop hl
pop bc
pop de
jp ?BANK_FAST_LEAVE_L08
ret
end
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?