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

📄 key-yf.c

📁 新一代基于事件的嵌入式操作系统dyos在三星的s3c44b0的arm芯片上的完整移植代码
💻 C
字号:
//----------------------------------------------------
//Copyright (C), 2004-2009,  lst.
//版权所有 (C), 2004-2009,   lst.
//所属模块:键盘
//作者:lst
//版本:V1.0.0
//文件描述: 扫描硬件读按键函数,只需直接给出按键当前值,无须防抖。
//其他说明:
//修订历史:
//    1. 日期:20090131
//       作者:lst
//       新版本号:v1.0.0
//       修改说明:原始版本
//------------------------------------------------------
#include "inc_os.h"
#include "key.h"
#include "gpio.h"
extern uint16_t u16g_key_table[];


//----键盘硬件扫描------------------------------------------------------------
//功能: 共4个键,可读入复合键,最多2个键复合,pg0~3.
//参数: key,键值数组指针,可存放2个单键值
//返回: 读到的键的个数0,1,2
//----------------------------------------------------------------------------
uint8_t key_scan_hard(uint16_t *key)
{
    uint8_t i = 0;
    if( ! (pg_gpio_reg->PDATG & 0x10))
    {
        key[i] = 1;
        i++;
    }
    if( ! (pg_gpio_reg->PDATG & 0x20))
    {
        key[i] = 2;
        i++;
        if(i == 2)
            return i;
    }
    if( ! (pg_gpio_reg->PDATG & 0x40))
    {
        key[i] = 3;
        i++;
        if(i == 2)
            return i;
    }
    if( ! (pg_gpio_reg->PDATG & 0x80))
    {
        key[i] = 4;
        i++;
    }
    return(i);
}

⌨️ 快捷键说明

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