"您好, 我是乔治, 这是我的名片."
- "哦? 这个名片上有 USB 口, 有芯片?"
- "是的, 这个名片上运行着 Linux, 您把它插入到电脑的 USB 口, Linux 会在 6 秒内启动, 然后就可以通过虚拟的串口登录, 进入 shell 了, 这里边有我的简历和照片, 还有几个 Unix 经典的小游戏: fortune,rogue,2048 等, 还有一个 MicroPython 解释器呢!"
- "太酷了! 这名片很贵吧?"
- "不贵不贵, 总成本不到 3 美元, 你可以随意拿, 我这儿还有很多呢!"
这是我看到 George Hilliard 的文章《My Business Card Runs Linux》以后杜撰的一个场景.
我这人动手能力比较差, 不会折腾硬件, 在面包板上连接电路估计就是我的极限, 所以大学里就选了软件开发.
当我看到 George 运行着 Linux 的名片以后, 真是 "羡慕嫉妒恨" 呐.
这个很酷的名片实际上是个完整的, 最小的 ARM 计算机, 上面运行着使用 Buildroot 自定义出来的 Linux 固件. 所有的这一切都是在 8M 的闪存中, bootloade 占用了 256KB, 内核 1.6MB, 文件系统占用了 2.4MB, 闪存中还有很大的空间.
George Hilliard 自己设计制作完成了他的 Linux 名片, 作为一个嵌入式工程师, 他很享受这个制作的过程, 其中最大的挑战是找到最便宜的零件.
最终的结果是这个名片的总成本相当低:
看到那个 F1C100s 了吗, 是从淘宝上买的, 我去淘宝上搜了一下, 确实有, 现在只要 6 块钱.
硬件部分
最关键的 "架构决定" 就是处理器, 经过了大量的研究以后, 他选择了中国珠海全志公司生产的一个 SoC:F1C100s, 相当便宜, 并且包含着 RAM 和 CPU.
其他的组件从 LCSC(是个电子元器件的在线商城) 购买.
George 认为淘宝上的 F1C100s 惊人地便宜, 于是买了一大袋子:
George 使用 JLC 这个网站来制作 PCB(印刷电路板), 这是个自助服务的网站, 只需要上传设计文件, 然后就可以在家里等着了, 他用 8 美元制作了 10 个 PCB.
我搜了一下, JLC 是嘉立创的缩写, 这也是一家中国的公司!
软件部分
从头开始把 Linux 移植到全志公司的 F1C100s 上不是那么容易, 幸运的是, 中国有个程序媛 Icenowy 在 GitHub 上维护了一个支持 F1C100s 的版本:
https://github.com/Icenowy/linux, 感兴趣的同学也可以去看看.
芯片是中国制造的, PCB 是中国 "印刷" 的, 软件也是基于中国的开发版本开发的, 看来这个名片上的中国元素很足啊!
George 在她的基础上做了修改, 加了一些驱动 (引脚控制器和时钟),Linux 的版本也从 v4.9 改成了 v5.2, 最终形成了一个名片上的 Linux :
https://github.com/thirtythreeforty/linux
最后 George 还提供了一个电路图, 感兴趣的同学可以参考着做一个出来, 在中国还有近水楼台先得月的优势, 反正我是搞不定了, 看着这些图就头大.
参考资料:
- https://www.thirtythreeforty.net/posts/2019/12/my-business-card-runs-linux/
- https://www.thirtythreeforty.net/posts/2019/12/designing-my-linux-business-card/
来源: http://zhuanlan.51cto.com/art/201912/608483.htm