瑞芯微RK安卓Android主板GPIO按键配置方法,触觉智能嵌入式开发
触觉智能分享,瑞芯微RK安卓Android主板GPIO按键配置方法,方便大家更好利用空闲IO!由触觉智能Purple Pi OH鸿蒙开发板演示,搭载了瑞芯微RK3566四核处理器,树莓派卡片电脑设计,支持安卓Android、开源鸿蒙OpenHarmony、Linux多系统,适合嵌入式开发入门学习。
设备树修改
空闲IO选择
由下图可得当前IO是主板上一个没有用到的IO,对应的GPIO为:GPIO4_A4。
设备树配置
在Purple Pi OH官方代码中,设备树:ido-pi-oh3566-core.dtsi文件默认加了GPIO_KEY配置,所以我们默认不需要移植驱动,用官方提供的代码上添加自己的IO即可,配置代码如下:
gpio_keys: gpio_keys {
status = "okay";
compatible = "gpio-keys";
autorepeat;
pinctrl-names = "default";
pinctrl-0 = <&leds_keys_gpio>;
-
key_sw1 {
-
debounce-interval = <100>;
-
gpios = <&gpio4 RK_PA4 GPIO_ACTIVE_LOW>;
-
label = "GPIO Key sw1";
-
linux,code = <KEY_F1>;//键值
-
// wakeup-source;
-
gpio-key,wakeup;
-
};
}
&pinctrl {
- gpio-keys {
- leds_keys_gpio: leds_keys-gpio {
-
rockchip,pins = <4 RK_PA4 RK_FUNC_GPIO &pcfg_pull_up>;//默认上拉
- };
};
};
键值对应的文件位于以下目录,可按需求修改:
include/dt-bindings/input/rk-input.h
修改完成后,进入内核目录单独编译内核
./mk_kernel.sh ido-pi-oh3566-v1.img -j4
编译成功后,会在当前目录下生成boot.img文件,最后进行内核烧录测试即可。
测试验证
通过调试串口或者ADB进入系统,执行getevent -l命令测试GPIO按键,命令如下:
130|console:/ # getevent -l
add device 1: /dev/input/event3
name: "gpio_keys"
add device 2: /dev/input/event1
name: "rk805 pwrkey"
add device 3: /dev/input/event2
name: "adc-keys"
add device 4: /dev/input/event0
name: "fdd70030.pwm"
add device 5: /dev/input/event4
name: "rk-headset"
执行后,将GPIO4_A4对应的引脚短接到GND即可触发,如下所示:
当成功返回键值即可测试成功。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 使用C#创建一个MCP客户端
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现