发布时间:2014-06-17 阅读量:1941 来源: 发布人:
下一步,我把7条短线和1条长线焊接到一起了做了 1 条菊花链(如下图)。然后再做 15 条这样的长线,8*8 矩阵的长线就够了。
然后制作夹板(jig),和Hackaday上的方式不同,我没有用硬质板,改用了1/4″的泡沫板。用锥子在上面戳孔了,这比在硬板上用钻头要快点。另外用泡沫板的好处是,孔洞可先弄小点,把LED灯塞进去还更稳定哦。
在一排孔洞上安上 LED 灯,每个 LED 的阳极镀锡后简短,然后拿一条前面做好的菊花链长线,在这排灯上焊接好。在焊接之前,我在菊花链的每个连接处包上了半英寸的热缩管(heat-shrink tubing)。有几次次我忘了热缩管,不得不回头再加。注意:焊接处还烫时,别着急把热缩管套下去。否则热缩管就开始收缩,在 LED 连接处就会套不牢了。
把八行LED灯(阳极)都串联好后,就开始把它们的阴极连起来了。过程一样,记得热缩管。搞定后,从泡沫夹板上取下来。
看看!下面就是完工后的 LED 矩阵!
咦?还差什么呢?这是一个8×8的矩阵,想玩俄罗斯方块,空间还不够哦。所以我又做了一个8×8的矩阵。
Adafruit 的 LED Matrix Backpack 是要求其 LED 矩阵得正确焊接在板子上,但我是焊接了阴极(female header),如此一来,我可以单独给每块 8×8 LED 矩阵加电,也可以给整个 8×16 LED 大矩阵加电。有人可能会和我说,我应该要在这里或哪里加个电阻什么的,否则我会把芯片弄爆,也许他们是对的,但目前来看工作正常的。
为了把我自己做的 LED 矩阵连接到 I2C Backpack,我切掉了部分原型板,然后焊接了阳极。然后把最后一行一列的8″ 线连接到板子上。
这个能正常运行么?我得编写代码来验证了。
二、编程时间
I did all coding with the hardware mounted on my bamboo prototyping board. The mini matrices in the I2C backpack sockets fit on the desk much better than the big, floppy matrices I built would have.
所有代码写入安装在我 Bamboo 原型板上的硬件上。
There are seven Tetrominos—yes, that’s what they’re called—in the game. Each has four points, as implied by the “tetra” prefix. A three-dimensional array stores the location of every pixel of every shape, in each of four possible rotations. Storing each rotation is a lot easier (for my brain at least) than calculating it on the fly. As an example, here’s the T shape:
俄罗斯游戏中共有七种形状(Tetromino),每种形状都只有四个方块(点),这也就是为什么会用上 tetra 前缀的原因。用一个三维数组来存储各种形状每个点的位置,有四种可能的旋转角度。存储每个旋转角度要比在下降时计算其角度更简单(至少我是这样想的)。下面是 T 形状的例子:
1 /* T */ {
2 /* angle 0 */ { {0,1}, {1,1}, {2,1}, {1,2} },
3 /* angle 90 */ { {1,0}, {1,1}, {2,1}, {1,2} },
4 /* angle 180 */ { {1,0}, {0,1}, {1,1}, {2,1} },
5 /* angle 270 */ { {1,0}, {0,1}, {1,1}, {1,2} }
6 }
为了绘制活动块,程序设置有一个 activePiece 变量(形状数组的索引)和一个转动角度变量(形状转动角度描述索引),然后设置每个像素对,每个像素对引出两个偏量:yOffset 和 xOffset,分别指活动块离屏幕底边的距离和离屏幕左边的距离。
It also keeps an array describing the status of each “fixed” piece. With every move of the active piece, whether by gravity or by user control, it checks against that fixed-piece array to see if the requested move can be made without a collision. If the forbidden movement is left, right, or a rotation, it simply doesn’t make the move. If the forbidden movement is vertical it considers the piece to have landed and writes the piece to the array of fixed pieces, then launches a new active piece. Along the way it keeps score, tracks the level, speeds up the drop of the active piece as the game goes on, etc.
还要有一个描述每个“固定块”状态的数组。
三、加工南瓜
这个工程需要一个完美的容器,呃,我说的就是南瓜。南瓜得足够高,得装下8英寸高的 LED 矩阵,还得有个长又直的南瓜柄。我开始买了 3 个南瓜,以为都是完美品,回家才知道一瓜不如一瓜。最后总算有个合适的,其他几个我就用来联系打孔和练刀工了。
进南瓜里面,我在背面开了一个大口。注意:千万别从南瓜柄那下刀,南瓜柄还得留着做游戏控制刊。放 LED 灯,从背面比从上面放更容易。
拿一张纸,仿照 8×16 LED 矩阵大小再画一个矩阵,做好标记。
做好标记后,我用 13/64″ 钻头打孔了。
因为圆孔不怎么适合用来做俄罗斯方块游戏,所以我在每个洞眼旁边,用 X-Act 刀戳出了方形。
为了把南瓜柄改造成控制杆,我小心翼翼地从根部锯开了南瓜柄,然后再钻了一个 1/8″ 大小的孔眼,游戏杆得穿过这个孔。
在南瓜内部,瓜柄下方要整平出一个正方形。把锚钉切短了些(过长会穿透南瓜),然后拧紧。稍后再螺丝把控制杆固定在锚钉上。
控制杆的话,我买了SparkFun的短柄操作杆,把红球拧下来,换上南瓜柄。我在南瓜柄上钻了一个孔,给 6mm 的螺栓上胶,然后放进南瓜柄,然后再把南瓜柄拧上操作杆。
然后把 LED 灯塞进南瓜孔洞。中间有个小插曲,从南瓜外边看着是打了16行的孔,从里面看却是15行。因为南瓜不够长,有弧度,导致上上面有两行洞眼打到一行去了。最上一排就只好直接把 LED 灯强行摁进合适的位置去了。
最后把每块电路线接好,电源是8节充电电池。
是时候来玩一把南瓜俄罗斯方块了!!!
除了上面那块 8×8 的矩阵有时候会有些小故障,其他部分运行的都很好。也许是电源供给问题,但应该是一些间断的短路,因为这么多电路连接点都在南瓜肉中。操作杆在上面,而显示屏却在下方,玩起来也觉得怪怪的。如果我重新做一个的话,我会把控制杆放在另外一个独立的南瓜上,或者用无线操作杆,或者把控制杆外接线路打扮成南瓜藤。
我的一些数字:
•128 个LED灯
•256个热缩管
•313个焊接处
•大约每天12小时,用了一周半
•目前最高得分是 9800
下一步做什么?打算移植到西瓜上哦~(这个是逗你玩的)
热门DIY:
喜迎激情世界杯!DIY创意火炬灯
【极客DIY】用单片机AT89C2051自制的八路无线遥控
在现代工业自动化向智能化、网络化、柔性化加速演进的大背景下,高性能、高可靠、特定场景优化的核心硬件设备构成了系统的“大脑”、“眼睛”和“四肢”。英特尔4U工控机(IPC-615H5)、RK3568高性能监控主板和HPM6400/6300伺服电机控制板分别代表了通用工业计算平台、边缘AI视觉处理平台和高精度运动控制平台的最典型形态。它们在各自的领域拥有独特优势,共同支撑起复杂的工业控制闭环。本文旨在对这三款核心产品进行全方位对比分析,剖析其技术特点、优劣势、应用场景及市场前景,为工业自动化方案选型提供专业参考。
人工智能技术,特别是生成式AI和大规模机器学习模型的迅猛发展,对全球数据中心的基础设施提出了前所未有的高要求。海量数据的实时处理与复杂模型训练,导致数据中心计算负载激增,随之而来的功耗攀升已成为产业亟待解决的核心瓶颈。这不仅推高了运营成本,也对电网承载能力和可持续发展目标构成严峻挑战。如何在高性能计算需求持续增长的同时,有效控制并降低能源消耗,成为AI数据中心建设与升级的关键命题。
2025年6月25日,全球半导体巨头日本罗姆与中国车规芯片领军企业芯驰科技在上海联合宣布,推出面向智能座舱的参考设计"REF68003"。该方案以芯驰科技旗舰级座舱SoC X9SP为核心,集成罗姆多款高安全等级PMIC电源芯片,已在2025上海车展公开展示。
2025年6月25日,三星电子正式发布三款智能显示器新品——M9(32英寸)、M8(32英寸)及M7(32/43英寸双版本)。该系列首次搭载OLED面板与模块化L型支架,通过AI算法重构人机交互逻辑,标志着智能显示技术进入场景自适应新阶段。
随着苹果持续深化OLED面板在平板电脑领域的应用,其供应链体系正迎来新一轮调整。据产业链权威消息,韩国电子组件制造商LG Innotek正积极推进其覆晶薄膜(Chip on Film, CoF)封装技术进入苹果新一代iPad OLED面板供应链体系。该技术是实现显示驱动芯片与面板电气连接的关键封装方案。