×

减少数字键盘所需的引脚数量开源

消耗积分:0 | 格式:zip | 大小:0.22 MB | 2022-10-28

分享资料个

描述

介绍

该项目的目的是显着减少数字键盘所需的引脚数量。这是因为与 Arduino Uno 或 Nanoboards 上可用的 I/O 引脚相比,我们经常需要更多的 I/O 引脚。

普通数字键盘采用矩阵结构:一个 4x3 键盘,需要 4+3 个 Arduino 数字引脚。网上有许多库可以与 Arduino 一起使用。

我的解决方案

我提出的解决方案要好得多,因为它只使用三个模拟输入,电路如下图所示。

 
poYBAGNYy66Ad4L_AACPFCn4u40048.jpg
 

 

对于每一列,只有 4 个电压值,对应于 4 个键中的每一个,加上零伏,以防没有键被按下。在等效方案 (b) 中,R1e 表示四个电阻器 R1-R4 之一,而 R2e 是三个电阻器 R5-R7 之一。

现在让我们看看如何制作四个最宽的间隔。首先可以使电阻 R2e = R5 = R6 = R7 相等,然后我们可以设置 R1 = 0 以使输出对应于 5V 的第一行。

当 R2=330 ohm, R3= 1 k ohm, R4= 3 k ohm 并且 R5, R6, R7= 1 k ohm 时,每个输出的间隔如下:

 

 
pYYBAGNYy7CACgggAABpj9yrCQw800.jpg
 

如您所见,三个输出的间隔是最大的,您可以使用六个标准电阻器,公差为 ±5%。通过额外的模拟输入和另一个电阻器,可以使用 4x4 键盘等等。下图显示了与Arduino的连接。

 

 
poYBAGNYy7SARIx0AAD8f4PM9Os258.jpg
 

 

在图中,电阻器 R1 连接到线路 2,因为线路 1 上的电阻器已用电线绘制,因此电阻器参考已按 1 缩放。可以根据需要修改引脚分配,只要它们可配置为模拟引脚即可。

当然,如果 Arduino 以 3.3V 供电,则不会发生任何变化,因为 ADC 转换器默认使用电源电压并且 ADC 编号不会改变。

为了测试程序,没有这种类型的键盘,我用回收的键构建了它,下图显示了我的原型。5 针右连接器用于将其连接到 Arduino。

 

 
 
 

 

 


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

评论(0)
发评论

下载排行榜

全部0条评论

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