Raspberry Pi RP2350 是 Raspberry Pi 推出的新一代微控制器,它在上一代 RP2040的基础上进行了重大改进。本文将深入探讨 RP2350 的功能特性、与 RP2040 的比较、A 和 B 型板的差异、开发选择和限制、GPIO引脚特点以及应用案例,特别关注 USB 主机和设备模拟相关的例子。
数据手册:*附件:rp2350-datasheet.pdf
硬件设计手册:*附件:RP2350硬件设计手册.pdf
基于 RP2350 的最小系统设计(KiCad HuaQiu)
1. RP2350 的功能特性
RP2350 是一款强大的微控制器,具有以下关键特性:
- 双核架构:RP2350 搭载了 双核 Arm Cortex-M33 处理器或 Hazard3 RISC-V 处理器 ,运行频率高达 150 MHz,性能远超 RP2040。
- 丰富的内存:它拥有 520 kB 的片上 SRAM,分为 10 个独立的存储区,并支持通过专用 QSPI 总线连接高达 16 MB 的外部 QSPI 闪存/PSRAM,此外还可通过可选的第二个芯片选择连接额外的 16 MB 闪存/PSRAM。
- 多功能外设:RP2350 集成了丰富的 外设 ,包括 2 个 UART、2 个 SPI 控制器、2 个 I2C 控制器、24 个 PWM 通道、支持主机和设备模式的 USB 1.1 控制器和 PHY、12 个 PIO 状态机以及 1 个 HSTX 外设。
- 片上电源管理:它内置了开关模式电源,可生成内核电压。
- 灵活的封装选项:RP2350 提供 QFN-80 (10 × 10 mm) 和 QFN-60 (7 × 7 mm) 两种封装选择,并有带和不带封装内闪存的版本。
RP2350 的性能特点:
- 处理器核心
- 多核架构 :采用对称双核心系统,包括两个处理器核心,即 Cortex-M33 和 Hazard3,能够同时执行任务,提高系统的处理能力和吞吐量。
- 处理器频率 :两个核心的运行频率均为 150MHz,能够快速处理各种计算任务。
- 处理器特性
- 安全扩展 :Cortex-M33 处理器支持 Arm v8-M 安全扩展,包括安全启动、加密启动和安全存储等功能,保障系统的安全性。
- 中断处理
- 调试和跟踪
- 性能指标
- 运算能力 :Cortex-M33 处理器具有丰富的指令集和高性能的运算单元,能够快速执行各种运算任务,如算术运算、逻辑运算、移位操作等。
- 缓存性能 :芯片具有一定容量的缓存,包括指令缓存和数据缓存,能够提高数据访问的速度和效率。
- 功耗管理 :支持多种功耗管理模式,包括睡眠模式、深度睡眠模式和休眠模式等,能够根据系统的工作负载自动调整功耗,降低系统的能耗。
2. 与 RP2040 的比较
与上一代 RP2040 相比,RP2350 具有以下优势:
- 更高的时钟频率:RP2350 的时钟频率为 150 MHz,而 RP2040 为 133 MHz。
- 更多的引脚和 GPIO:RP2350 B 型号具有 80 个引脚和 48 个 GPIO,而 RP2040 只有 40 个引脚和 26 个 GPIO。
- 更大的内存容量:RP2350 集成了 520 KB 的 SRAM,而 RP2040 只有 264 KB。 此外,RP2354 型号还内置了 2 MB 闪存,而 RP2040 则需要外部闪存芯片。
- 更多的模拟输入:RP2350 B 型号具有 8 个模拟输入,而 RP2040 和 RP2350 A 型号只有 4 个。
- 更强大的内核:RP2350 采用了 Arm Cortex-M33 内核,它基于 Armv8-M 架构,支持硬件除法和更多 32 位指令,性能和功耗都优于 RP2040 的 Arm Cortex-M0+ 内核。
- 增强的安全性:Cortex-M33 内核增强了安全性,更适合物联网应用。
3. RP2350 A 和 B 型板的区别
RP2350 分为 A 和 B 两个型号,主要区别在于封装尺寸、引脚数量和 GPIO 数量:
- RP2350A 采用 QFN-60 封装,具有 60 个引脚和 30 个 GPIO。
- RP2350B 采用 QFN-80 封装,具有 80 个引脚和 48 个 GPIO。
此外,B 型号还具有 8 个模拟输入,而 A 型号只有 4 个。 选择哪种型号取决于项目的具体需求,如果需要更多的 GPIO 或模拟输入,则应选择 B 型号。
4. 开发选择和限制
RP2350 的开发工具和软件支持非常丰富,但也存在一些限制:
- 官方 SDK:Raspberry Pi 提供了官方 SDK,支持使用 C/C++、MicroPython 和 CircuitPython 等语言进行开发。
- VS Code 集成:推荐使用 Visual Studio Code 进行开发,它提供了 Raspberry Pi Pico 扩展,可以方便地创建、编译和调试项目。
- 启动过程复杂:RP2350 的启动过程比 RP2040 复杂得多,需要仔细研究数据手册才能理解。
- 工具链差异:RP2350 的工具链与 RP2040 不同,需要安装新的编译器和调试器。
- 裸机编程挑战:由于启动过程和工具链的差异,进行裸机编程比较困难,需要深入了解芯片架构和启动流程。
5. RP2350 GPIO 的引脚特点
RP2350 的 GPIO 引脚具有以下特点:
- 多功能性:每个 GPIO 引脚都可以连接到多种内部外设,也可以通过软件直接控制。
- 模拟输入功能:部分 GPIO 引脚具有模拟输入功能,可以连接到 ADC 进行电压采样。
- 可配置性:GPIO 引脚的方向、输出电平和输入电平都可以通过 GPIO 控制寄存器进行配置。
- 隔离寄存器:RP2350 新增了隔离寄存器,可以在低功耗状态下保存焊盘状态,由软件清除。
6. 应用案例
RP2350 适用于各种应用场景,以下是一些与 USB 主机和设备模拟相关的例子:
- USB 主机:RP2350 可以作为 USB 主机,连接 USB 设备,例如键盘、鼠标、U 盘等。它可以通过 USB 控制器和 PHY 与这些设备通信,并通过软件控制数据传输。
- USB 设备模拟:RP2350 可以模拟各种 USB 设备,例如 HID 设备、串口设备、大容量存储设备等。它可以通过 USB 控制器和 PHY 与主机通信,并通过软件模拟设备的行为。
- 例如,可以将 RP2350 模拟成一个 HID 设备,例如鼠标,并将 RP2350 上的传感器数据发送到电脑,控制电脑上的鼠标指针。
- 还可以将 RP2350 模拟成一个串口设备,将 RP2350 上的 UART 数据发送到电脑,实现与电脑的串口通信。
RP2350 是一款功能强大且灵活的微控制器,它为各种应用场景提供了无限的可能性。 相信随着 RP2350 生态系统的不断发展,我们将看到更多基于 RP2350 的创新应用。
以下是一些使用树莓派 RP2350 的开源硬件项目:
RP2350 PicoDVI
- 项目简介 :展示了如何在 RP2350 微控制器上实现 DVI 视频输出,通过硬件设计和软件算法,将原本复杂的 DVI 视频输出功能移植到微控制器上116。
- 技术亮点 :利用 RP2350 的 PIO 模块进行高速数据传输,通过 DMA 功能高效处理数据,实现了 TMDS 编码,并针对 RISC-V 进行了汇编优化116。
- 应用场景 :适用于需要高清视频输出的嵌入式系统,如智能家居设备、工业控制面板等,也为学生和研究人员提供了学习和研究的平台116。
- 项目地址 :https://gitcode.com/gh_mirrors/pi/PicoDVI11619。
Arduino-Pico
- 项目简介 :为 Raspberry Pi Pico 和 RP2350 开发板提供 Arduino 核心支持,允许开发者使用熟悉的 Arduino 编程环境进行项目开发 2 。
- 核心功能 :支持多种开发板,丰富的外设支持,包括 SPI、I2C、UART、PWM、ADC 等,还支持多核处理器的并行编程、网络功能、文件系统支持、OTA 升级、USB 支持和音频支持等 2 。
- 应用场景 :在物联网、智能家居、消费电子、教育实验等领域有广泛的应用,如制作智能小车、构建无线传感器网络、开发便携式音乐播放器、创建游戏控制器等 13 。
- 项目地址 :https://gitcode.com/gh_mirrors/ar/arduino-pico21013。
Google Pigweed
- 项目简介 :是一个嵌入式库的集合,可帮助程序员和开发者团队为使用微控制器的嵌入式设备构建出色的软件,如 RP2350 及其前身 RP2040415。
- 技术亮点 :通过 Bazel 进行密封式构建、闪存和测试,提供完全开源的 Clang/LLVM 嵌入式工具链,围绕合理的、与硬件无关的 C++ 构建代码库,还支持通过 RPC 与 Pico 通信、在 Visual Studio Code 中进行创作、跨平台构建和工具链等 4 。
- 应用场景 :适合大型专业嵌入式开发团队在 RP2350 上构建原型和产品 4 。
- 项目地址 :[https://opensource.googleblog.com/2020/03/pigweed-collection-of-embedded-libraries.html]
设计参考
简述:使用 RP235x 系列芯片创建一个简单的电路设计
原理图
评估板信息
评估板图片
评估板介绍:Raspberry Pi Pico 2 是一款基于新型 Raspberry Pi RP2350 双核 RISC-V 或双核 Cortex-M33 微控制器的 MCU 开发板
*附件:Raspberry Pi Pico 2数据手册.pdf
使用手册
Getting started with Raspberry Pi Pico-series Microcontrollers
原理图
设计文件
*附件:RPi-Pico-R3-PUBLIC-20200119.zip (Cadence Allegro)
审核编辑 黄宇
-
嵌入式
+关注
关注
5082文章
19126浏览量
305228 -
开源
+关注
关注
3文章
3349浏览量
42500
发布评论请先 登录
相关推荐
评论