RP2040 Uno 引脚介绍
引脚说明
![](/assets/img/raspberrypie/UnoRP2040/21.jpg)
序号 | 引脚名称 | 功能描述 |
---|---|---|
1 | D0 | 数字输入/输出引脚 |
2 | D1 | 数字输入/输出引脚 |
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 | D24 | 数字输入/输出引脚 |
16 | D25 | 数字输入/输出引脚 |
17 | SDA | 数字输入引脚,也用作I2C总线的SDA引脚 |
18 | SCL | 数字输入引脚,也用作I2C总线的SCL引脚 |
19 | A0 | 模拟输入引脚 |
20 | A1 | 模拟输入引脚 |
21 | A2 | 模拟输入引脚 |
22 | A3 | 模拟输入引脚 |
23 | 3.3V | 3.3V电源引脚 |
24 | GND | 地引脚 |
25 | RESET | 复位引脚 |
电源
与通常的Metro/Arduino板相反,UNO RP2040有三个电源输入选项、一个电源开关和几个电源引脚
![](/assets/img/raspberrypie/UnoRP2040/5.jpg)
电源输入
Type-C端口:用于为是主板供电和编程。您可以使用任何Type-C电缆为它供电,并将从Type-C PD请求3.3V。
DC接口:DC接口是一个5.5毫米的中心正直连接器,这是最常见的。在这里提供大约6V-12V来为它供电,非常适合当你有壁式适配电源时,不要使用中心阴性适配器,它不会起作用。
XH2.54端口:可接入3.3V的电池为其供电,支持充电、供电。
电源控制
开/关开关:此开关可控制直流插孔电源和Type-C电源如果您插入电路板,但什么都没有发生,请确保开关翻转到“打开”!
电源输出
3.3V:它是3.3V调节器的输出引脚。它可以提供高达400mA左右的电流
GND:它是所有电源和逻辑的共用地
VIN:它是直流插孔或USB电压中较高的,因此,如果直流插孔插入9V,VIN为9V,如果只连接USB,这将是3.3V。
逻辑引脚
![](/assets/img/raspberrypie/UnoRP2040/6.jpg)
这些逻辑引脚可用于连接屏蔽、传感器、伺服、LED等
I2C和SPI
RP2040能够在许多引脚上处理I2C、SPI和UART。然而,I2C、SPI和UART各只有两个外围设备:I2C0和I2C1、SPI0和SPI1、UART0和UART1。因此,虽然许多引脚能够使用I2C、SPI、UART,但您一次只能做两个,而且只能在单独的外围设备上,0和1。
PWM
RP2040支持所有引脚的PWM。然而,它无法同时在所有引脚上进行PWM。有8个PWM“切片”,每个有两个输出,A和B。每个引脚都分配一个PWM切片和输出。例如,A0是PWM5 A,这意味着它是第五片的第一个输出。
RX/TX开关
![](/assets/img/raspberrypie/UnoRP2040/7.jpg)
你可能想知道RX/TX开关,我们添加了这个,因为传统的Arduino板开始用0-7和8-13计算数字引脚的GPIO。然而,D0/D1引脚传统上也是硬件UART Serial1,其中D0是RX,D1是TX。然而,在RP2040上,UART引脚是另一个:D0是TX,D1是RX。因此此开关:翻转一种方式是GPIO按0-7的顺序进行,翻转另一种方式使硬件UART的逻辑位置正确,但现在引脚顺序为1,0,2,3...7.当然,如果你像我们一样经常交换针脚,这也很方便——现在你不需要切割/焊料了。位于主板SD卡座附近的开关就是RX/TX开关。
当开关在上方时,引脚如下
- RX=0
- TX=1
当开关在下方时,引脚如下
- RX=1
- TX=0
RP2040 and QSPI Flash
![](/assets/img/raspberrypie/UnoRP2040/8.jpg)
- 板丝上RP2040标签右上方的正方形是RP2040微控制器,是UNO RP2040板的“大脑”
- 板丝上RP2040标签右边的长方形是QSPI闪存。它连接到GPIO垫上没有取出的6个引脚。这样,您就不必担心SPI闪存访问与主SPI连接上的其他设备碰撞。
- QSPI很整洁,因为它允许您有4条数据进/出线,而不仅仅是SPI的单行进和单行出。这意味着QSPI至少快4倍。但实际上至少快10倍,因为您可以比普通SPI外围设备更快地计时QSPI外围设备。
- UNO RP2040配有16MB的闪存,在它正在运行的程序和MicroPython或CircuitPython使用的任何文件存储之间共享。使用C/C++时,您将获得整个闪存,如果使用Phython,您将剩下大约7MB的代码、文件、图像、字体等。
LEDs and NeoPixel
![](/assets/img/raspberrypie/UnoRP2040/9.jpg)
- NeoPixel LED:这个可寻址的RGB NeoPixel LED既是状态LED,也是用户在14上可控。在Arduino中作为PIN_NEOPIXEL可用。
- 13引脚的蓝色LED:它是用户可控的,以满足闪烁的需求。在Arduino中作为PIN_LED。
- ON LED:这个红色LED表示电路板已通电,它已连接到3.3V电源。
- CHG充电指示灯:当接入3.7V锂电池,可以通过USB给3.7V锂电池充电。
STEMMA QT
STEMMA QT-这款JST SH 4针连接器突破I2C(SCL、SDA、3.3V、GND).它运行使用STEMMA QT连接器连接到各种突破和传感器,或使用各种相关配件连接到其他东西。适用于任何STEMMA QT或Qwiic传感器/设备。多亏了这根方便的电缆,您也可以将其他与Grove I2C设备一起使用。
-在Arduino中,您可以使用带有16(SDA)和17(SCL)或Wire的STEMMA连接器。
Micro SD卡座
UNO RP2040配有micro SD卡插槽。它是为SPI接口而连接的。它还为高级用户SDIO接口连接了额外的引脚(请注意,Arduino/Python中没有发布SDIO的使用代码,所以这是一个超级尖端的设置)。
以下是Micro SD卡插槽的针脚
- SD_CD/GPIO15:这是卡检测引脚。它也是SPI1 MOSI、I2C1 SCL和PWM7 B。
- SCK/GPIO18:这是主要的SPI0 SCK引脚。它也是I2C1 SDA和PWM1 A。
- MOSI/GPIO19:这是主要的SPI0 MOSI引脚。它也是I2C1 SCL和PWM1 B。
- MISO/GPIO20:这是主要的SPI0 MISO引脚。它也是UART1 TX、I2C0 SDA和PWM2 A。
- SDIO_DATA1/GPIO21:这是SDIO data1引脚。它也是SPI0 CS、UART1 RX、I2C0 SCL和PWM2 B。
- SDIO_DATA2/GPIO22:这是SDIO data2引脚。它也是SPI0 SCK、I2C1 SDA和PWM3 A。
- SD_CS/GPIO23:这是芯片选择引脚。它也是SPI0 MOSI、I2C1 SCL和PWM3 B。
按钮和RST引脚
![](/assets/img/raspberrypie/UnoRP2040/12.jpg)
- 重置按钮重新启动电路板,并帮助进入引导加载程序。您可以单击它来重置电路板,而无需拔下USB电缆或电池。
- RST引脚可用于重置电路板,手动与GND相连以重置电路板。
- 引导按钮用于进入引导加载程序,要进入引导加载程序,请按照BOOT,然后打开主板电源(将其插入USB或按RESET)。引导加载程序用于安装。有时还需要进入引导加载程序来加载Arduino草图。
软件设置
- 步骤1.根据您的操作系统下载并安装最新版本的Arduino IDE
![](/assets/img/arduino/other/ArduinoIDE.png)
如果下载缓慢可以在国内Arduino社区下载ArduinoIDE下载地址
步骤 2.启动 Arduino 应用程序
步骤 3.将 RP2040 板包添加到 Arduino IDE
导航到File > Preferences ,然后使用以下 url 填写“Additional Boards Manager URL” :
https://github.com/earlephilhower/arduino-pico/releases/download/global/package_rp2040_index.json
![](/assets/img/raspberrypie/UnoRP2040/13.png)
导航到Tools > Board > Boards Manager... ,在搜索框中输入关键字“ RP2040 ”,选择最新版本的RP2040并安装它。
![](/assets/img/raspberrypie/UnoRP2040/14.png)
导航到工具 > 开发板 > Arduino Mbed OS RP2040 Boards并选择“ Raspberry Pi Pico ”。
![](/assets/img/raspberrypie/UnoRP2040/15.png)
导航到“工具”>“端口”,然后选择所连接的Raspberry Pi Pico的串口名称。这可能是 COM3 或更高版本(COM1和COM2通常保留用于硬件串行端口)。
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
疑难解答
更多问题及有趣的应用,请访问论坛 或加入QQ技术交流群:522420541