原文链接

简介

作为一名物联网 (IoT) 开发人员,您需要根据项目的不同需求,选择最适合的平台来构建应用。 了解不同平台的功能至关重要。 本文第一部分比较了 Arduino 101 平台和 Arduino UNO,为不熟悉 Arduino 101 特性的开发人员提供基本的了解。 第二部分深入探讨了 Arduino 101* 平台的功能。

Arduino 101* 与 Arduino UNO* 对比

Arduino UNO 使用 Atmel ATmega328P* 模块,Arduino 101 使用基于英特尔® Quark SE SoC 的低功耗英特尔® Curie™ 模块。 UNO 的工作电压为 5V,而 Arduino 101 的工作电压为 3.3 V(尽管也支持 5V 电源)。 Arduino 101 新增了板载蓝牙* 低能耗 (LE) 和带有加速计和陀螺仪的 6 轴组合传感器,而 UNO 没有。  两者的尺寸和引脚相同(见图 1 和图 2)。


图 1: Arduino 101* 平台。


图 2: Arduino UNO* 平台

此处汇总了 Arduino 101 和 Arduino UNO 平台功能。

产品亮点 Arduino 101* Arduino UNO*
微控制器 英特尔® CurieTM 模块 Atmel ATmega328P*
工作电压 3.3 V(支持 5V I/O) 5 V
CPU 速度 32 MHz 16 MHz 晶体振荡器
架构 32 位英特尔® QuarkTM SE SoC 8 位
闪存 196 KB 32 KB
SRAM 24 KB 2 KB
EEPROM 1 KB 1 KB
操作系统 开源 RTOS 不适用
时钟速度 32 MHz 16 MHz
特性 集成数字信号 用作 DSP
  处理器 (DSP) 传感器中枢和 6 轴组合传感器(包括加速计和陀螺仪)  
蓝牙* 蓝牙低能耗 不适用
数字 I/O 针脚 14 个数字输入/输出针脚 14 个数字输入/输出针脚
模拟 I/O 针脚 6 个模拟输入针脚 6 个模拟输入针脚
USB 接口 1 个用于串行通信和 sketch 上传的 USB 接口 1 个用于串行通信和 sketch 上传的 USB 接口
带有 SPI 信号的 ICSP header 1 个 带有 SPI 信号的在线串行编程 header 1 个 带有 SPI 信号的在线串行编程 header
I2C I2C 专用针脚 I2C 专用针脚 (Arduino UNO rev3)
重置 1 个重置按钮 1 个重置按钮
尺寸
(长 x 宽)
68.6 毫米 x 53.4 毫米 68.6 毫米 x 53.4 毫米

Arduino 101 详细信息

处理器

英特尔 Quark SE SoC 包含单核 32 MHz x86(英特尔® Quark™ 处理器)和 32 MHz Argonaut RISC Core (ARC)* EM 处理器。 这两颗处理器可同时运行,并共享内存。 ARC 处理器也被称为数字信号处理器 (DSP) 传感器中枢(取决于您所阅读的文档)。 从理论上来说,DSP 能够以最低的功率运行,收集和处理传感器数据,此时 x86 处理器以低功耗模式等待,因此非常适用于“始终在线”的应用。 不过,此时软件并不具备这种能力。

加载 Arduino sketch 时,它在 ARC 上运行。 不过英特尔® 工具链对 sketch 进行编译,以便 ARC 按照需求通过静态邮箱与 x86 处理器进行交互。 如欲测试这项功能,您可以访问开源内核库,查找 01.org’s GitHub* 上的 Arduino 101。

实时操作系统 (RTOS)

从软件角度来说,Arduino 101 的突出功能是能够运行 RTOS。 英特尔将发布一款软件开发套件 (SDK),其中包含一套软件开发工具、资源库、文档和示例代码,支持开发人员使用英特尔 Curie 模块创建物联网应用。 该 SDK 基于 Zephyr 项目*,能够兼容 Arduino 101 平台,数月后即将发布。 通过注册接收更多信息:https://software.intel.com/zh-cn/iot/hardware/curie

Zephyr 项目是面向物联网的一个小型开源 RTOS。 它可提供面向低功耗、小内存空间设备而优化的连接协议,并支持蓝牙、蓝牙低功耗,Wi-Fi* 等。 RTOS 保持较低的内存使用量,并对任务执行进行优先级划分。 它还有助于保持最高能效。 RTOS 包含强大的开发人员工具和稳定的硬件特性。 开发人员工具包括自定义工具链和编译器优化。 如欲了解更多有关 Zephyr 项目和支持的硬件特性信息,请访问 zephyrproject.org

蓝牙低功耗(蓝牙 LE* 或蓝牙智能*)

Arduino 101 新增了板载蓝牙 LE,以支持 Arduino 101 与计算机、智能手机和平板电脑等不同设备直接通信和交互,无需使用蓝牙 LE 护罩。 支持蓝牙的 Arduino 101 能够直接与其他设备进行通信,无需使用附加硬件。 蓝牙 LE 最适合低能耗应用。 CurieBLE 示例代码请见 https://www.arduino.cc/en/Reference/CurieBLE

其他库

库是可提供用于 sketch 的额外功能的代码集合。 Arduino 101 库有助于轻松连接至蓝牙 LE、传感器和计时器。 如欲开始使用内置 Arduino 101 库,请访问 https://www.arduino.cc/en/Guide/Libraries

  • Curie BLE: 将计算机、智能手机和平板电脑连接至蓝牙 LE 模块
  • Curie IMU: 使用板载 6 轴加速计和陀螺仪
  • Curie TimerOne: 管理计时器功能

加速计和陀螺仪

加速计和陀螺仪是 Arduino 101 平台的板载传感器。 加速计主要用于测量加速和倾斜。 陀螺仪用于测量角速度和方位。 这些传感器有助于精确识别物体的方向和移动。 这项新特性支持 Arduino 101 平台增强可穿戴设备的用户体验。

加速计的一种使用方法是计算步数,和计步器一样。  Arduino 101 平台做出步进动作后,这一步将会被检测到。 检测到这一步进动作后,x、y 和 z 轴的速度相对于其他状态会有明显变化。 有关计步器的更多信息,请访问:https://www.arduino.cc/en/Tutorial/Genuino101CurieIMUStepCounter

与 Arduino UNO 类似,使用 Arduino IDE* 软件可对 Arduino 101 进行编程。 如欲开始使用 Arduino 101,请前往 https://software.intel.com/zh-cn/articles/fun-with-the-arduino-101-genuino-101。 将计步 sketch 上传至 Arduino 101,查看计步器的工作原理(见图 3)。


图 3: 使用 Arduino IDE* 加载计步 sketch。

上传计步 sketch(见图 4):


图 4: 在 Arduino IDE* 上运行计步 sketch。

移动 Arduino 101 平台以出现步数,并查看串行监控器(见图 5)。


图 5: 串行窗口。

中断针脚

Arduino 101 和 Arduino UNO 都有 20 个 I/O 针脚。 Arduino 101 接受中断的针脚比 Arduino UNO 多。 Arduino UNO 在数字针脚 2 和 3 上对于中断进行触发,而 Arduino 101 能在所有针脚进行触发。 因外部事件触发的中断可发生在所有针脚上。 低值、高值、边缘上升或下降都可触发所有针脚上的中断,但只有针脚 2、5、7、8、10、11、12、13 支持变化值。

总结

本文对 Arduino 101 的特性进行了汇总。 Arduino 101 平台所包含的传感器、护罩、组件和库使其功能得以显著增强。 订购 Arduino 101 平台:http://www.intel.com/buy/us/en/product/emergingtechnologies/intel-arduino-101-497161。请访问 https://software.intel.com/zh-cn/articles/fun-with-the-arduino-101-genuino-101,测试并尽享英特尔 Curie 模块的强大功能。

实用参考资料

关于作者

Nancy Le 是英特尔公司软件与服务事业部的一名软件工程师,主要负责英特尔® 凌动™ 处理器扩展支持项目。

了解 ARDUINO 101* 平台的更多相关文章

  1. Arduino 101/Genuino101使用-第2篇

    1. Arduino 101编程只是在ARC的核心上进行,其具体架构为ARCv2EM.. 2. 而Quark核心,从目前可知的信息来看,其应该运行着名为Zephyr的RTOS 3.101并没有EEPR ...

  2. Arduino 101/Genuino101使用-第一篇

    1. 函数API说明文档在哪里? 2. 如果我想定义一个引脚做GPIO,不是库里有的. 3. digitalWrite(13, lighting); 这个函数里面 13代表的是啥? 4. setup( ...

  3. NFC:Arduino、Android与PhoneGap近场通信

    NFC:Arduino.Android与PhoneGap近场通信(第一本全面讲解NFC应用开发的技术著作移动智能设备近距离通信编程实战入门) [美]Tom Igoe(汤姆.伊戈),Don Colema ...

  4. 什么是arduino及.arduino分类

    关于什么是arduino没有什么可说的,想要接触arduino多多少少的都会对arduino有一定的理解,我认为,arduino应该算是一个连接硬件与软件的平台,通过他,你可以将你的想法以代码的形式呈 ...

  5. CREELINKS平台_处理器CeGpio资源使用说明(CeGpio的配置与使用)

    0x00 CREELINKS平台简介     CREELINKS(创e联)是由大信科技有限公司研发,集合软硬件.操作系统.数据云储存.开发工具于一体,用于物联网产品的设计.研发与生产的平台.    平 ...

  6. Python玩转Arduino——简单介绍

    关于Python语言的介绍安装请参考廖雪峰的Python教程 Python是一门解释型语言,虽然不能够像c语言一样编译上传到Arduino--什么你说MicroPython,我们再说Arduino呢- ...

  7. 开源IOT平台

    用于IoT应用程序开发的10大开源软件: 1. DeviceHive DeviceHive基于AllJoyn的Data Art设备,同时也是AllSeen的联盟成员.这一款免费开源机器和机器通信(M2 ...

  8. Arduino 烧写bootloader

    什么是bootloader 一般情况下微处理器写入程序时都通过专门的编程器进行烧写,但是也可以通过在MCU中预先写入一些程序来实现某些基本功能,这些预先写入的程序代码就是bootloader.这样每次 ...

  9. Zephyr OS 简介

    最新发布的开源 Zephyr Project™(Zephyr 项目)是一款小型且可伸缩的实时操作系统,尤其适用于资源受限的系统,可支持多种架构:该系统高度开源,对于开发人员社区完全开放,开发人员可根据 ...

随机推荐

  1. TODO:Laravel 内置简单登录

    TODO:Laravel 内置简单登录 1. 激活Laravel的Auth系统Laravel 利用 PHP 的新特性 trait 内置了非常完善好用的简单用户登录注册功能,适合一些不需要复杂用户权限管 ...

  2. 前端学Markdown

    前面的话   我个人理解,Markdown就是一个富文本编辑器语言,类似于sass对于css的功能,Markdown也可以叫做HTML预处理器,只不过它是一门轻量级的标记语言,可以更简单的实现HTML ...

  3. ASP.NET MVC5+EF6+EasyUI 后台管理系统(75)-微信公众平台开发-用户管理

    系列目录 前言 本节主要是关注者(即用户)和用户组的管理,微信公众号提供了用户和用户组的管理,我们可以在微信公众号官方里面进行操作,添加备注和标签,以及移动用户组别,同时,微信公众号也提供了相应的接口 ...

  4. 使用Java原生代理实现AOP

    ### 本文由博主柒.原创,转载请注明出处 ### 完整源码下载地址 [https://github.com/MatrixSeven/JavaAOP](https://github.com/Matri ...

  5. Android注解使用之通过annotationProcessor注解生成代码实现自己的ButterKnife框架

    前言: Annotation注解在Android的开发中的使用越来越普遍,例如EventBus.ButterKnife.Dagger2等,之前使用注解的时候需要利用反射机制势必影响到运行效率及性能,直 ...

  6. 计算机程序的思维逻辑 (54) - 剖析Collections - 设计模式

    上节我们提到,类Collections中大概有两类功能,第一类是对容器接口对象进行操作,第二类是返回一个容器接口对象,上节我们介绍了第一类,本节我们介绍第二类. 第二类方法大概可以分为两组: 接受其他 ...

  7. 多线程条件通行工具——CountDownLatch

    CountDownLatch的作用是,线程进入等待后,需要计数器达到0才能通行. CountDownLatch(int)构造方法,指定初始计数. await()等待计数减至0. await(long, ...

  8. 灵魂宝石 bzoj 2663

    灵魂宝石(1s 128MB)soulgem [问题描述] "作为你们本体的灵魂,为了能够更好的运用魔法,被赋予了既小巧又安全的外形" 我们知道,魔法少女的生命被存放于一个称为灵魂宝 ...

  9. “老坛泡新菜”:SOD MVVM框架,让WinForms焕发新春

    火热的MVVM框架 最近几年最热门的技术之一就是前端技术了,各种前端框架,前端标准和前端设计风格层出不穷,而在众多前端框架中具有MVC,MVVM功能的框架成为耀眼新星,比如GitHub关注度很高的Vu ...

  10. canvas快速绘制圆形、三角形、矩形、多边形

    想看前面整理的canvas常用API的同学可以点下面: canvas学习之API整理笔记(一) canvas学习之API整理笔记(二) 本系列文章涉及的所有代码都将上传至:项目代码github地址,喜 ...