RK3568 AD按键改成GPIO按键

authordaisy.skye的博客_CSDN博客-嵌入式,Qt,Linux领域博主

相对路径

kernel/arch/arm64/boot/dts/rockchip/ido-evb3568-v2b.dtsi

代码解析

linux,input-type = <1>;//input类型 <EV_KEY>按键 即1

gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;//io脚地址 高电平响应

debounce-interval = <15>;//抖动延迟时间

adb 调试

adb shell input keyevent 3 //返回home

KeyEvent类,键码的常量定义

定义了KeyEvent类,其中包含了键码的常量定义,包括KEYCODE_HOME

frameworks/base/core/java/android/view/KeyEvent.java

Home键的事件处理逻辑

frameworks/base/services/core/java/com/android/server/policy/PhoneWindowManager.java

参考链接

Android Keycode详解_笔记大全_设计学院

	gpio_key:gpio-key {
			compatible = "gpio-keys";
			input-name = "gpio-keys";//compatible = "rockchip,key";
			status = "okay";		menu-key {
			label = "menu";
			linux,code = <KEY_MENU>;
			linux,input-type = <1>;//input类型 <EV_KEY>按键 即1
			gpios = <&gpio1 RK_PB2 GPIO_ACTIVE_HIGH>;//高电平响应
			debounce-interval = <15>;//抖动延迟时间};		vol-up-key {
			label = "volume up";
			linux,code = <KEY_VOLUMEUP>;
			linux,input-type = <1>;
			gpios = <&gpio1 RK_PB1 GPIO_ACTIVE_HIGH>;
			debounce-interval = <15>;};		vol-down-key {
			label = "volume down";
			linux,code = <KEY_VOLUMEDOWN>;
			linux,input-type = <1>;
			gpios = <&gpio1 RK_PB0 GPIO_ACTIVE_HIGH>;
			debounce-interval = <15>;};		back-key {
			label = "back";
			linux,code = <KEY_BACK>;
			interrupts = <13 IRQ_TYPE_LEVEL_HIGH>;
			linux,input-type = <1>;
			gpios = <&gpio1 RK_PA4 GPIO_ACTIVE_HIGH>;
			debounce-interval = <15>;};};

adb shell

130|rk3568_r:/ $ cat /sys/kernel/debug/gpio130|rk3568_r:/ $ getevent
add device 1: /dev/input/event2
  name:     "jadard-touchscreen"
add device 2: /dev/input/event3
  name:     "gpio-key"
add device 3: /dev/input/event1
  name:     "rk805 pwrkey"
add device 4: /dev/input/event0
  name:     "fdd70030.pwm"
/dev/input/event3: 0001 0073 00000001
/dev/input/event3: 0000 0000 00000000
/dev/input/event3: 0001 0073 00000000
/dev/input/event3: 0000 0000 00000000
/dev/input/event3: 0001 0073 00000001
/dev/input/event3: 0000 0000 00000000gpiochip1: GPIOs 32-63, parent: platform/fe740000.gpio, gpio1:
 gpio-36  (                    |back                ) in  lo
 gpio-40  (                    |volume down         ) in  lo
 gpio-41  (                    |volume up           ) in  lo
 gpio-42  (                    |menu                ) in  lo
 gpio-56  (                    |pwdn                ) out lo
 gpio-57  (                    |reset               ) out lo
 gpio-59  (                    |bt_default_wake     ) in  hi
 gpio-60  (                    |bt_default_reset    ) out lo

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/197465.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

CPU/GPU实现向量内积

向量内积&#xff08;点乘/点积/数量积&#xff09;&#xff1a;两个向量对应元素相乘之后求和&#xff1a; CPU实现&#xff1a; //cpu 实现一下向量内积#include<stdio.h> template<typedef T> void dot_mul(T *a, T *b, T *c, int n) { double tmp 0;for(i…

深度学习人脸表情识别算法 - opencv python 机器视觉 计算机竞赛

文章目录 0 前言1 技术介绍1.1 技术概括1.2 目前表情识别实现技术 2 实现效果3 深度学习表情识别实现过程3.1 网络架构3.2 数据3.3 实现流程3.4 部分实现代码 4 最后 0 前言 &#x1f525; 优质竞赛项目系列&#xff0c;今天要分享的是 &#x1f6a9; 深度学习人脸表情识别系…

clickhouse 业务日志告警

一、需求 对入库到clickhouse的业务日志进行告警&#xff0c;达阀值后发送企业微信告警。 方法一、 fluent-bit–>clickhouse(http)<–shell脚本,每隔一分钟获取分析结果 --> 把结果保存到/dev/shm/目录下 <-- node_exporter读取指标入库到prometheus<-- rules…

装备中国功勋企业——兰石重装,建设LTC全流程管理|基于得帆云低代码的CRM案例系列

兰石重型装备股份有限公司 兰石重型装备股份有限公司&#xff08;以下简称“兰石重装”&#xff09;成立于2001年&#xff0c;经营范围为炼油、化工、核电等能源领域所需的装备的设计、制造、安装、成套与服务&#xff1b;工程项目建设与服务&#xff1b;机械加工&#xff1b;检…

用css实现原生form中radio单选框和input的hover已经focus的样式

一.问题描述&#xff1a;用css实现原生form中radio单选框和input的hover已经focus的样式 在实际的开发中&#xff0c;一般公司ui都会给效果图&#xff0c;比如单选按钮radio样式&#xff0c;input输入框hover的时候样式&#xff0c;以及focus的时候样式&#xff0c;等等&#…

vue动态配置路由

文章目录 前言定义项目页面格式一、vite 配置动态路由新建 /router/utils.ts引入 /router/utils.ts 二、webpack 配置动态路由总结如有启发&#xff0c;可点赞收藏哟~ 前言 项目中动态配置路由可以减少路由配置时间&#xff0c;并可减少配置路由出现的一些奇奇怪怪的问题 路由…

C语言-求一个整数储存在内存中的二进制中1的个数

#define _CRT_SECURE_NO_WARNINGS #include<stdio.h>int main() {/*求一个整数储存在内存中的二进制中1的个数*/int number;scanf("%d", &number);int i 0;int count 0;for (i 0; i < 32; i){if (1 ((number >> i) & 1)){count;}}printf(…

buildadmin+tp8表格操作(7.1)表格的事件监听(el-table中的事件)

因为buildAdmin是封装的 el-table的组件&#xff0c;所以el-table中的事件&#xff0c; 也是可以使用的&#xff0c; 两者有几个事件是有共同的&#xff08;比如 双击事件&#xff09;&#xff0c; 这时可以根据自己的需要自行选择 以下代码是 buildadmin 使用 el-table中的事…

记录一次较为完整的Jenkins发布流程

文章目录 1. Jenkins安装1.1 Jenkins Docker安装1.2 Jenkins apt-get install安装 2. 关联github/gitee服务与webhook2.1 配置ssh2.2 Jenkins关联2.3 WebHook 3. 前后端关联发布 1. Jenkins安装 1.1 Jenkins Docker安装 Docker很好&#xff0c;但是我没有玩明白如何使用Docke…

通达信的ebk文件

我们在通达信软件中 调出 “自定义板块设置” 这个菜单&#xff0c;点击“导出”&#xff0c;会提示你存储 “自选股.EBK”&#xff0c;其实就是对自定义板块里的目录进行备份的一种方式&#xff0c; 当我们打开 这个文件&#xff0c;你会发现其实就是存储了 股票代码&#xff…

电脑监控软件都有哪些,哪款好用丨全网盘点

电脑监控软件是一种用于监视和控制计算机的软件工具&#xff0c;可以帮助企业和个人了解计算机的使用情况&#xff0c;保护数据安全&#xff0c;提高工作效率等。 电脑监控软件都有哪些&#xff1a; 1、域之盾软件 这是一款功能强大的电脑监控软件&#xff0c;可以实时监控电脑…

极速进化,融合“新“生 | StarRocks Summit 2023 技术交流峰会圆满落幕

2023年11月17日&#xff0c;由 StarRocks 社区发起、镜舟科技主办的 StarRocks 年度大型技术交流峰会 StarRocks Summit 2023 在上海成功举行。 本次峰会以「极速进化&#xff0c;融合"新"生」为主题&#xff0c;40余场分享演讲在全天密集开展&#xff0c;来自平安银…