微控制器热潮似乎并没有消退——这是一件好事,因为这些产品持续成功地解决了移动市场持续失败的问题:用户获得了开源软件*和硬件*,便携式外形,以及广泛的供应商和耐用产品选择。
在最好的开源硬件和软件供应商中,Seeed 自称为“物联网硬件赋能者”。我最近开始在项目上看到 Seeed 的标志,所以我联系了该公司,以了解他们正在做的有趣的事情。作为回应,他们慷慨地寄给我了他们最新的产品之一:Seeeduino Nano,这是一款紧凑型开发板,该公司称其与 Arduino Nano 完全兼容,但价格只有一半,尺寸只有四分之一,还附带了一个入门传感器。
我花了几天时间使用它,我已经开始着手一个改进我的家庭花园的项目,并正在考虑其他几个家庭自动化项目。Seeeduino Nano 远非仅仅是另一个类似 Arduino 的产品,它解决了新创客在获得微控制器并想要使用它时面临的几个问题。
我该用它做什么?
我从对 Raspberry Pi、Arduino 或类似微控制器感到失望的人那里听到的最常见问题是,他们兴奋地拿到一块板子,完成了它的教程,然后意识到他们不知道该用它做什么。作为计算机用户,我们不习惯于目的驱动的设备。你得到一个类似计算机的设备并将其用于多种目的,因此得到一个计算设备并将其构建到一个项目中感觉很奇怪。
获得微控制器也可能有点让人不知所措。它充满了潜力,但它也只是一个微控制器。当您拥有一个显然能够做任何事情的设备时,弄清楚要启动哪种项目可能会让人感到畏惧。
Seeed有一系列易于连接的输入和输出外围设备(他们称之为 Grove),它们提供了一种简单的方法来模块化地构建项目,这取决于您想要处理的信息类型。与您可以为任何其他设备获得的传感器或伺服电机相比,Grove 模块没有什么特别之处,但 Seeed 使有时看起来令人眼花缭乱的选择数量变得更加易于理解。更好的是,Seeed 为每个 Grove 模块提供库,因此您永远不会为您的项目购买一个零件,然后发现您不知道如何让您的控制器识别它。
因为 Seeed 寄给我一个温湿度传感器,我的潜在项目,至少在短期内,变得高度集中。我知道我将为我的家设计一个温度计和湿度检测器,或者为我最喜欢的一些植物设计一个湿度监测器。基于其他的 Grove 模块,我也想出了更多的项目。
简洁的连接器
Grove 模块特别好的地方在于它们基于 I2C 连接器。这意味着你可以将这个

变成这样

当然,您也可以通过 Pi 或 Arduino 或您碰巧拥有的任何产品的许多附件来解决这个问题,但是 Seeed 和 Grove 是为彼此构建的,因此如果您正在开始一个新项目,这是一种从一开始就控制事情的简单方法。
小巧的尺寸
Seeeduino Nano 非常小巧。它只有 18 毫米 x 43 毫米(大约 1.5 英寸 x 1 英寸),但它有八个模拟引脚、14 个数字引脚,并配备了 ATmega328P 8 位 AVR 微控制器。如果您的项目有空间问题,这是一个很好的选择。

传感器也往往很小。尺寸因您购买的产品而异,但它们通常旨在节省空间。

设置
Seeeduino Nano 的入门就像 Arduino 的入门一样容易。对于类似 Arduino 的产品来说,情况并非总是如此,因为其中一些产品假设您了解它们构建的组件。您可能会获得一个微控制器,下载 Arduino IDE,然后发现您购买的产品在“开发板”菜单中不是一个选项,让您猜测您的产品相当于哪个 Arduino 开发板。Seeed 不会放过任何机会,并为其所有产品提供开发板定义。您必须自己导入它们,因为它们不随 Arduino IDE 一起提供,但 Seeed wiki 提供了有关如何通过 IDE 的开发板管理器界面执行此操作的说明。
导入开发板定义后,您可以开始将 Blink 代码例行地刷入您的设备,或者像往常一样在 Arduino IDE 中进行编码。Seeed wiki 上也有相关说明。
代码
除了开发板定义外,Seeed 还为每个 Grove 模块提供示例代码,以便您了解如何向模块发送数据或从中收集数据。我正在使用温湿度专业传感器,它需要 DHT 库。Seeed 提供了该库以及 DHTtester 项目,并且在其 wiki 上提供了有关如何安装它的说明。
Seeed 唯一没有提供的是 Grove 模块的正确输入引脚的名称。该项目的示例代码由 LadyAda 编写,使用第一个模拟引脚 (A0),但在 Seeeduino Nano 上,Grove 连接到最终变为 A5 的引脚。这很难通过观察来判断,因为 Grove 物理连接到 I2C 插头,没有指示它连接到哪个引脚。但是,Seeed 是开源的,因此您可以查看开发板的规格,或者您可以做这些小工具恳求您做的事情:实验!
最后,从 Grove 湿度和温度传感器获取信息的基本代码大约有 20 行代码(如果像 LadyAda 的代码那样构建健全性检查,则为 25 行)
// public domain code by ladyada
#include "DHT.h"
#define DHTPIN A5
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(9600);
dht.begin(); }
void loop() {
float h = dht.readHumidity();
float t = dht.readTemperature();
Serial.print("Humidity: ");
Serial.print(h);
Serial.print(" %\t");
Serial.print("Temperature: ");
Serial.print(t);
Serial.println(" *C"); }
一切开源
Seeeduino 是开源的,从 可下载的 Eagle 文件 到帮助您驱动它的 软件。对于那些因令人困惑和分散的选择而感到不知所措的新用户,或者对于那些已经从原型转移出来并准备构建整洁有序且布线清晰的项目经验丰富的创客来说,这是一个梦想中的平台。如果您身边有崭露头角的发明家,请让 Seeed 帮助他们为项目播种。
评论已关闭。