制作一个夜灯 - Wio Terminal
在本节课程中,您将为 Wio Terminal 添加一个 LED,并用它来制作一个夜灯。
硬件
现在夜灯需要一个执行器。
执行器是一个 LED,即发光二极管,当电流通过时会发光。这是一个数字执行器,只有两种状态:开和关。发送值 1 会点亮 LED,发送值 0 会关闭 LED。这是一个外部的 Grove 执行器,需要连接到 Wio Terminal。
夜灯的逻辑伪代码如下:
Check the light level.
If the light is less than 300
Turn the LED on
Otherwise
Turn the LED off连接 LED
Grove LED 是一个模块,包含多种颜色的 LED,您可以选择自己喜欢的颜色。
任务 - 连接 LED
连接 LED。

选择您喜欢的 LED,将其引脚插入 LED 模块上的两个孔中。
LED 是发光二极管,而二极管是一种只能单向导电的电子器件。这意味着 LED 必须以正确的方向连接,否则无法工作。
LED 的一个引脚是正极,另一个是负极。LED 并不是完全圆形的,其中一侧稍微平一些。稍微平一些的一侧是负极。当您将 LED 连接到模块时,请确保圆润一侧的引脚连接到模块外侧标有 + 的插座,而平坦一侧的引脚连接到模块中间较近的插座。
LED 模块上有一个旋钮,可以用来调节亮度。使用小号十字螺丝刀将其逆时针旋转到最亮的位置。
将 Grove 电缆的一端插入 LED 模块上的插座。电缆只能以一种方向插入。
在 Wio Terminal 未连接到电脑或其他电源的情况下,将 Grove 电缆的另一端连接到 Wio Terminal 屏幕右侧的 Grove 插座。这是离电源按钮最远的插座。
💁 右侧的 Grove 插座可以用于模拟或数字传感器和执行器。左侧插座仅用于 I2C 和数字传感器及执行器。

编程夜灯
现在可以使用内置的光传感器和 Grove LED 来编程夜灯。
任务 - 编程夜灯
编程夜灯。
在 VS Code 中打开您在本作业前一部分中创建的夜灯项目。
在
setup函数的底部添加以下代码行:cpppinMode(D0, OUTPUT);这行代码配置了用于通过 Grove 端口与 LED 通信的引脚。
D0引脚是右侧 Grove 插座的数字引脚。该引脚被设置为OUTPUT,表示它连接到一个执行器,并将数据写入该引脚。在
loop函数中的delay之前立即添加以下代码:cppif (light < 300) { digitalWrite(D0, HIGH); } else { digitalWrite(D0, LOW); }这段代码检查
light值。如果该值小于 300,则向D0数字引脚发送HIGH值。HIGH值为 1,会点亮 LED。如果光线值大于或等于 300,则向引脚发送LOW值,关闭 LED。💁 当向执行器发送数字值时,
LOW值为 0V,HIGH值为设备的最大电压。对于 Wio Terminal,HIGH电压为 3.3V。重新将 Wio Terminal 连接到您的电脑,并像之前一样上传新代码。
连接串口监视器。光线值将输出到终端。
text> Executing task: platformio device monitor < --- Available filters and text transformations: colorize, debug, default, direct, hexlify, log2file, nocontrol, printable, send_on_enter, time --- More details at http://bit.ly/pio-monitor-filters --- Miniterm on /dev/cu.usbmodem101 9600,8,N,1 --- --- Quit: Ctrl+C | Menu: Ctrl+T | Help: Ctrl+T followed by Ctrl+H --- Light value: 4 Light value: 5 Light value: 4 Light value: 158 Light value: 343 Light value: 348 Light value: 344遮住和移开光传感器。注意,当光线值小于或等于 300 时,LED 会点亮;当光线值大于 300 时,LED 会熄灭。
😀 您的夜灯程序成功了!