0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

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

ljx2016 来源:ljx2016 作者:ljx2016 2025-04-15 17:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1. EASY EAI Nano按键资源介绍

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

wKgZO2f-IYiAbhTQAAtGf0C9jS4476.png

2. evtest工具测试按键事件

2.1 安装evtest工具

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

sudo apt-get update
sudo apt-get install evtest
wKgZPGf-IYiAav91AAIrBTf2avs023.png

2.2 基于evtest工具测试

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

wKgZO2f-IYmAE8NEAAGYtMd7y3Y930.png

3. 例程快速上手

3.1 开发环境准备

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

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

cd ~/develop_environment
./run.sh
wKgZPGf-IYmAUUY2AACbrHAYX20889.png

3.2 源码下载与例程编译

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

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

提取码:1234

wKgZO2f-IYmAEFRxAAAOB3tHxG4105.png

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

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

注:

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

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

wKgZPGf-IYmAVL7HAACgmcP_1Rc084.png

3.3 例程运行

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

adb shell
wKgZO2f-IYqAEfS7AACOVQLk9o8002.png

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

cd /userdata/

运行例程命令如下所示:

./gpiokey-process

3.4 运行效果

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

wKgZPGf-IYqAZlTGAABfZWFwk_8790.png

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

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;
}


审核编辑 黄宇

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

    关注

    25

    文章

    6132

    浏览量

    113495
  • rv1126
    +关注

    关注

    0

    文章

    115

    浏览量

    4082
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    RV1126系列选型指南:从RV1126RV1126B,一文看懂升级差异

    2025年7月,瑞芯微正式发布新一代AI视觉芯片RV1126B。作为其金牌方案商,EASYEAI灵眸科技同步推出搭载该芯片的AIoT核心EAI1126B-Core-T。相较于前代RV1126
    的头像 发表于 09-04 10:50 3521次阅读
    <b class='flag-5'>RV1126</b>系列选型指南:从<b class='flag-5'>RV1126</b>到<b class='flag-5'>RV1126</b>B,一文看懂升级差异

    基于RV1126开发板实现人脸检测方案

    RV1126开发板上实现人脸检测:在图像中找出人脸,以及每张人脸的landmarks位置。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像, 算法代码负责人脸检测功能。
    的头像 发表于 04-21 17:59 865次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸检测方案

    基于RV1126开发板实现人脸检测方案

    RV1126开发板上实现人脸检测:在图像中找出人脸,以及每张人脸的landmarks位置。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像, 算法代码负责人脸检测功能。
    的头像 发表于 04-21 14:00 13次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸检测方案

    基于RV1126开发板实现人脸识别方案

    RV1126开发板上实现人脸识别:在图像中找出人脸,并与数据库进行比对,得出该人脸对应的身份信息。 方案设计逻辑流程图,方案代码分为分为三个业务流程,主体代码负责抓取、合成图像,算法代码负责人脸识别功能,按键监听
    的头像 发表于 04-21 10:24 107次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸识别方案

    基于RV1126开发板实现人脸检测方案

    RV1126开发板上实现人脸检测:在图像中找出人脸,以及每张人脸的landmarks位置。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像, 算法代码负责人脸检测功能。
    的头像 发表于 04-21 10:21 99次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸检测方案

    基于RV1126开发板实现驾驶员行为检测方案

    RV1126开发板上实现驾驶员行为检测:通过图像识别出这几种行为:打电话、抽烟、疲劳驾驶。
    的头像 发表于 04-18 17:47 354次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现驾驶员行为检测方案

    基于RV1126开发板实现人员检测方案

    RV1126开发板实现人员检测:在图像中找出人。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像,算法代码负责人员检测功能。
    的头像 发表于 04-18 17:14 220次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人员检测方案

    基于RV1126开发板实现人脸识别方案

    RV1126开发板实现人脸识别:在图像中找出人脸,并与数据库进行比对,得出该人脸对应的身份信息。 方案设计逻辑流程图,方案代码分为分为三个业务流程,主体代码负责抓取、合成图像,算法代码负责人脸识别功能,按键监听负
    的头像 发表于 04-18 16:55 83次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸识别方案

    基于RV1126开发板的resnet50训练部署教程

    本教程基于图像分类算法ResNet50的训练和部署到EASY-EAI-Nano(RV1126)进行说明
    的头像 发表于 04-18 15:07 939次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的resnet50训练部署教程

    基于RV1126开发板的音频硬件电路设计

           核心自带音频输入输出功能,无需外接音频编解码芯片,节省成本与空间。核心核上的PMIC RK809-2芯片内部集成高性能音频Codec,RV1126通过I2S1接口和RK809-2
    的头像 发表于 04-17 09:31 769次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的音频硬件电路设计

    基于RV1126开发板网络配置方法

    RV1126开发板网络硬件资源有:以太网、WiFi,采用的网络配置方案是:Netplan。        Netplan是一个用于配置Linux网络的简单工具。用户只需要一个yaml格式的文件去
    的头像 发表于 04-15 14:57 706次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>网络配置<b class='flag-5'>方法</b>

    基于RV1126开发板的人员检测算法开发

    RV1126开发人员检测AI算法组件
    的头像 发表于 04-14 13:56 631次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的人员检测算法<b class='flag-5'>开发</b>

    基于RV1126开发板的人脸检测算法开发

    RV1126开发人脸检测算法组件
    的头像 发表于 04-14 10:19 744次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>的人脸检测算法<b class='flag-5'>开发</b>

    RV1126 实现人脸检测方案

    基于RV1126开发板实现人脸检测方案,充分体现了电子方面的实践经验和目标检测技术。
    的头像 发表于 04-14 09:25 691次阅读
    <b class='flag-5'>RV1126</b> 实现人脸检测方案

    RV1126 实现简单的UI开发示例

    RV1126上实现简单的UI开发实例
    的头像 发表于 04-09 16:08 907次阅读
    <b class='flag-5'>RV1126</b> 实现简单的UI<b class='flag-5'>开发</b>示例