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

📄 gamepad_global.h

📁 瑞星微公司RK27XX系列芯片的SDK开发包
💻 H
字号:

#ifndef  _GAMEPAD_GLOBAL_H_
#define  _GAMEPAD_GLOBAL_H_

/*********************************************************************
 FUNCTION PROTOTYPES
*********************************************************************/
#ifdef KEY_GLOBALS
#define KEYEXT
#else
#define KEYEXT                  extern
#endif

#ifdef DRIVER_ONLY
#include "keyevent.h"
#endif

/*************************************************************************************/
#ifdef KEY_GLOBALS

KEYEXT  KEY_INFO sKeyInfo_PLAY =
    {KE_PLAY_PRESS , KE_PLAY_LONGP , KE_PLAY_RELEASE, KE_PLAY_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_UP =
    {KE_UP_PRESS , KE_UP_LONGP , KE_UP_RELEASE , KE_UP_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_DN =
    {KE_DN_PRESS , KE_DN_LONGP , KE_DN_RELEASE , KE_DN_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_PREV =
    {KE_PREV_PRESS , KE_PREV_LONGP , KE_PREV_RELEASE , KE_PREV_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_NEXT =
    {KE_NEXT_PRESS , KE_NEXT_LONGP , KE_NEXT_RELEASE , KE_NEXT_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_Return =
    {KE_RETURN_PRESS , KE_RETURN_LONGP , KE_RETURN_RELEASE , KE_RETURN_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_MENU =
    {KE_MENU_PRESS , KE_MENU_LONGP , KE_MENU_RELEASE , KE_MENU_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_SHIFT =
    {KE_SHIFT_PRESS , KE_SHIFT_LONGP , KE_SHIFT_RELEASE , KE_SHIFT_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD1 =
    {KE_GAMEPAD1_PRESS , KE_GAMEPAD1_LONGP , KE_GAMEPAD1_RELEASE , KE_GAMEPAD1_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD2 =
    {KE_GAMEPAD2_PRESS , KE_GAMEPAD2_LONGP , KE_GAMEPAD2_RELEASE , KE_GAMEPAD2_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD3 =
    {KE_GAMEPAD3_PRESS , KE_GAMEPAD3_LONGP , KE_GAMEPAD3_RELEASE , KE_GAMEPAD3_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD4 =
    {KE_GAMEPAD4_PRESS , KE_GAMEPAD4_LONGP , KE_GAMEPAD4_RELEASE , KE_GAMEPAD4_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD5 =
    {KE_GAMEPAD5_PRESS , KE_GAMEPAD5_LONGP , KE_GAMEPAD5_RELEASE , KE_GAMEPAD5_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD6 =
    {KE_GAMEPAD6_PRESS , KE_GAMEPAD6_LONGP , KE_GAMEPAD6_RELEASE , KE_GAMEPAD6_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD7 =
    {KE_GAMEPAD7_PRESS , KE_GAMEPAD7_LONGP , KE_GAMEPAD7_RELEASE , KE_GAMEPAD7_LONG_RELEASE };
KEYEXT  KEY_INFO sKeyInfo_GAMEPAD8 =
    {KE_GAMEPAD8_PRESS , KE_GAMEPAD8_LONGP , KE_GAMEPAD8_RELEASE , KE_GAMEPAD8_LONG_RELEASE };


// 扫描码与按键的定义 有下面的表格来 决定,比如
// {0, &sKeyInfo_MENU},表示 扫描码 0 代表 MENU键 .
// 按键的 多少 就是 数组 gCommKeyTran 的元素个数.
#if defined(PCLIB)
// 共 8 个键 .
KEYEXT  KEY_TRANSLATION gCommKeyTran[] =  /* 根据按键使用情况排列 */
{
    {0,  &sKeyInfo_MENU},
    {1,  &sKeyInfo_Return },
    {2,  &sKeyInfo_UP },
    {3,  &sKeyInfo_DN  },
    {4,  &sKeyInfo_PREV },
    {5,  &sKeyInfo_NEXT },
    {6,  &sKeyInfo_PLAY },
    {7,  &sKeyInfo_SHIFT },
};
#else
// 共 16 个键
KEYEXT  KEY_TRANSLATION gCommKeyTran[]  =   /*  根据按键使用情况排列 */
{
    {0, &sKeyInfo_GAMEPAD4 },
    {1, &sKeyInfo_GAMEPAD3 },
    {2, &sKeyInfo_GAMEPAD2 },
    {3, &sKeyInfo_GAMEPAD1},
    {4, &sKeyInfo_NEXT},
    {5, &sKeyInfo_PREV},
    {6, &sKeyInfo_DN },
    {7, &sKeyInfo_UP },
    {8, &sKeyInfo_Return },
    {9, &sKeyInfo_Return},
    {10, &sKeyInfo_PLAY} ,
    {11, &sKeyInfo_MENU},
    {12, &sKeyInfo_GAMEPAD8 },
    {13, &sKeyInfo_GAMEPAD7 },
    {14, &sKeyInfo_GAMEPAD6 },
    {15, &sKeyInfo_GAMEPAD5}
};

#endif

KEYEXT  KEY_BOARD gCommKeyBoard =
    { ARRSIZE(gCommKeyTran), &gCommKeyTran[0]  };

#else
#ifdef BOARD
KEYEXT  UINT16   gKeyIOMasks[];
#endif

KEYEXT  KEY_BOARD   gCommKeyBoard;
#endif
#endif

⌨️ 快捷键说明

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