测试

安装 input-utils

pi@raspberrypi:~ $ sudo apt-get install input-utils
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following NEW packages will be installed:
input-utils
0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded.
Need to get 14.9 kB of archives.
After this operation, 60.4 kB of additional disk space will be used.
Get:1 http://mirrors.shu.edu.cn/raspbian/raspbian stretch/main armhf input-utils armhf 1.0-1.1 [14.9 kB]
Fetched 14.9 kB in 1min 20s (183 B/s)
Selecting previously unselected package input-utils.
(Reading database ... 124722 files and directories currently installed.)
Preparing to unpack .../input-utils_1.0-1.1_armhf.deb ...
Unpacking input-utils (1.0-1.1) ...
Setting up input-utils (1.0-1.1) ...
Processing triggers for man-db (2.7.6.1-2) ...
pi@raspberrypi:~ $

lsinput

/dev/input/event0
bustype : BUS_HOST
vendor : 0x1
product : 0x1
version : 256
name : "gpio_keys"
phys : "gpio-keys/input0"
bits ev : EV_SYN EV_KEY

input-events. 如果没有键按下,timeout

pi@raspberrypi:~ $ input-events 0
/dev/input/event0
bustype : BUS_HOST
vendor : 0x1
product : 0x1
version : 256
name : "gpio_keys"
phys : "gpio-keys/input0"
bits ev : EV_SYN EV_KEY waiting for events
timeout, quitting

如果有键按下, 这里的key值是dts中定义的 linux,code = <100>;

pi@raspberrypi:~ $ input-events 0
/dev/input/event0
bustype : BUS_HOST
vendor : 0x1
product : 0x1
version : 256
name : "gpio_keys"
phys : "gpio-keys/input0"
bits ev : EV_SYN EV_KEY EV_REP waiting for events
13:59:42.712941: EV_KEY KEY_RIGHTALT (0x64) pressed
13:59:42.712941: EV_SYN code=0 value=1

注: 上一篇中的dts中gpio-keys的部分需要加上

autorepeat;

树莓派 -- 输入设备驱动 (key) 续1的更多相关文章

  1. 树莓派 -- 输入设备驱动 (key) 续2: 转载 Setting up a GPIO-Button “keyboard” on a Raspberry Pi

    使用device-tree (DT) overlay应该是更方便的方法: http://blog.gegg.us/2017/01/setting-up-a-gpio-button-keyboard-o ...

  2. 树莓派 -- 输入设备驱动 (key)

    输入设备(如按键,键盘,触摸屏等)是典型的字符设备,其一般工作原理是底层在按键或触摸等动作发生时产生一个中断,然后CPU通过SPI,I2C总线读取键值. 在这些工作中之后中断和读键值是与设备相关的,而 ...

  3. linux 输入设备驱动

    <输入子系统简介> a:背景 内核的输入子系统是对“分散的”,“多种不同类别”的输入设备(键盘,鼠标,跟踪杆,触摸屏,加速度计等)进行“统一处理”的驱动程序.具有如下特点: a-1:统一各 ...

  4. Android中Input型输入设备驱动原理分析(一)

    转自:http://blog.csdn.net/eilianlau/article/details/6969361 话说Android中Event输入设备驱动原理分析还不如说Linux输入子系统呢,反 ...

  5. Android中Input型输入设备驱动原理分析<一>

    话说Android中Event输入设备驱动原理分析还不如说Linux输入子系统呢,反正这个是没变的,在android的底层开发中对于Linux的基本驱动程序设计还是没变的,当然Android底层机制也 ...

  6. python代码实现树莓派3b+驱动步进电机

    python代码实现树莓派3b+驱动步进电机 之前买了个树莓派,刚买回来那会儿热情高涨,折腾了一段时间,然后就放那吃灰了.前几天忽然想起来这个东西了,决定再玩玩儿,于是就从某宝上购买了一套步进电机.驱 ...

  7. 树莓派linux驱动学习之hello world

    最近想学习一下linux驱动,看了一些书和教学视频,大概了解了一下,不过要想深入,肯定需要实践.手上有几块linux的板子,最终选择了树莓派作为我的实验平台,资料比较丰富,接口也比较简单. 程序员的入 ...

  8. 树莓派linux驱动学习之LED控制

    前面我们编写了hello world的程序,接下来继续研究GPIO功能,通过GPIO来控制LED的亮灭,这在单片机中应该算是十分简单的一个程序了,但是在Linux系统中控制GPIO没有那么简单,难点就 ...

  9. 树莓派pwm驱动好盈电调及伺服电机

    本文讲述如何通过树莓派的硬件PWM控制好盈电调来驱动RC车子的前进后退,以及如何驱动伺服电机来控制车子转向. 1. 好盈电调简介 车子上的电调型号为:WP-10BLS-A-RTR,在好盈官网并没有搜到 ...

随机推荐

  1. [App Store Connect帮助]八、维护您的 App(4.1)监控顾客评论:评分与评论概述

    App Store 上的评分与评论 顾客可以按照 1 星至 5 星的级别对您的 App 进行评分.顾客还可为您的 iOS 和 macOS App 撰写评论,但无法为 Apple TVOS App 撰写 ...

  2. gRPC入门

    一.gRPC简介 在介绍gRPC之前先说一下RPC(Remote Procedure Call),也叫远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议.相比 ...

  3. PowerDesigner在PDM转换为sql脚本时报错Generation aborted due to errors detected during the verification of the mod

    在设计概念数据模型(CDM)之后,转换为物理数据模型(PDM),之后转换为sql脚本时报错Generation aborted due to errors detected during the ve ...

  4. InputFilter在过滤空格时重复输入的问题

    正确做法:editText.setFilters(new InputFilter[] { new InputFilter() { @Override public CharSequence filte ...

  5. python中字典的陷阱

    把字典与列表组合,如 i=20 s=[]#定义一个空列表 b={'d':i}#定义一个字典 while i>0: i=i-1 b['d']=i#更新字典的值 s.append(b) print( ...

  6. [Usaco2006 Jan] Dollar Dayz 奶牛商店

    Description 约翰到奶牛商场里买工具.商场里有K(1≤K≤100).种工具,价格分别为1,2,-,K美元.约翰手里有N(1≤N≤1000)美元,必须花完.那他有多少种购买的组合呢? Inpu ...

  7. PHP获取今天内的时间 今天开始和结束的时间戳

    $t = time(); $start = mktime(0,0,0,date("m",$t),date("d",$t),date("Y", ...

  8. 题解报告:hdu 1159 Common Subsequence(最长公共子序列LCS)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159 Problem Description 给定序列的子序列是给定的序列,其中有一些元素(可能没有) ...

  9. jmeter(十六)Jmeter之Bean shell使用(一)

    一.什么是Bean Shell BeanShell是一种完全符合Java语法规范的脚本语言,并且又拥有自己的一些语法和方法; BeanShell是一种松散类型的脚本语言(这点和JS类似); BeanS ...

  10. Swift 基础语法入门(一)

    一.变量和常量 1.声明常量和变量 用let来声明常量  let radius = 10 用var来声明变量 var age = 20   或者是var x = 0.0, y = 0.0, z = 0 ...