制作电子棋盘
我想制作一个木制棋盘,可以用普通棋子(例如,不是使用RFID代码,磁铁等的改良棋子)来玩,但是要与一个注意到我的动作并充当第二个玩家。 我一直在考虑如何检测板上的零件,因此我做出了不需要识别哪一块的决定:“真相”在软件中,因此如果我将一块从A移到B ,该软件能够找出移动了哪一部分。 因此,我想到在棋盘的每个区域钻两个孔,一个在中间,一个在右上角: 中间的一个将用于亮度传感器,以检测一块物体是否站在场地上。 拐角处的一个将用于LED指示灯,以显示用户必须为计算机移动的零件,以便真实情况与软件情况再次匹配。 我想使用Raspberry Pi作为运行软件的硬件基础,它将用Node.js编写(但这对这个问题应该不重要)。 因此,我最终需要分别解决的是64个亮度传感器和64个LED。换句话说:我需要64个输出和64个输入。当然,这是Raspberry Pi无法解决的问题-我认为必须有一个比拥有128个I / O端口更好的方法。 由于我认为检测电路板的状态是更重要的任务,因此我开始在网上搜索如何处理8x8的开关矩阵。我发现了使用微控制器的建议,该微控制器顺序扫描电路板的列,并在每列中检测是否使用了行(=字段)。 这将减少复杂度,使其具有8个输出和8个输入(以便能够读取板的状态)。 对此,我有几个问题: 我的想法是否正确,即这是正确的方法,还是我应该提防的更好的选择? 由于我没有使用微控制器的经验,我需要注意什么?我是否只需要一个16针的微控制器,该微控制器可以用我能写的语言编程,或者…? 有没有人建立过这样的委员会,并有一些建议或知识可以指导您完成该过程?