搜索
热门关键词:
触摸屏
单片机
电路图
IR
Microsemi
手机版
官方微博
微信公众号
登录
|
免费注册
首页
新闻
新品
文章
下载
电路
问答
视频
职场
杂谈
会展
工具
博客
论坛
在线研讨会
技术频道:
单片机/处理器
FPGA
软件/编程
电源技术
模拟电子
PCB设计
测试测量
MEMS
系统设计
无源/分立器件
音频/视频/显示
应用频道:
消费电子
工业/测控
汽车电子
通信/网络
医疗电子
机器人
当前位置:
EEChina首页
›
论坛
›
新手园地
返回列表
查看:
1504
|
回复:
0
【疯壳·嵌入式教程4】手把手教你做平板电脑-设备按键驱动实验教程
[复制链接]
Linda-x
Linda-x
当前离线
积分
9771
发表于 2022-8-22 10:39:47
|
显示全部楼层
|
阅读模式
贸泽电子有奖问答视频,回答正确发放10元微信红包
关键词:
嵌入式开发
,
平板电脑
,
设备按键
,
驱动实验
,
教程
设备按键驱动实验教程
——疯壳·
嵌入式
平板开发
第一节 引言 --- 如何看一个 GPIO 按键的
电路
原理图
下图来源于文档 3128_sdk_a02_20170325.pdf 中第 9 页和第 12 页。
如下第一张图 PMIC_PWRON 引脚在按钮按下前一直保持高电平,按键按下后变成低电平并触发中断休眠/唤醒屏幕。第一张图所示 pmic_pwron 连接的是一个按键电路,第二张图所示 pmic_pwron 连接的是 GPIO0_A2。综上所述,按键可以由 gpio 来实现的。
图1
第二节 按键配置实例 --- 以 GPIO2_D1 为例,高电平触发上升沿来模拟按键被按下
gpio 引脚通常可以配置成输入和输出功能。作为输入功能,一般在 linux 系统里面是以中断的方式来使用;如果作为输出功能一般主要用来提供一个高低电平信号。本文利用 gpio 的输入功能来模拟一个按键。
本章主要以 GPIO2_D1 为例子讲解,给 GPIO2_D1 一个高电平来触发上升沿产生中断操作并串口打印一条语句。
图2
图示红框位置表示将要配置的 gpio 在开发板上的位置
gpio 在
电路图
中的位置
图3
第三节 rk3128 开发板 gpio 在 DTS 中的配置
rk3128 驱 动 配 置 使 用 的 是 Device Tree 的 方 式 , 所 以 在 kernel 路径 $(dir)\rk3128-source\kernel\arch\arm\boot\dts 中 rk3128-study.dts 描述了我们整个系统的驱动配置,gpio 的配置如下所示:
代码1
第四节 实验步骤
1.如何看中断是否注册成功 --- cat /proc/interrupts
我们注册的中断名字是:gpio_input_test 对应于中断号 160
图4
2.kernel 实验步骤
图5
第五节 实验现象
以一根杜邦线为例,低电平触发中断
图6
第六节 AD 按键
什么是 AD 按键:“AD 检测法实现简单实用的按键”,仅仅需要一个 AD 接口和若干的
电阻
,就可以实现 1 个,2 个,3 个 多个按键输入。原理就是按键按下的时候,IO 口将检测
到不同的
电压
值。
本节第一张图所示三个按键就组成了 AD 按键并对应不同的阻值报告给 cpu,cpu 检测后知道那个键被按下,相应的 driver 配置看$(dir)\rk3128-source\kernel\arch\arm\boot\dts 中rk3128-study.dts 的&adc{ }选项,源代码对应文件是$(dir)\rk3128-source\kernel\drivers\input\keyboard\rk_keys.c
下图来源于文档 3128_sdk_a02_20170325.pdf 中第 9 页。
图一 AD 按键原理图
图7
图二 cpu 侧接线图
图8
第七节 PMIC_PWRON 休眠/唤醒屏幕
本节主要是继续第一节课的原理图讲解一下屏幕的休眠/唤醒功能(gpio 的一个应用) 相应的 driver 配置看$(dir)\rk3128-source\kernel\arch\arm\boot\dts 中 rk3128-study.dts的&adc{...}选项,源代码对应文件是$(dir)\rk3128-source\kernel\drivers\input\keyboard\rk_keys.c
注意中断响应函数 keys_isr(int irq, void *dev_id),具体的屏幕休眠/唤醒由它来处理。
如需定制开发,请通过官网“疯壳”网页底部的“联系我们”进行联系
文件下载请点击:
4、设备按键驱动实验.pdf
(887.32 KB)
2022-8-22 10:38 上传
点击文件名下载附件
相关文章
•
国产!基于瑞芯微RK3576ARM八核2.2GHz A72 工业评估板——多屏同显、异显方案演示
•
基于瑞芯微RK3576国产ARM八核2.2GHz A72 工业评估板——ROS2系统使用说明
•
基于瑞芯微RK3562 四核 ARM Cortex-A53 + 单核 ARM Cortex-M0工业评估板——Linux应用开发手册
•
基于瑞芯微RK3562 四核 ARM Cortex-A53 + 单核 ARM Cortex-M0——NPU开发案列
•
明远智睿SSD2351核心板助力智能监控系统升级
•
明远智睿SSD2351核心板在物联网领域的应用实践
•
延时仅4us!最新的全国产RK3568J+FPGA PCIe实时通信方案来了
•
6T算力NPU!基于RK3588国产平台的YOLOv5目标识别案例,真的强!
•
明远智睿SSD2351核心板:硬件性能深度剖析
•
明远智睿RK3588开发板助力工业机器智能化升级
回复
举报
返回列表
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
本版积分规则
发表回复
回帖后跳转到最后一页
浏览过的版块
PCB设计
电源技术
会展活动
职业发展
通信/网络
单片机/处理器
软件编程/OS
测试测量
工业/测控
消费电子
关于我们
-
服务条款
-
使用指南
-
站点地图
-
友情链接
-
联系我们
电子工程网
© 版权所有
京ICP备16069177号
| 京公网安备11010502021702
快速回复
返回顶部
返回列表