天天看点

i.MX6ULL终结者Linux按键输入实验应用测试程序

创建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 }
           
i.MX6ULL终结者Linux按键输入实验应用测试程序