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

📄 key.c

📁 GPS开发
💻 C
字号:
//======================================================
// 文件名称:	Key.c
// 功能描述:	键盘初始化,键盘扫描,获取键值 
// 维护记录:	2007-8-10	v1.0
//======================================================
#include "spce061a.h"
#include "picture.h"
static int result;    						// 当键盘按下时用于存储键值.
static char down;    						// 有键盘按下时置1

//=============================================================
// 语法格式:	void Key_Init(void)
// 实现功能:	键盘初始化
// 参数:		无
// 返回值:		无
//=============================================================
void Init_Key(void)
{
	*P_IOA_Dir |= 0x000;    				// IOA0,1,2下拉输入
	*P_IOA_Attrib |= 0x0000;
	*P_IOA_Buffer |= 0x0000;
}

//=============================================================
// 语法格式:	void Key_ServiceLoop(void)
// 实现功能:	键盘扫描函数
// 参数:		无
// 返回值:		无
//=============================================================
int Key_ServiceLoop(void)
{
	int temp1,temp2 ;   
	
	temp1 = *P_IOA_Data;
	temp1 = temp1&0x7;   					// 去抖
	if (temp1 == 0)
		return -1;
	delay(0xffff);
	temp2=*P_IOA_Data;
	temp2=temp2 & 0x7;
	if(temp2 == temp1)
	{
		down = 1;
		result = temp2;
		return temp2;
	}
	else
	{
		down = 0;
		return -1;
	}
}

//=============================================================
// 语法格式:	int Key_GetValue(void)
// 实现功能:	得到键值函数   
// 参数:		无
// 返回值:		按下返回键值,没有按下返回-1
//=============================================================	
int Key_GetValue(void)
{
	if(down == 1)
	{	
		down = 0;
		return	result;
	}
	else
		return  -1;
}		

⌨️ 快捷键说明

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