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

📄 keyboard16.c

📁 在移植成功ucos核的基础上扩充了该操作系统的许多没有功能。如文件系统
💻 C
字号:
#include"..\ucos-ii\includes.h"               /* uC/OS interface */
#include "..\startup\44b.h"
#include "..\inc\def.h"
#include "..\inc\drv\Keyboard16.h"
#include "..\inc\drv\zlg7289.h"
#include "..\ucos-ii\uhal\isr.h"

U16 FunctionKey=0xffff;//功能键扫描吗,0有效
//U8 keyBoard_KeyMap[]={0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15};
//U8 keyBoard_KeyMap[]={0,0xF,0xE,4,0xD,0xC,0xB,3,0xA,9,8,1,6,7,5,2};
U8 keyBoard_KeyMap[]={11,15,7,3,14,12,13,10,9,8,6,5,4,2,1,0};

OS_EVENT *Key_MailBox;

void ISR_Key()
{
	OSMboxPost(Key_MailBox, (void*)1);
}

void SetFunctionKey(U16 Fnkey)	//设定功能键扫描码,1有效 比如ctrl alt
{
	FunctionKey&=~Fnkey;
}

void KeyBoard_init()
{
	U32 temp;

	Zlg7289_Reset();
	Key_MailBox=OSMboxCreate(NULL);

	temp=rINTMSK;
	rINTMSK=BIT_GLOBAL;

	rEXTINT|=(2<<16);	//外部中断4
	SetISR_Interrupt(EINT4567_OFFSET,ISR_Key,EINT4_OFFSET);

	rEXTINPND=(1<<EINT4_OFFSET);
	rI_ISPC=BIT_EINT4567;
	rINTMSK=(~BIT_EINT4567)&temp;

}

⌨️ 快捷键说明

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