你觉得这篇文章怎么样? 帮助我们为您提供更好的内容。
Thank you! Your feedback has been received.
There was a problem submitting your feedback, please try again later.
你觉得这篇文章怎么样?
基于 Intel Curie 的板集高性能和低功耗于一身,带来诸多可能性。
Genuino 101(在美国以 Arduino 101 的名称出售)定位为久负盛名的 UNO 的后继产品,并且采用了同样广受欢迎甚至屡遭模仿的外形。但是从名称可以看出来,这是一款颇具官方色彩的产品,由 Arduino 创始人 Massimo Banzi 及其同事与 Intel 合作设计,采用了全新的 Intel Curie 模块作为其核心。
尽管 Genuino 101 看上去与 UNO 非常类似,但是通过官方 IDE 提供的支持使其具有引脚兼容管座,价格相差无几,而功能却前进了一大步。首先,Curie 模块具有两个 32 位内核,并且集成了 6 轴加速计和蓝牙 LE,同时还具有其他功能。
规格
Genuino 101 可通过 USB 供电,或者通过输入电压为 7-20 VDC(建议不要超过 12 VDC)的 2.1mm 桶式连接器供电。I/O 电压为 3.3V,但是引脚具有 5V 冗余,使其具有极高的灵活性,并且允许与大量外围设备配合使用。其扩展板设计用于 UNO 和其他旧型号的板。在 I/O 方面,它具有:
- 14 路数字输入(其中 4 路具有 PWM 功能)
- 6 路 10 位模拟输入(可替换配置为数字 I/O)
- 串行 RX and TX (TTL)
- SPI
- I2C
似乎没有太大的惊喜,但是如果更深入地了解 Curie 模块,就会发现一些尤为值得关注的事实。
Curie 带有 32 位 Intel Quark 和 32 位 ARC 微控制器内核,其时钟频率均为 32MHz。前者是针对小空间和低功耗进行优化的 x86 体系结构微控制器,而后者则是可配置性极高的 RISC 处理器,每年嵌入的产品超过 15 亿件。该模块配备 384kB 闪存和 80kB SRAM(高于 8 位 UNO 的 32kB 闪存和 2kB RAM),同时还在其小巧的外形中集成了蓝牙低功耗、6 轴加速计/陀螺仪和电池充电电路。
Intel Curie 在设计时考虑了可穿戴应用,但是很明显还有其他许多用途需要结合小尺寸、高性能和低功耗等优点,IoT 设备就是其中之一。在编写本文时还无法得知 Curie 模块的详细技术信息,但是要知道它仅仅发布了几个月,我们有理由相信会在适当的时候提供相关信息。
无论任何情况,我们现在都能通过 Arduino 平台来利用 Curie 的众多功能,并且无需考虑低级别的详细信息。当然,对访问裸机的需求极高,尤其是对诸如此类的开源硬件。但是无需担心,几个月之后就应该能实现低级别访问了。
软件支持
要求使用 Arduino IDE v1.6.7 或更新版本才能启动并运行 Genuino 101。之后只需打开 Board Manager 并搜索“101”或“Curie”,就能找到并安装可增加板支持的软件包。随后,IDE 将编译在 Quark 和 ARC 内核之间执行的草图。
Curie 模块运行的实时操作系统 (RTOS) 由 Intel 开发,计划在 2016 年 3 月开放源代码。在此之前,只有 Arduino IDE 才能与 RTOS 通信以执行某些预定义的任务,例如将草图编程到闪存、将蓝牙 LE 功能应用于草图以及执行 PWM。
还有一项值得关注的功能,就是可以使用 USB 设备固件更新 (DFU) 来上传草图,与使用 USB/UART 与引导装入程序的连接(编程到微控制器闪存中)的 UNO 和其他大多数 Arduino 连接不同。Arduino 引导装入程序方法当然也有用,但 DFU 机制不但符合标准,也更加成熟。
Curie 库
USB 接口还提供了一个虚拟串行端口,通过读取和写入到草图中的 Serial 对象来进行控制。除此之外,引脚 0/1 还带有一个映射至 Serial1 对象的硬件串行端口。将基于 PC 的应用程序与 Genuino 101 进行接合变得非常简单,同时还能连接 GPS 接收器等串行外围设备。
在编写本文时,Curie 特定库还可提供用于:
- 蓝牙低功耗
- 加速计 + 陀螺仪
最后一项允许您读取并设置实时时钟 (RTC) 的时间,这一功能的用处极大,既能用于较大的平台,也能附加到较小的平台上。当然,除了以上所述之外,您也可以使用标准的 Arduino 库集。
示例和教程
可以预见,这些库附带了示例草图。蓝牙低功耗外围设备示例允许远程读取模拟引脚的电压、读取数字输入引脚状态,并开启/关闭某个 LED。
附带了加速计/陀螺仪(又称为惯性监测单元 (IMU))示例,允许访问原始传感器数据,并检测每次敲击、敲打和步伐。
还包含了用于串行的示例,以及前述用于读取和设置 RTC 的示例。
这些示例极其有助于您快速了解如何使用,例如在项目中使用蓝牙 LE 或 IMU。但同时还提供了教程,让您了解如何运行一些非常出色的演示应用程序以进一步拓展可能性。
令人印象最为深刻的教程也许是使用 Madgwick 过滤算法以“从陀螺仪和加速计提取原始值,然后利用它们返回四元组,也就是 4 维数字,其中包含代表旋转所围绕的轴的 x、y 和 z 值,以及代表围绕相同轴所发生的旋转值的 ω 值。这些四元组可用于计算欧拉角距、横摆和侧倾”。随后,生成的数据通过串行端口发送到 PC 上运行的处理应用程序,随后提供 101 方向的实时可视化。
在编写本文时,还提供了关于创建计步器和蓝牙低功耗心率监视器的教程。后者实际上用于模拟心跳测量,它使用电位计来控制速率,并将数据传输到在 Android 或 iOS 设备上运行的应用。这样足够展示您可以构建的应用程序种类了。
第一印象
Genuino 101 在功能方面相比 UNO 无疑前进了一大步,单单是额外的闪存和 SRAM 就会广受好评。至少可以说,带有两个 32 位内核以及集成蓝牙 LE 和 IMU 的 Intel Curie 就是很有趣的一个小模块。支持 IDE、库和示例极好地展现了易用的特点。
随着 RTOS 开放源代码以及提供 Curie 的进一步详情,相信我们能发现它越来越多的功能。在此之前,Intel Curie 模块情况说明书和 Intel Quark SE 产品简述都很值得阅读,并且不缺少无线和传感器等应用程序,可以立即将 Genuino 101 投入使用。
相关文章 - 跟上 Genuino 101 和蓝牙 LE 的步伐