首页教程中心ArduinoArduino入门:点亮第一个LED
入门20分钟#Arduino#LED#数字输出

Arduino入门:点亮第一个LED

本教程将带你完成 Arduino 的第一个经典实验——让 LED 灯闪烁。通过这个实验,你将了解 Arduino 的基本结构、数字输出引脚的使用方法,以及如何编写和上传你的第一段代码。

小米创客团队更新于 2024-03-01
Arduino入门:点亮第一个LED

项目简介

"点亮 LED" 是每一位 Arduino 学习者的第一课,就像编程世界里的 "Hello World"。通过这个简单的实验,你将掌握 Arduino 编程的基本流程,为后续更复杂的项目打下坚实基础。

你将学到:

  • Arduino IDE 的基本使用方法
  • 数字输出引脚(Digital Output)的概念
  • pinMode()digitalWrite()delay() 三个核心函数
  • 基本的电路连接方法

工作原理

LED(发光二极管)是一种半导体器件,当有足够的电流通过时就会发光。Arduino 的数字引脚可以输出 5V 高电平0V 低电平,通过控制引脚的高低电平,就能控制 LED 的亮灭。

注意: LED 是有极性的器件,长脚(阳极)接高电平,短脚(阴极)接低电平(GND)。如果接反了,LED 不会损坏,但也不会亮。

为了保护 LED 不被过大的电流烧毁,我们需要在电路中串联一个 限流电阻(通常使用 220Ω 或 330Ω)。


所需材料

材料数量说明
Arduino Uno 主板1块小米创客套件已包含
USB 数据线1根用于连接电脑和上传代码
LED 灯(红色)1个任意颜色均可
220Ω 电阻1个用于限流保护 LED
面包板1块用于搭建电路
跳线2根公对公跳线

电路连接

按照以下步骤连接电路:

  1. 将 LED 插入面包板,长脚(阳极)在右侧
  2. 将 220Ω 电阻一端连接到 LED 的长脚
  3. 电阻另一端用跳线连接到 Arduino 的 13号引脚
  4. 将 LED 的短脚(阴极)用跳线连接到 Arduino 的 GND 引脚
code
Arduino 13号引脚 ──── 220Ω电阻 ──── LED阳极(+) ──── LED阴极(-) ──── GND
💡 小贴士: Arduino Uno 的 13 号引脚上内置了一个 LED,即使不连接外部 LED,也可以直接观察到闪烁效果。

编写代码

打开 Arduino IDE,新建一个项目,输入以下代码:

cpp
// LED 闪烁示例 // 小米创客 kidsbits 出品

const int LED_PIN = 13; // 定义 LED 连接的引脚号

void setup() { // 将 13 号引脚设置为输出模式 pinMode(LED_PIN, OUTPUT); }

void loop() { digitalWrite(LED_PIN, HIGH); // 点亮 LED(输出高电平) delay(1000); // 等待 1000 毫秒(1秒) digitalWrite(LED_PIN, LOW); // 熄灭 LED(输出低电平) delay(1000); // 等待 1000 毫秒(1秒) }

代码详解

setup() 函数: 这个函数在 Arduino 上电或复位后只运行一次,通常用于初始化设置。pinMode(LED_PIN, OUTPUT) 将 13 号引脚配置为输出模式,告诉 Arduino 这个引脚要向外输出电信号。

loop() 函数: 这个函数会无限循环执行,是 Arduino 程序的主体。

  • digitalWrite(LED_PIN, HIGH):向 13 号引脚输出高电平(5V),LED 点亮
  • delay(1000):程序暂停 1000 毫秒(即 1 秒)
  • digitalWrite(LED_PIN, LOW):向 13 号引脚输出低电平(0V),LED 熄灭
  • delay(1000):再次暂停 1 秒

这样 LED 就会以 1 秒亮、1 秒灭的节奏不断闪烁。


上传与运行

  1. 用 USB 数据线将 Arduino 连接到电脑
  2. 在 Arduino IDE 中选择正确的开发板型号(工具 → 开发板 → Arduino Uno)
  3. 选择正确的串口(工具 → 端口 → COMx 或 /dev/ttyUSBx)
  4. 点击工具栏上的 上传按钮(向右箭头图标)
  5. 等待编译和上传完成,看到 "上传成功" 提示后,LED 就开始闪烁了!

进阶挑战

完成基础实验后,试试这些进阶挑战:

挑战1:改变闪烁速度 修改 delay() 函数的参数,让 LED 闪烁得更快或更慢。试试 delay(200)delay(2000) 的效果。

挑战2:SOS 摩斯密码 用 LED 闪烁发出 SOS 信号(三短三长三短):

cpp
// SOS: ... --- ... void blink(int times, int duration) {   for (int i = 0; i < times; i++) {     digitalWrite(LED_PIN, HIGH);     delay(duration);     digitalWrite(LED_PIN, LOW);     delay(200);   }   delay(500); }

挑战3:多个 LED 流水灯 连接 5 个 LED 到不同引脚,让它们依次点亮,制作流水灯效果。


常见问题

Q:上传时提示"找不到端口"怎么办? A:请检查 USB 数据线是否连接好,并在设备管理器中确认 Arduino 驱动已正确安装。如果驱动未安装,请下载 CH340 驱动程序。

Q:LED 不亮怎么办? A:检查以下几点:①LED 是否接反了(长脚接高电平);②电阻是否连接正确;③代码是否成功上传(上传后 Arduino 上的 TX/RX 指示灯会闪烁)。

Q:可以不用电阻吗? A:不建议。没有限流电阻,LED 可能因为电流过大而损坏,长时间使用还可能损坏 Arduino 的引脚。