芯片平台:mdm9x07
第一种方法当然是用 input 事件 event。
/dev/input/event0
测试代码如下:
#include "stdio.h"
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <linux/input.h>
int main()
{
int keys_fd; //按键句柄
struct input_event t;
keys_fd = open("/dev/input/event0", O_RDONLY);
if(keys_fd<=0)
{
printf("open /dev/input/event0 device error!\n");
return 0;
}
while(1)
{
if(read(keys_fd,&t,sizeof(t))==sizeof(t))
{
printf("hjb type:%d,coe:%d,value:%d,time: %d\n",t.type,t.code,t.value,t.time);
if(t.type==EV_KEY) //获取的是按键消息
{
if(t.value==1)
{
printf("key %d Pressed time: %d\n",t.code,t.time);
}
if(t.value==0) //返回值是1或者0
printf("key %d %s\n",t.code,(t.value)?"Pressed&