Arduino Uno
May 20, 2023About 3 min
简介
Arduino Uno R3是一款广泛使用的开源单板微控制器开发板,它基于ATmega328P微控制器,具有简单易用、灵活性高和丰富的扩展性的特点。Arduino Uno R3开发板被广泛应用于各种电子项目和原型制作,无论是初学者还是专业开发者都能轻松上手。
![Arduino Uno R3](/assets/img/arduino/uno/Uno.png)
产品参数
- 处理器: Arduino Uno R3采用Atmel AVR 8位微控制器ATmega328P作为主要处理器,具有高性能和低功耗。
- 时钟频率: Arduino Uno R3的时钟频率为16 MHz,能够提供快速且可靠的计算能力。
- 数字I/O引脚: Arduino Uno R3拥有14个数字输入/输出引脚(其中6个可用作PWM输出)供连接各种外部设备和传感器。
- 模拟输入引脚: Arduino Uno R3具有6个模拟输入引脚,可用于读取模拟信号,例如温度、光线等。
- 存储器: Arduino Uno R3具有32KB的闪存程序存储空间,用于存储用户编写的程序,以及2KB的SRAM和1KB的EEPROM。
- 通信接口: Arduino Uno R3支持串口通信(通过USB接口)和I2C、SPI等常用通信协议,方便与其他设备进行数据交互。
- 输入电压: USB5V、DC6-12V
- 输出电压: 3.3V-5V
- 开发环境: Arduino、Mind+、Mixly等。
引脚说明
![Arduino Uno](/assets/img/arduino/uno/UnoFoot.png)
序号 | 引脚名称 | 功能描述 |
---|---|---|
1 | D0 | 数字引脚,RX(接收) |
2 | D1 | 数字引脚,TX(发送) |
3 | D2 | 数字输入/输出引脚 |
4 | D3 | 支持PWM输出的数字引脚 |
5 | D4 | 数字输入/输出引脚 |
6 | D5 | 支持PWM输出的数字引脚 |
7 | D6 | 支持PWM输出的数字引脚 |
8 | D7 | 数字输入/输出引脚 |
9 | D8 | 数字输入/输出引脚 |
10 | D9 | 支持PWM输出的数字引脚 |
11 | D10 | 支持PWM输出的数字引脚 |
12 | D11 | 支持PWM输出的数字引脚 |
13 | D12 | 数字输入/输出引脚 |
14 | D13 | 数字输入/输出引脚 |
15 | A0 | 模拟输入引脚 |
16 | A1 | 模拟输入引脚 |
17 | A2 | 模拟输入引脚 |
18 | A3 | 模拟输入引脚 |
19 | A4 | 模拟输入引脚,也用作I2C总线的SDA引脚 |
20 | A5 | 模拟输入引脚,也用作I2C总线的SCL引脚 |
21 | 5V | 5V电源引脚 |
22 | 3.3V | 3.3V电源引脚 |
23 | GND | 地引脚 |
24 | RESET | 复位引脚 |
Arduino示例代码
点灯程序
// 定义LED引脚
const int ledPin = 13;
void setup() {
// 设置LED引脚为输出模式
pinMode(ledPin, OUTPUT);
}
void loop() {
digitalWrite(ledPin, HIGH); // 将LED引脚设置为高电平,LED亮起
delay(1000); // 延迟1秒钟
digitalWrite(ledPin, LOW); // 将LED引脚设置为低电平,LED熄灭
delay(1000); // 延迟1秒钟
}
读取模拟引脚
// 读取模拟值
int analogPin = A1; // 设置要读取的模拟引脚为A1
void setup() {
Serial.begin(9600); // 初始化串口通信
}
void loop() {
int sensorValue = analogRead(analogPin); // 读取模拟引脚的值
Serial.print("Analog value on A1: ");
Serial.println(sensorValue); // 打印读取的模拟值
delay(1000); // 延迟1秒钟
}
读取数字引脚
int digitalPin = 2; // 设置要读取的数字引脚为D2
void setup() {
Serial.begin(9600); // 初始化串口通信
pinMode(digitalPin, INPUT); // 将引脚设置为输入模式
}
void loop() {
int sensorValue = digitalRead(digitalPin); // 读取数字引脚的值
Serial.print("Digital value on D2: ");
Serial.println(sensorValue); // 打印读取的数字值
delay(1000); // 延迟1秒钟
}
学习资料
学习资料下载 密码:8888
串口驱动下载
ArduinoISP
![ISP引脚](/assets/img/arduino/nano/isp.png)
Mind+、Mixly扩展库下载
疑难解答
更多问题及有趣的应用,请访问论坛 或加入QQ技术交流群:522420541