Arduino Uno 引脚图详解与功能说明 – wiki大全

Arduino Uno 引脚图详解与功能说明

Arduino Uno 是 Arduino 系列中最经典、最受欢迎的开发板,非常适合初学者和专业人士进行电子原型设计。了解其引脚的功能是学习和使用 Arduino 的第一步。本文将为您提供一个详尽的指南。


整体引脚布局

首先,让我们看一下 Arduino Uno 的整体引脚分布图:

Arduino Uno Pinout

Arduino Uno 的引脚主要分布在开发板的两侧,可以分为几大类:电源引脚模拟输入引脚数字输入/输出引脚。此外,还有一些具有特殊功能的引脚。


1. 电源引脚 (Power Pins)

这些引脚用于为 Arduino Uno 本身供电,或从 Arduino Uno 向外部元件供电。

  • VIN (Voltage Input): 当使用外部电源(如电池或电源适配器)为 Arduino 供电时,这是输入电压的引脚。建议电压范围为 7V 到 12V。通过此引脚输入的电压会经过板载的稳压器降至 5V。
  • 5V: 经过稳压器后输出的稳定 5V 电压。这个引脚可以为大多数传感器和执行器供电。其最大输出电流通常在 500mA 左右。
  • 3.3V: 板载 3.3V 稳压器提供的稳定 3.3V 电压。适用于需要较低电压的传感器和模块。其最大输出电流约为 50mA。
  • GND (Ground): 接地引脚。一个电路中必须有共同的接地点才能正常工作。Arduino Uno 上有多个 GND 引脚,它们都是内部连接的。
  • IOREF (Input/Output Reference): 此引脚提供开发板 I/O 引脚的工作电压参考(在 Arduino Uno 上是 5V)。扩展板(Shield)可以读取此引脚的电压,以确定是适应 5V 还是 3.3V 的工作环境。

2. 模拟输入引脚 (Analog In)

Arduino Uno 有 6 个模拟输入引脚,标记为 A0A5

  • 功能: 主要用于读取模拟传感器的值。这些引脚内置一个 10 位(10-bit)的模数转换器 (ADC),可以将输入的 0V 到 5V 的模拟电压信号转换为 0 到 1023 的数字值。
  • 多功能性: 这些引脚也可以作为数字输入/输出引脚使用,此时它们的功能与数字引脚 0-13 相同。你可以称它们为 A0A1 等,或者数字引脚 14 (A0)、15 (A1),以此类推。
  • I2C 通信: A4A5 引脚也具有特殊功能,可作为 I2C 通信的 SDA (数据线) 和 SCL (时钟线)。

3. 数字输入/输出引脚 (Digital I/O)

Arduino Uno 拥有 14 个数字输入/输出引脚,标记为 013

  • 功能: 这些引脚可以被配置为输入 (INPUT) 或输出 (OUTPUT) 模式。
    • 输入模式: 读取数字信号(高电平 HIGH 或低电平 LOW)。
    • 输出模式: 输出数字信号(5V 表示 HIGH,0V 表示 LOW)。
  • 工作电压: 每个引脚的工作电压为 5V,最大直流电流为 20mA (推荐) 或 40mA (极限)。

这些数字引脚中,有几个具有特殊功能:

a. 串行通信 (Serial: RX/TX)

  • Pin 0 (RX): 接收 (Receive) 数据。
  • Pin 1 (TX): 发送 (Transmit) 数据。
  • 说明: 这两个引脚用于与计算机或其他串行设备进行 TTL 串行通信。当你通过 USB 将程序上传到 Arduino 时,实际上就是在使用这两个引脚。因此,在上传程序时,最好不要将任何外部设备连接到 Pin 0 和 Pin 1,以免干扰通信。

b. 脉宽调制 (PWM)

  • Pin 3, 5, 6, 9, 10, 11: 这些引脚旁边标有波浪线 ~
  • 功能: 它们可以产生模拟输出效果,即脉宽调制 (PWM) 信号。通过 analogWrite() 函数,你可以让这些引脚输出一个在 0V 到 5V 之间快速切换的方波,通过改变方波的占空比(Duty Cycle),可以模拟出不同的电压等级,常用于控制 LED 的亮度或舵机 (Servo) 的角度。

c. 外部中断 (External Interrupts)

  • Pin 2 (interrupt 0):
  • Pin 3 (interrupt 1):
  • 功能: 这两个引脚可以配置为外部中断。当引脚上的电平发生变化(如从低到高、从高到低或任意变化)时,可以触发一个中断,使 Arduino 暂停当前正在执行的任务,转而去执行一个特定的中断服务程序 (ISR)。这对于需要快速响应外部事件的应用非常有用。

d. SPI 通信 (Serial Peripheral Interface)

  • Pin 10 (SS): 片选 (Slave Select)
  • Pin 11 (MOSI): 主出从入 (Master Out Slave In)
  • Pin 12 (MISO): 主入从出 (Master In Slave Out)
  • Pin 13 (SCK): 串行时钟 (Serial Clock)
  • 说明: 这是一种高速的全双工串行通信协议,常用于连接 SD 卡模块、显示屏等外设。

e. I2C 通信 (Inter-Integrated Circuit)

  • SDA (Serial Data): 数据线。
  • SCL (Serial Clock): 时钟线。
  • 说明: 在 Arduino Uno R3 版本上,除了 A4 (SDA) 和 A5 (SCL) 外,还在 AREF 引脚旁边增加了两个专用的 SDASCL 引脚。它们内部与 A4/A5 相连,提供了更方便的接线方式。I2C 协议只需两根线即可连接多个设备。

4. 其他特殊功能引脚

  • AREF (Analog Reference): 模拟输入参考电压。默认情况下,AREF 连接到 5V。如果你需要为 ADC 提供一个不同于 5V 的参考电压上限(例如,使用一个最高输出 3.3V 的传感器),可以将外部参考电压连接到此引脚,并通过 analogReference() 函数进行设置。注意: 参考电压不能低于 0V 或高于 5V。
  • RESET: 复位引脚。将此引脚拉至低电平会重启单片机(ATmega328P)。通常在扩展板上会有一个复位按钮连接到此引脚。你也可以通过外部按钮连接此引脚和 GND 来实现手动复位。
  • ICSP (In-Circuit Serial Programming): 这是一个 6 针的编程接口,包含了 SPI 引脚 (MOSI, MISO, SCK)、RESET、VCC 和 GND。它主要用于在不拆下单片机的情况下直接为其烧录 Bootloader 或程序,也可以作为标准的 SPI 接口使用。

总结

引脚类别 名称/编号 主要功能
电源 VIN 外部电源输入 (7-12V)
5V 5V 稳压输出
3.3V 3.3V 稳压输出
GND 接地
IOREF I/O 参考电压 (Uno 上是 5V)
模拟输入 A0 – A5 读取模拟信号 (0-1023),也可作为数字 I/O
数字 I/O 0 (RX), 1 (TX) 串行通信 (TTL)
2, 3 外部中断
3, 5, 6, 9, 10, 11 PWM (模拟输出)
10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK) SPI 通信
A4 (SDA), A5 (SCL) I2C 通信 (也位于专用引脚上)
其他 AREF 模拟参考电压输入
RESET 复位单片机
ICSP Header 用于烧录 Bootloader 或作为 SPI 接口

希望这份详细的指南能帮助你更好地理解和使用你的 Arduino Uno 开发板!

滚动至顶部