硬件交互运作的难度极高
众所周知,软件能够依据您的不同需求而做调整,可是硬件却通常在出厂时就已经定型,如果需要做改变,通常不是件容易的事。但是如今,如果您想要使用不同的IC,或是您需要更多的传感器,或是想要改变您的输出设备,所有这些都可以被客制化,而不是像过去一样只能采用即插即用方案。
现场有部分应用案例能够实现设备之间硬件的交互运作,赢得更大的用户基础。其中比较成功的案例是Arduino的shields。他们目前的发展已不仅限于Arduino主板领域,现在开始在很多不同的领域你也可以看到shield连接器的身影。可是话说回来,目前它并非是完美解决方案,仍存在常用配件的尺寸较大,堆叠时容易造成即使量少也难以同时使用的问题。幸运的是,目前有一个全新系统有效地弥补了现有解决方案的漏洞,提高实用性。
由Seeed Studio设计研发的Grove system在此次创客运算平台引起轰动,它配备了一个标准物理连接器,可预测输出引脚以及常用板型尺寸。
标准物理连接器由4个附带加密功能的针脚组成,目前据我所知包含Digital I/O,Analog接口以及 I2C 接口。该主板以20x20mm尺寸板型起拼,可成倍拼图式拼接成常见的 20x40mm板型及40x60mm板型等。
经过我的核算,在他们的维基百科上至少列出了106件不同的支持配件,大部分配件可以搭配在兼容性设备上使用,包括如Arduino, Intel的 Edison 及Galileo, BeagleBone Black 及 Seeed的 Grove 着力开发的BeagleBone Green, LinkIt One, Raspberry Pi 等。能够发现如此多有趣的硬件交互运作应用案例,不虚此行!
威盛VAB-820凭其丰富的Digital I/O和支持I2C的针脚成为了威盛嵌入式ARM开发板中比较受欢迎的一款。若将VAB-820的针脚改为Grove兼容性连接器,我们也将能够兼容使用这100多个小工具增加趣味性和实用性。我和KiCad花了一晚上的时间坐下来静心设计了这款主板,然后由Seeed的Fusion PCB service花费了近一周时间制作成型,现在,它诞生了!
我希望这次制作的第一版能尽量简单,它配备了两个支持I2C3总线的连接器,极具便利性和灵活性。同时也配备2个数字I/O连接器,支持2~4个 digital line(基于Grove Base Shield v1.3的相似设计)
第一步需要在主板上接通Grove LCD + RGB Backlight,这是我至今为止比较喜欢的配件之一。当看到屏幕点亮并且运行正常,我真的非常兴奋!
第二步我加入了一个小型实际案例的Demo来展示GroveHat确实能够运行。下面是在VAB-820上运行Linux系统的视频,演示了运行由Python写制的系统监控脚本时显示出的CPU和内存实时使用率,在原有基础上增光添色!
最后,有一件有趣的事情提醒大家,至今为止看来Grove兼容设备上仅可以运行bare firmware或Linux系统。可是由于威盛Smart ETK嵌入式工具包为威盛VAB-820提供了一个支持digital I/O和I2C的API,VAB-820成为了首款可以使用Android系统的硬件! 目前在CERN Open Hardware License的许可下,GroveHat的源代码和Gerber文件已经在Github上可以下载。请注意,这是一个编外项目,并非威盛官方配件。
这些内部测试在未来不会停止其开发的脚步,对我们而言还有许多方面需要改进。 关于主板本身,我们考虑会:
改进布局设计以更加适合VAB-820的形状
在合理范围内增加更多连接性
在电源线中增加更多去耦电容器以提高可靠性
…其它 关于软件方面,我们目前考虑会:
为Linux和Android系统创建更多的动态演示Demo
验证Linux系统的GPIO控制(目前为止相对I2C而言我并不熟悉GPIO)
您希望结合Grove去使用哪款强大的嵌入式系统呢(如VAB-820)?若您使用GroveHat或Grove常规版制作了任何产品,欢迎告知我们,我们会非常高兴能收到您的消息!