keypad(键盘矩阵)指南

keypad(键盘矩阵)指南目录keyPad简介API说明示例常见问题相关资料以及开发板购买链接keyPad简介Air724UG支持6X6键盘矩阵,可以在luat二次开发的方式应用,但注意AT版本不支持键盘功能。API说明API接口描述powerKey.setup(longPrd,longCb,shortCb)开机键功能配置常用api_1介绍常用api_2介绍示例1.创建一个tKeypad表,储存所有按键值(16个键盘元素+1个开关机键元素)–每个元素的索引为行列值拼接而成的字符

大家好,又见面了,我是你们的朋友全栈君。

keyPad

简介

Air724UG支持6X6键盘矩阵,可以在luat二次开发的方式应用,但注意AT版本不支持键盘功能。

API说明

API接口 描述
powerKey.setup(longPrd, longCb, shortCb) 开机键功能配置

常用api_1介绍
常用api_2介绍

示例

1.创建一个tKeypad表,储存所有按键值(16个键盘元素+1个开关机键元素)

--每个元素的索引为行列值拼接而成的字符串,值为按键名的字符串
--例如:按键名为"1"的行值为5,列值为3,则["53"] = "1"
local tKeypad =
{ 
   
    ["53"] = "1",["52"] = "2",["51"] = "3",["50"] = "A",
    ["43"] = "4",["42"] = "5",["41"] = "6",["40"] = "B",
    ["33"] = "7",["32"] = "8",["31"] = "9",["30"] = "C",
    ["23"] = "*",["22"] = "0",["21"] = "#",["20"] = "D",
    ["255255"] = "开关机"
}

2.定义某个keyName按键的长按下消息处理函数

local function keyLongPressTimerCb(keyName)
    log.info("keypad.keyLongPressTimerCb",keyName)

3.定义一个按键消息处理函数

--按键消息处理函数
local function keyMsg(msg)
    --保存按键名
    --msg.key_matrix_row:行索引
    --msg.key_matrix_col:列索引

    local keyName = tKeypad[msg.key_matrix_row..msg.key_matrix_col]  
    log.info("keyMsg",msg.key_matrix_row,msg.key_matrix_col,msg.pressed,keyName)  
    if msg.pressed then      
        --第一个参数:keyName按键的长按消息处理函数
        --第二个参数:超时时间为3秒
        --第三个参数:按键名
        sys.timerStart(keyLongPressTimerCb,300,keyName)
    end
end

4.注册按键消息处理函数

rtos.on(rtos.MSG_KEYPAD,keyMsg)

5.初始化键盘阵列

--第一个参数:固定为rtos.MOD_KEYPAD,表示键盘  
--第二个参数:目前无意义,固定为0  
--第三个参数:键盘阵列keyin标记,例如使用了keyin2、keyin3、keyin4、keyin5,则第三个参数为1<<2|1<<3|1<<4|1<<5 = 0x3C    行
--第四个参数:键盘阵列keyout标记,例如使用了keyout0、keyout1、keyout2、keyout3,则第四个参数为1<<0|1<<1|1<<2|1<<3 = 0x0F  列
rtos.init_module(rtos.MOD_KEYPAD,0,0x3c,0x0F)

6.把键盘阵列keyin标记和keyout标记软排线接口插入模块相对印引脚,比如键盘的keyin2对印模块的keyin2脚


7.在了解并修改了DEMO后将demo和对应的底包下载到开发板,下载的方式这里不详细说明请参考环境搭建中的烧录章节。


8.下载完成后重启,我们随便按一个按键,可以在luatools工具上看到打印的数据。


比如按下1键时:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FSeNWzYu-1624771263903)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20210328182956060_微信截图_20210328161906.png “undefined”)]

按下A键时:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-79nptfPX-1624771263906)(http://openluat-luatcommunity.oss-cn-hangzhou.aliyuncs.com/images/20210328183038808_微信截图_20210328163505.png “undefined”)]


常见问题

为什么按下按键时没反应?
看下按键引脚是否与模块引脚是否接对?键盘是不是ok?

相关资料以及开发板购买链接

Air724UG开发板
Air724 开发板使用说明

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/137620.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 浅谈Android指纹识别技术[通俗易懂]

    浅谈Android指纹识别技术[通俗易懂]浅谈Android指纹识别技术当今时代,随着移动智能手机的普及,指纹解锁早已是手机不可或缺的一个功能。除了现在比较新款的iPhone或者部分手机采用了FaceID之外,人们几乎天天都会用到指纹解锁技术。但你知道指纹解锁技术背后的原理吗?原理指纹识别的前提是对指纹的采集,所以我们首先就应该了解第一步:指纹采集。第一步:指纹采集指纹采集主要分为两种方式:滑动式采集和按压式采集滑动式采集是将手指在传感器上滑过,从而使手机获得手指指纹图像。滑动式采集具有成本相对偏低,而且可以采集大面积图像的优势。但这

    2022年8月10日
    1
  • docker卸载命令_删除docker

    docker卸载命令_删除docker删除容器(jenkins官网提供的安装方式,删除比较特殊,因为jenkins自己创建了数据卷,所以要删除数据卷)不然,就算删除了容器,再运行镜像,以前的配置还是删不掉,运行的还是以前的配置首先,关停并删除jenkins容器dockerstop容器iddockerrm容器id然后,查看数据卷(如果是用挂载目录方式安装的jenkins的话,就不需要执行下面的步骤了)dockervolumels发现一个jenkins_home的数据卷,删除数据卷dockervolume

    2025年10月3日
    5
  • ios 越狱 真机调试

    ios 越狱 真机调试开发环境:Xcode4.5.2ios设备需要越狱并从Cydia安装appsync安装appsync步骤:1、找到安装的cydia,第一次运行将会弹出提示,选择开发者即可2、在工具栏中选择软件源(iphone/itouch选管理),然后点右上角的编辑3、点左上角添加4、输入源:http://yuan.duowan.com/(多玩的源),点添加源,等待添加完成,然后点返回C

    2022年5月17日
    37
  • Mysql常见错误提示及解决方法

    Mysql常见错误提示及解决方法Mysql常见错误提示及解决方法

    2022年4月24日
    31
  • 怎么用dos命令打开计算机,如何使用DOS命令打开C盘下的文件夹dos如何打开文件夹…[通俗易懂]

    如何使用DOS命令在C驱动器下打开文件夹答案:Windows键+R打开并运行Entercmd,然后按Enter打开命令提示符程序.键入“cd..”dos命令进入c盘根目录,然后按Enter键返回上一个目录.输入“cd\”,然后按Enter.如何打开该文件夹将直接返回到C驱动器的根目录.在CMD程序中输入“d:”,然后按Enter键进入D驱动器.进入D驱动器后,输入“c…

    2022年4月15日
    121
  • 市场调研很难做?这些软件帮你理清思绪「建议收藏」

    市场调研很难做?这些软件帮你理清思绪「建议收藏」市场营销在进行市场调研,收集用户需求数据,追踪各市场策略的落实情况等日常工作时,需要使用各种图文工具帮助提高办公效率,推荐8个能够提高效率的神器。亿图脑图(MindMaster):专业思维导图绘制神器亿图脑图是一款国产专业思维导图绘制软件,素材丰富、模板多样,操作简单,易于上手,上千种素材和导图模板支持任意搭配,导图社区收纳各界大佬的思维导图支持编辑下载。5118:热点词汇挖掘神器市场达人可以通过5118官网,查询各个行业词库,了解行业热点,挖掘商机。石墨文档:实时协作办

    2025年6月5日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号