Wio Extension RTC (实时时钟)
Wio Extension - RTC 是 Wio LTE 的扩展板,它可以通过 I2C 端口提供实时时钟功能。该板基于 NXP PCF8523 芯片,可以提供年、月、日、星期、小时、分钟和秒信息。
该板通过 Micro-USB 端口供电,通过 I2C 端口与 Wio LTE 通信,我们还提供了一个 USB 电源输出,可以通过板载开关关闭/打开,这样您就可以使用 Wio Extension - RTC 板为 Wio LTE 供电。当为 Wio 板供电时(如下图所示),整个系统的待机电流小于 1 uA。
特性
- 可扩展性
- 能够为 Wio 板提供 3.3V 电压
硬件概述
支持的平台
Arduino | Raspberry Pi | |||
---|---|---|---|---|
![]() | ![]() | ![]() | ![]() | ![]() |
开始使用
与 Arduino 一起使用
所需材料
Wio LTE 开发板 | Wio-Extension-RTC | Grove - 蜂鸣器 | Grove - 红色 LED |
---|---|---|---|
![]() | ![]() | ![]() | ![]() |
立即购买 | 立即购买 | 立即购买 | 立即购买 |
由于 Wio Extension - RTC 只是通过 I2C 控制 USB 电源供应设置,您可以使用此开发板来管理几乎所有通过 USB 供电的 MCU 开发板的电源供应。
硬件
-
步骤 1. 将 Wio-Extension-RTC 连接到 Wio LTE 开发板的 I2C 端口。
-
步骤 2. 通过 USB 线缆将 Wio LTE 开发板连接到 PC。
-
步骤 3. 将 Grove - 蜂鸣器 或 Grove - 红色 LED 连接到 Wio LTE 的 D38 端口。
软件
如果这是您第一次使用 Arduino,我们强烈建议您在开始之前查看Arduino 入门指南。此开发板的驱动程序依赖于 Seeed STM32F4 Board(JP mirror) by Seeed K.K.
的头文件,所以无论您是否已经按照Arduino 入门指南的教程安装了 wio 开发板,您都需要执行以下步骤。
步骤 1 安装库
打开您的 Arduino IDE,点击 File > Preferences,并将下面的 URL 复制到 Additional Boards Manager URLs。
http://www.seeed.co.jp/package_SeeedJP_index.json
点击 Tools > Board > Board Manager,并在文本框中输入 Wio
。
点击 Seeed STM32F4 Board(JP mirror) by Seeed K.K.
,然后会出现一个 Install 按钮,点击它来完成此步骤,这个过程需要大约 5 分钟到半小时,具体取决于您的网络速度。
点击 Tools > Manage Libraries,并在文本框中输入 Wio
。
点击
Wio LTE for Arduino by Seeed K.K.
,然后会出现一个 Install 按钮,点击它来完成此步骤。
解压示例代码,并用 Arduino IDE 打开 wiortc-sample.ino
。
步骤 2 下载代码
-
按住 Wio LTE 背面的 BOOT 按钮并将 USB 插入 PC。
-
我们将在设备管理器中看到 STM BOOTLARDER。
-
选择 Tools→Boards→Wio_Tracker_LTE。
-
选择 Sketch→Upload 将代码上传到 Wio_LTE。
-
按 RST 按钮启用 COM 端口。 提示
当您下载大多数 Arduino 开发板时,您需要选择正确的 COM 端口,但对于此开发板,您必须保持 COM 配置为空白。
- 使用串口监视器打印串口消息。
#include <WioLTEforArduino.h>
#include "WioRTC.h"
////////////////////////////////////////////////////////////////////////////////
// Defines
#define BOOT_INTERVAL (30) // [sec.]
////////////////////////////////////////////////////////////////////////////////
// Global variables
WioLTE Wio;
WioRTC Rtc;
////////////////////////////////////////////////////////////////////////////////
// setup and loop
void setup()
{
delay(200);
SerialUSB.begin(115200);
SerialUSB.println("");
SerialUSB.println("--- START ---------------------------------------------------");
////////////////////////////////////////
// Low-level initialize
SerialUSB.println("### I/O Initialize.");
Wio.Init();
SerialUSB.println("### Power supply ON.");
Wio.PowerSupplyGrove(true);
delay(500);
////////////////////////////////////////
// Device initialize
SerialUSB.println("### Device initialize.");
Wire.begin();
Rtc.begin();
////////////////////////////////////////
// Completed
SerialUSB.println("### Completed.");
}
void loop()
{
uint8_t val;
Rtc.EepromRead(0, &val, sizeof(val));
SerialUSB.print("EEPROM value is ");
SerialUSB.println(val);
val++;
Rtc.EepromWrite(0, &val, sizeof(val));
SerialUSB.println("Beep.");
pinMode(WIO_D38, OUTPUT);
digitalWrite(WIO_D38, HIGH);
delay(200);
digitalWrite(WIO_D38, LOW);
SerialUSB.println("Shutdown.");
Rtc.SetWakeupPeriod(BOOT_INTERVAL);
Rtc.Shutdown();
while (1) {}
}
原理图在线查看器
资源
- [ZIP] Wio-Extension-RTC
- [示例] Wio-Extension-RTC 示例代码
技术支持与产品讨论
如果您有任何技术问题,请将问题提交到我们的论坛。 感谢您选择我们的产品!我们在这里为您提供不同的支持,以确保您使用我们产品的体验尽可能顺畅。我们提供多种沟通渠道,以满足不同的偏好和需求。