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

📄 keyboard.h

📁 MiniGui在ucOS-ii下的一个例子
💻 H
字号:
/***************************************************************************\
	Copyright (c) 2004-2009 threewater@up-tech.com, All rights reserved.
	by threewter	2004.4.26
\***************************************************************************/
	

/***************************************************************************\
    #说明: 键盘抽象层驱动程序头文件定义
	----------------------------------  Bug  --------------------------------------

	----------------------------------  TODO list  --------------------------------------

	----------------------------------修正--------------------------------------
	2004-8-12	创建,测试通过

\***************************************************************************/
#include "../inc/marco.h"

typedef int (*kbd_init_func_t)(void);
typedef int (*kbd_read_func_t)(void);

typedef struct {
	kbd_init_func_t init;
	kbd_read_func_t read;
	int nIsr;		//中断号,如果为-1,则不通过中断管理
} kbd_driver_t;

//键盘映射表结构
typedef struct{
	int keyraw;
	int mapto;
}kbd_map_table;

#define KEY_DOWN		(1<<30)
#define KEY_UP			(0<<30)

#define InitKey_MapTable(Maptab, Mapto, initvalue) do{int i;\
	for(i=0;i<NumberOfArray(Mapto);i++)		Mapto[i]=initvalue;\
	for(i=0;i<NumberOfArray(Maptab);i++)		Mapto[Maptab[i].keyraw]=Maptab[i].mapto;}while(0)

void KeyBoard_init(void);
//读取键盘按键扫描码,如果没有按键,则返回-1
int KeyBoard_Read(int ndev, BOOL isBlock);

⌨️ 快捷键说明

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