基于RV1126开发板的按键测试方法与例程

电子说

1.4w人已加入

描述

1. EASY EAI Nano按键资源介绍

       EASY EAI Nano的可以选择RECOVER按键作为功能按键如下图所示。

rv1126

2. evtest工具测试按键事件

2.1 安装evtest工具

       在板子联网的情况下,在EASY EAI Nano执行以下指令安装工具:

 

sudo apt-get update
sudo apt-get install evtest
rv1126

 

2.2 基于evtest工具测试

       执行evtest指令后选择event number输入1,点击“RECOVER”按键触发事件。如下图所示:

rv1126

3. 例程快速上手

3.1 开发环境准备

       如果您初次阅读此文档,请阅读《入门指南/开发环境准备/Easy-Eai编译环境准备与更新》,并按照其相关的操作,进行编译环境的部署

       在PC端Ubuntu系统中执行run脚本,进入EASY-EAI编译环境,具体如下所示。

 

cd ~/develop_environment
./run.sh
rv1126

 

3.2 源码下载与例程编译

       到【百度网盘】上下载相关的单例程序:

       链接:https://pan.baidu.com/s/1C5mKwq8yLUSg9ztmvs3kHQ

       提取码:1234

rv1126

        进入到对应的例程目录执行编译操作,具体命令如下所示:

 

cd gpiokey_process/
./build.sh
cp gpiokey-process /mnt/userdata/

 

    注:

* 由于依赖库部署在板卡上,因此交叉编译过程中必须保持adb连接。

       生成可以执行文件,而且复制到板子上:

rv1126

3.3 例程运行

       通过按键Ctrl+Shift+T创建一个新窗口,执行adb shell命令,进入板卡运行环境。

 

adb shell
rv1126

 

       进入板卡后,定位到例程上传的位置,如下所示:

 

cd /userdata/

 

       运行例程命令如下所示:

 

./gpiokey-process

 

3.4 运行效果

       执行效果如下所示,点击RECOVER按键触发事件。

rv1126

       本例程源码,详细信息见下方说明。

4. 按键测试例程

       例程文件为gpiokey_processing.c,参考例程如下所示。

 

#include < stdio.h >
#include < stdlib.h >
#include < unistd.h >
#include < fcntl.h >
#include < string.h >
#include < linux/input.h >

#define GPIOKEY_EVENT_PATH	"/dev/input/event1"

int main(void)
{
	int gpiokey_fd;
	int event_len;
	struct input_event event;

	gpiokey_fd = open(GPIOKEY_EVENT_PATH, O_RDONLY);
	if(gpiokey_fd < 0) 
	{
		perror("open gpiokey_event error");
		return -1;
	}

	event_len = sizeof(struct input_event);
	for(;;) 
	{
		if(read(gpiokey_fd, &event, event_len) == event_len)
		{
			if(event.type == EV_KEY) 
			{
				if(event.value==0)
				{
					printf("%s key up!n", GPIOKEY_EVENT_PATH); 
				}
				else if(event.value==1)
				{
					printf("%s key down!n", GPIOKEY_EVENT_PATH);
				}
			}
		}
	}

	return 0;
}


审核编辑 黄宇

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分