创建key_test.c文件,具体内容如下:
1 #include "stdio.h"
2 #include "unistd.h"
3 #include "sys/types.h"
4 #include "sys/stat.h"
5 #include "fcntl.h"
6 #include "stdlib.h"
7 #include "string.h"
8
9 /* 定义按键值 */
10 #define KEY0VALUE 0XF0
11 #define INVAKEY 0X00
12
13 /*
14 * @description : main 主程序
15 * @param - argc : argv 数组元素个数
16 * @param - argv : 具体参数
17 * @return : 0 成功;其他 失败
18 */
19 int main(int argc, char *argv[])
20 {
21 int fd, ret;
22 char *filename;
23 unsigned char keyvalue;
24
25 if(argc != 2){
26 printf("Error Usage!\r\n");
27 return -1;
28 }
29
30 filename = argv[1];
31
32 /* 打开 key 驱动 */
33 fd = open(filename, O_RDWR);
34 if(fd < 0){
35 printf("file %s open failed!\r\n", argv[1]);
36 return -1;
37 }
38
39 /* 循环读取按键值数据! */
40 while(1) {
41 read(fd, &keyvalue, sizeof(keyvalue));
42 if (keyvalue == KEY0VALUE) { /* KEY0 */
43 printf("KEY0 Press, value = %#X\r\n", keyvalue);/* 按下 */
44 }
45 }
46
47 ret= close(fd); /* 关闭文件 */
48 if(ret < 0){
49 printf("file %s close failed!\r\n", argv[1]);
50 return -1;
51 }
52 return 0;
53 }