使用最少的针脚来管理16个按钮式键盘

电子说

1.3w人已加入

描述

步骤1:简介

我最近致力于一种方法来管理连接到Arduino克隆的4x4触摸键盘矩阵。设置点是:

-仅使用4 + 1引脚而不是atmega328p上的8引脚

-通过I2C(2引脚)添加LCD显示4x20 CHAR链接

-来控制数字和模拟输出。

因此,许多事情都需要以I/O的正数来控制。

步骤2:使用的东西:

Arduino

我购买了一个4x20字符的LCD显示器和一个I2C模块适配器,用于将显示器与SDA(A4)和SCL(A5)引脚连接在我的arduino克隆上。

我使用了著名的,现在已经过时的MM74C922N:8到4种方式的转换器适合4x4矩阵键盘。

我创建了一个基于arduino的克隆,基于

第3步:原理图和开发板:

Arduino

Arduino

该板由以下材料制成:

-LCD键盘仅可用于Arduino IDE,不适用于LDmicro(梯形图编程)

-MM74C922N板:在4位DCBA上的16个二进制值上编码的16个按钮。按下按钮时:蓝色LED亮起,并且DCBA上出现一个值(A为LSB)。释放按钮时:蓝色LED指示灯熄灭,并且DCBA上的值重置为零。

-Arduino atmega238p克隆板。

步骤4:使用带有梯形图编程的LDmicro:

Arduino

Arduino

Arduino

Arduino

Arduino

Arduino

Arduino

Arduino

要输入的代码由16个按键值中的4个值组成,因此为16x16x16x16组合。

绘制SFC之后,必须将其转换为用我的

instructables之一中给出的方法进行梯形图:

https://www.instructables.com/id/Arduino-tomation -。..

键入后,将其编译为xxxx.hex,然后使用KHAZAMA下载器进行下载。

无法在LDmicro上对LCD显示进行编程。

我给LDmicro zip附带草图SERRURE.id和KHAZAMA下载器。

步骤5:将Arduino IDE 1.8.x与Mightycore和SMlib结合使用:

Arduino

我将SFC转换为状态机。然后,我将Arduino IDE与Mightycore和SM库一起使用。

我显示以下消息:错误,等待,解锁,到达状态,LCD显示屏上的按键值。

我给你草图和SM库。对于Mightycore,请看以下内容:

https://www.instructables.com/id/Arduino-18x-Clone 。..

步骤6:结论:

这是管理16个键盘的两种方法,花了我几个小时才能找到好的顺序,但是现在可以正常使用了。您必须遵循以下步骤:

-1检测到DA引脚上升沿上的按键

-2读取DCBA上生成的值并与正常值进行比较

除非肯定不能正常工作。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分