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


审核编辑 黄宇

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

    关注

    26

    文章

    6409

    浏览量

    120590
  • rv1126
    +关注

    关注

    0

    文章

    118

    浏览量

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

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【飞凌嵌入式RV1126B开发板试用体验】初识飞凌嵌入式RV1126B开发板

    这几天刚收到飞凌嵌入式RV1126B开发板,带大家先认识一下这块开发板,收到的开发板如下图。 开发板有主板和核心
    发表于 04-13 17:27

    替代升级实锤!实测RV1126B,CPU性能吊打RV1126

    RV1126B核心已上市并稳定量产供应实测开始,设备使用触觉智能RV1126核心RV1126B核心
    的头像 发表于 12-11 17:13 2514次阅读
    替代升级实锤!实测<b class='flag-5'>RV1126</b>B,CPU性能吊打<b class='flag-5'>RV1126</b>

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

    2025年7月,瑞芯微正式发布新一代AI视觉芯片RV1126B。作为其金牌方案商,EASYEAI灵眸科技同步推出搭载该芯片的AIoT核心EAI1126B-Core-T。相较于前代RV1126
    的头像 发表于 09-04 10:50 5092次阅读
    <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 1205次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸检测方案

    基于RV1126开发板实现网络摄像头方案

    RV1126开发板上实现本开发实例,抓取摄像头数据、图像送入编码器进行编码压缩、以及把压缩后的数据通过RTSP协议发送出去的简单核心示例。 若用户需要通过webServer对图像进行调整,以及配置摄像头的一些工作
    的头像 发表于 04-21 14:56 2238次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现网络摄像头方案

    基于RV1126开发板实现多路网络摄像头取流方案

    RV1126上实现多路网络摄像头取流方案
    的头像 发表于 04-21 14:39 49次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现多路网络摄像头取流方案

    基于RV1126开发板实现二维码识别方案

    RV1126开发板上实现方案设计逻辑流程图,方案代码分为两个业务流程,主体代码负责抓取、合成图像,算法代码负责二维码识别功能。
    的头像 发表于 04-21 14:25 54次阅读
    基于<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 13:51 11次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现人脸识别方案

    基于RV1126开发板实现自学习图像分类方案

    RV1126开发板上实现自学习:在识别前对物体图片进行模型学习,训练完成后通过算法分类得出图像的模型ID。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像,算法代码负责训练和检测功能。
    的头像 发表于 04-21 13:37 11次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现自学习图像分类方案

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

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

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

    RV1126上实现人员检测:在图像中找出人。 方案设计逻辑流程图,方案代码分为分为两个业务流程,主体代码负责抓取、合成图像,算法代码负责人员检测功能。
    的头像 发表于 04-21 10:42 1008次阅读
    基于<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-21 09:20 1015次阅读
    基于<b class='flag-5'>RV1126</b><b class='flag-5'>开发板</b>实现安全帽检测方案