GM-3568JHF丨ARM+FPGA异构开发板应用开发教程:02 按键检测案例

本篇教程基于ShiMetaPi 研发的FPGA+ARM开发板——GM-3568JHF展开。

一、案例简介

本案例通过监听用户输入按键 UBOOT的状态,检测按键事件。案例将获取按键事件后进行按键键值匹配,再进行事件处理。 如需测试其他按键,请修改对应的设备节点以及源码。

本案例使用的UBOOT按键的为下图红框处的按键。

二、操作流程

  • 打开终端,使用 evtest 命令查看 UBOOT 按键对应的事件设备节点,UBOOT 按键对应的是 "adc-keys"。该命令可在任意路径下执行。
root@linaro-alip:/# evtest
No device specified, trying to scan all of /dev/input/event*
Available devices:
/dev/input/event0:    rk805 pwrkey
/dev/input/event1:    hdmi_cec_key
/dev/input/event2:    adc-keys
/dev/input/event3:    rk-headset
/dev/input/event4:    SIGMACHIP Usb Mouse

从查询结果可见,UBOOT 按键对应的事件设备节点是 event2

  • 将本案例 bin 目录下的可执行程序 smdt_key_demo 拷贝至开发板文件系统(源码可在 src 路径下查看)。

在终端执行如下指令,切换至 smdt_key_demo 可执行程序所在目录:

cd /path/to/directory

切换后可执行指令 ls 查看 smdt_key_demo 是否在当前目录下。

  • smdt_key_demo 存在于当前目录,则继续执行以下操作。输入以下指令,修改文件权限:
chmod 777 smdt_key_demo

修改权限后可输入以下指令查看是否修改成功:

ls -l smdt_key_demo

执行结果示例:

-rwxrwxrwx 1 root root 13824 Mar  4 01:22 smdt_key_demo

-rwxrwxrwx 表示权限已成功修改,文件可被执行。

  • 输入以下指令,查看程序参数信息(注意:event2 需根据前面 evtest 命令查询结果相应更改):
./smdt_key_demo -h
  • 运行程序并测试按键(将 event2 替换为实际设备节点):

./smdt_key_demo -d /dev/input/event2

按下开发板 UBOOT 按键,程序将检测到按键事件并打印状态信息。

测试效果如下:

root@linaro-alip:/# ./key_demo -d /dev/input/event2 Waiting for button press... Button pressed! Button pressed! Button pressed!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值