在8 * 8簧片开关矩阵

时间:2016-12-02 05:32:11

标签: arduino circuit-diagram

我正在设计8 * 8簧片开关矩阵,它将连接到Arduino。我正在使用Arduino Duemilanove。我已完成矩阵部分,但不知道如何连接以及连接其他元素的位置。 My Matrix circuit

  

我决定使用以下项目:

  • Arduino(Duemilanove)
  • 64x Reed Switch
  • 64x二极管(1N4148)
  • 20x电阻器(10K)
  • 1x 74HC595
  • 1x 74HC165

我不知道在哪里放置电阻器和移位寄存器以及从移位寄存器到arduino的连接。我需要电路图中的帮助。请帮我解决电路图。

参考: https://mtifall10.wordpress.com/2010/12/10/magnetic-sensing-chessboard/

2 个答案:

答案 0 :(得分:0)

我不是专家,但我会尽我所能。我无法向你保证这是100%正确的。

由于数字端口数量有限,您还必须使用模拟端口..在您的情况下,a,b,c,d ......引脚为“正”(电流从正到负) 。引脚1,2,3 ......是你的接地/负极。

电阻应连接到每个正极引脚,在您的情况下为引脚a,b,c等。

编辑:对不起,我考虑过移位寄存器。您必须阅读数据表。您可能会使用具有脉冲宽度调制(PWM),GND端口和VoltageOut端口的端口。

答案 1 :(得分:0)

我会使用类似的东西:

enter image description here

默认情况下,LOAD状态应为HIGH状态,LOW级别会在74HC165上加载输入,而LOWHIGH更改加载输出。

因此,您只需向LOW发送短LOAD个脉冲,然后将下一行扫描(将在下一轮中加载)发送到SPI。您必须记住上一行,或者您必须在165上将QH*输出从595连接到SER并移出两个字节,一个虚拟和第二个将是要扫描的新行。

矩阵扫描为低电平有效。因此,您必须发送一位清零(选定行)和休息位设置的字节。它与读取类似(但您也可以使用165的反转输出直接获得反转值)。