《硬件改变世界》系列
你一定很好奇,这个橘色的小方块是什么呢?
首先,它是一个漂亮的立方体,放在你的桌子上,丰富了你电脑周围的空间。它还代表了SupplyFrame的著名徽标,由四个支架将4×4个正方形固定在一起。最后也是最重要的,里面还有一个控制器。
但是注意,没有按钮,没有显示器,只有一个USB micro-b接口!很奇怪吧,你也许会想问…为什么还说它值得期待?让我们把它连接到电脑上看看有什么神奇的事情发生!
首先,可以看到底部有12个白色LED,它们是随机运行的。但是,如果你在徽章和电脑之间建立了联系,那么它能做的就更多了。
立方体有自己的trng(真随机数生成器),可以创建随机数流。它也有prng(伪rng),因此可以用作密码引擎,主要用于试验和游戏。它有一个16兆比特(2兆字节)的闪存,可以用来存储OTP(一次填充)随机数基,这是唯一一种不能破解的密码方法,不管坏人有多强大的计算机,也不管他们多聪明。当然这种方法也有一些缺点,我们稍后将讨论。
通信是通过虚拟串行端口执行的,因此你要有一些串行终端程序(realterm或类似程序)。参数为115200、8、N、1。此端口用于向多维数据集发出命令或参数、发送或接收加密或解密的文件、获取状态或读取当前数据。两个或两个以上的立方体也可以通过容性链路进行无线通信,前提是它们要紧密相邻,距离不超过1~2英寸(或几厘米)。
命令行不区分大小写。它包含一个命令字符、一个或多个(可选)操作数和一个(可选)数字数据,用空格分隔。这是命令列表(n是一个半字节,或者如果前面有“0x”,则为一个十六进制数字),n n n n是16位数字,n n n n n n n n是32位数字):M S D [NNNN] 将nnnn块从s移动到d(默认1个块=512字节)X S D [NNNN] 移动和xor nnnn块从s到d(默认为1个块)R NNNN flash read address设置为nnnn(请阅读勘误表注释)W NNNN 闪存写入地址设置为nnnn(请阅读勘误表注释)S NNNNNNNN prng seed设置为nnnnnnnn(32位数字,仅限十六进制输入)Q 退出当前命令执行(仅限运行时)? 帮助H 帮助
分配给m、x、r和w命令的数值用十进制或十六进制(带0x前缀)代码表示。S命令中的32位数字只能是十六进制。请注意,r和w命令中的nnnn文本是地址,但它们不是以字节表示的,而是以512字节块表示的。
S和D(在操作数组中)代表源和目标。它们中的每一个都可以是:B 缓冲区1(单片机数据存储器中512字节)C 缓冲区2(单片机数据存储器中512字节)N 网络(立方体之间的电容链接)U UART(通过虚拟端口)F (内置闪存)P prng(仅限来源)T TRNG(仅限来源)S 种子(仅限来源)A 加速度计(仅限震源)
重要提示:有一个限制对几乎所有闪存都有效,这是设计技术和优化的结果。你知道所有的闪存(像eprom和eeprom)在写入之前必须被擦除到所有1(bytes 0xff),如果不被擦除,它会同时记录以前的内容与新的内容。本项目使用的闪存芯片MX25V1635FM只能擦除4K(或更大)块。如果多维数据集固件写入4K块的第一页(或第一个512字节块),则会自动执行此操作,但当MCU写入4K块内的其他页面时,不会进行擦除。因此,写入块1不会擦除闪存的先前内容,但写入块0将自动擦除地址0x0000到0x0fff(块0…7)中的所有块。
-
控制器
+关注
关注
112文章
16064浏览量
176916 -
生成器
+关注
关注
7文章
313浏览量
20933 -
数据集
+关注
关注
4文章
1200浏览量
24606
原文标题:一个小方块颠覆工程师想象,它能做的不只是个控制器
文章出处:【微信号:cirmall,微信公众号:电路设计技能】欢迎添加关注!文章转载请注明出处。
发布评论请先 登录
相关推荐
评论