返回

在 Velxio 上用 Arduino 搭建交通灯模拟器

简介

是否曾想搭建一个交通灯,却苦于手边没有元件?借助 Velxio,您可以直接在浏览器中模拟一整套基于 Arduino 的交通灯系统。本项目使用三个 LED(红、黄、绿)连接 Arduino Uno,模拟经典的交通灯顺序:红 → 黄 → 绿 → 黄 → 红。这是一个完美的入门项目,帮助您学习数字输出、时序控制和顺序逻辑。

电路详解

让我们来看看电路。下图展示了完整的接线方式:

Velxio 模拟器画布上的交通灯电路图

元件清单

接线细节

每个 LED 有两个引脚:阳极(较长引脚,标记为 “A”)和阴极(较短引脚,标记为 “C”)。接线非常简单:

三个 LED 共用 Arduino 上的同一个 GND 连接。这是一种共地配置。

代码详解

现在让我们来看看控制灯光变化的代码。在 Velxio 中打开代码编辑器:

Velxio Monaco 编辑器中的交通灯源代码

// Traffic Light Simulator
// Red -> Yellow -> Green -> Yellow -> Red

const int RED_PIN = 13;
const int YELLOW_PIN = 12;
const int GREEN_PIN = 11;

void setup() {
  pinMode(RED_PIN, OUTPUT);
  pinMode(YELLOW_PIN, OUTPUT);
  pinMode(GREEN_PIN, OUTPUT);
}

void loop() {
  // Red light
  digitalWrite(RED_PIN, HIGH);
  delay(3000);
  digitalWrite(RED_PIN, LOW);

  // Yellow light
  digitalWrite(YELLOW_PIN, HIGH);
  delay(1000);
  digitalWrite(YELLOW_PIN, LOW);

  // Green light
  digitalWrite(GREEN_PIN, HIGH);
  delay(3000);
  digitalWrite(GREEN_PIN, LOW);

  // Yellow light again
  digitalWrite(YELLOW_PIN, HIGH);
  delay(1000);
  digitalWrite(YELLOW_PIN, LOW);
}

工作原理

  1. 引脚定义:我们为三个引脚定义常量:RED_PIN = 13YELLOW_PIN = 12GREEN_PIN = 11。这些与接线一致。
  2. 初始化:在 setup() 中,我们使用 pinMode() 将三个引脚设置为 OUTPUT 模式。这告诉 Arduino 通过这些引脚输出电压。
  3. 循环loop() 函数会无限运行。它遵循以下顺序:
    • 点亮红色 LED(HIGH),等待 3 秒,然后熄灭(LOW)。
    • 点亮黄色 LED,等待 1 秒,然后熄灭。
    • 点亮绿色 LED,等待 3 秒,然后熄灭。
    • 再次点亮黄色 LED,等待 1 秒,然后熄灭。
    • 然后循环从红灯重新开始。

这样就形成了熟悉的交通灯模式。

学生需掌握的关键概念

常见问题与调试技巧

扩展建议

在基本交通灯正常工作后,可以尝试以下增强功能:

动手尝试

准备好搭建自己的交通灯了吗?在 Velxio 中打开示例并开始实验:

在 Velxio 上打开交通灯示例

您可以编辑代码、更改时序或添加更多 LED。模拟器完全在浏览器中运行——无需下载,无需硬件。使用工具栏编译并运行您的代码:

Velxio 编辑器工具栏,包含编译和运行控件

Velxio 画布工具栏,位于模拟视口上方

如果需要添加新元件,请打开元件选择器:

Velxio 元件选择器弹窗,按类别浏览元件

如果想使用库,只需点击一下即可打开库管理器:

Velxio 库管理器弹窗,列出已安装的 Arduino 库

祝您模拟愉快!


分享到:
David Montero

作者

David Montero

Creator of Velxio, the open-source circuit and Arduino simulator.

GitHub velxio.dev

相关文章


上一篇
按钮控制LED:你的第一个Arduino输入项目
下一篇
用Arduino点亮LED:你的第一个Velxio仿真