站内搜索
发作品签到
专业版

【核心板】RP2040最小系统

工程标签

3.7w
0
0
66

简介

基于RP2040的树莓派Pico最小系统核心板设计,可选用Python或C/C++进行开发,方便快速入门开发学习,迷你小巧,灵活易用。

简介:基于RP2040的树莓派Pico最小系统核心板设计,可选用Python或C/C++进行开发,方便快速入门开发学习,迷你小巧,灵活易用。

开源协议

GPL 3.0

创建时间:2022-12-01 14:55:14更新时间:2023-03-16 20:56:38

描述

1.总体概述

Raspberry Pi Pico是一款基于RP2040设计的低成本高性能微控制器开发板,可选用Python或C/C++进行开发,方便快速入门开发学习,迷你小巧,灵活易用。
图片1.png

引脚分布

图片2.png

板载资源

图片3.png

  • 主控芯片:RP2040,QFN-56贴片封装;
  • 存储芯片:SPI Flash;
  • 电源接口:TYPE C;
  • 功能按键:BOOT和复位按键;
  • LED显示:电源指示和状态显示灯;
  • 调试接口:TYPE C和SWD接口;
  • 外接引脚:引出可编程I/O,方便扩展连接;

优势特点

图片4.png

  • 板子外观小巧精致,尺寸为53.34mm22.86mm(2100mil900mil);
  • 兼容主流树莓派Pico,两排针间距为17.78mm,可适用于洞洞板;
  • 支持使用MicoPython和C/C++语言开发,方便快速入门学习;
  • 提供TYPE C串口和SWD接口,方便进行开发和调试;
  • 板载复位(RESET)和启动模式切换(BOOTSEL)按键,
  • 支持UF2的USB大容量存储启动模式,用于拖放式编程;
  • 价格便宜,超低功耗,外引功能引脚丰富,性价比高;
  • 使用嘉立创优质PCB以及正品元器件,保障产品质量;

2.芯片介绍

RP2040芯片介绍

图片5.png

  • 双核Cortex M0+,最高频率133MHz
  • 内置264kB的6扇区SRAM
  • 30个多功能GPIO引脚
  • 6个SPI Flash专用引脚(支持XIP)
  • 常见外围设备专用硬件
  • 可编程I/O支持外部设备
  • 4通道ADC,内置温度传感器,采样频率500ksps,12位分辨率
  • USB 1.1主机和设备支持

RP2040系统概述

图片6.png

RP2040引脚描述

图片7.png

  • GPIOx:通用数字输入和输出,RP2040可以连接多个内部中的一个外设到每个GPIO,或直接从软件上控制GPIO。
  • GPIOx/ADCy:通用数字输入和输出,具有模数转换功能。RP2040 ADC有一个模拟多路复用器,可以选择这些引脚中的任何一个,并采样电压。
  • QSPIx:接到SPI,Dual-SPI或Quad-SPI Flash设备,可以直接执行代码。也可当作GPIO用。
  • USB_DP and USB_DM:USB控制器,支持全速设备和全/低速主机,每个引脚都需要串联一个27Ω电阻,内部总线提供了上下拉功能。
  • XIN and XOUT:将一个晶体连接到RP2040的晶体振荡器。XIN也可以用作单端CMOS时钟输入,而XOUT是断开的。时钟输入,同时断开XOUT的连接。USB引导程序需要一个12MHz的晶体或12MHz的时钟输入。
  • RUN:全局异步复位引脚。低电平驱动时复位,高电平驱动时运行。如果不需要外部复位,该引脚可以直接与IOVDD绑定。
  • SWCLK and SWDIO:提供对两个处理器的调试访问处理器的调试访问,可用于下载代码。
  • TESTEN:工厂测试模式引脚。绑定到GND。
  • GND:单个外部接地连接,与RP2040内部接地焊盘相连接。
  • IOVDD:数字GPIO的电源,标称电压1.8V至3.3V。
  • USB_VDD:用于内部USB全速PHY的电源,标称电压3.3V。
  • ADC_AVDD:用于模数转换器的电源,标称电压3.3V。
  • VREG_VIN:内部核心电压调节器的电源输入,标称电压1.8V至3.3V。
  • VREG_VOUT:内部核心电压调节器的电源输出,标称电压1.1V,最大电流100mA。
  • DVDD:数字核心电源,标称电压1.1V。可以连接到VREG_VOUT,或一些其他板级电源。

RP2040总线结构

RP2040具有双Cortex-M0+内核,DMA,内部存储器和外设通过AHB/APB总线结构连接。
图片8.png

RP2040商品介绍

RP2040商品介绍.png

Flash芯片介绍

Flash存储器又称闪存,是一类非易失性存储器,供电电源关闭后仍能保持片内数据信息不丢失,可重复擦除和再编程,成本低、密度大、可靠耐用,易于使用。
Flash主要分为NOR Flash和NAND Flash两种,NOR Flash分为串行(SPI)和并行(parallel),串行结构相对简单、成本低,能满足一般系统对速度及数据读写的要求,一般用来存放BootLoader引导程序;NAND Flash容量大,实际应用方式复杂,主要用来存放用户真正的程序。
为了能够存储RP2040启动和运行的程序代码,我们需要使用一个Flash存储器。 RP2040最大支持16MB的Flash存储器,这里选择W25Q128JVSIQ型号, Quad-SPI NOR Flash,通讯方式为SPI,128Mbit(16MB)存储大小,如果不需要那么多存储空间,可以使用存储空间较小的Flash来代替,降低成本。

W25Q128JVSIQ引脚描述

图片9.png
图片10.png

W25Q128JVSIQ商品介绍

W25Q128JVSIQ商品介绍.png
品 牌:WINBOND(华邦)
厂家型号:W25Q128JVSIQ
商品编号:C97521
封 装:SOIC-8-208mil
数据手册:📂 下载文件
商品毛重:0.465克(g)
包装方式:管装
网友设计参考:📎 Flash储存器—W25Q128方案验证板

3.工程设计

电源电路

RP2040需要3.3V(用于I/O)和1.1V(用于芯片的数字核心电压)两种电压供应,RP2040内部有一个3.3V转1.1V的LDO,所以不需要担心1.1V的电源问题。
电源采用TYPE-C接口输入VBUS(5V),VBUS和VSYS通过二极管连接,再通过外部的LDO(ME6211)输出固定的3.3V,在LDO的输入/出端加上2.2uF和100nF电容滤波。因为RP2040具有USB数据传输功能,所以DP/DN与RP2040相连接。
图片11.png

RP2040主控电路

将RP2040的引脚全部引出,USB_DP和USB_DM引脚必须分别串联上27Ω电阻再与TYPE C连接,不能直接连接。
在RP2040的内部LDO(3.3V→1.1V)的输入(VREG_IN)和输出(VREG_OUT)引脚附近放置2.2uF的去耦电容,以便提供稳定的1.1V电源。
在RP2040需供电的引脚加上100nF的去耦电容。滤除电源噪声,提供稳定的电源供应。
在绘制PCB时去耦电容应尽可能挨近芯片引脚放置,注意电源流向进行走线绘制。
TESTEN工厂测试模式引脚,和GND绑定相连接。
图片12.png

ADC采样电路

RP2040具有ADC功能的GPIO26-29引脚在IOVDD(3V3)端之间分别接有内部反向二极管,分辨率为12位。
ADC的基准电压默认为3.3V,C7起滤波作用,R5和R6分压得到1/3的VSYS,与Q1(DMG1012T-7)相连接,可通过GPIO29_ADC3进行电压监视。
图片13.png

Flash闪存电路

W25Q128JVSIQ的引脚与RP2040的QSPIx引脚相连接,Flash闪存要求RP2040芯片选择输入电压与自己的3.3V电源引脚处于同一电压,否则,它不能正常工作。所以在W25Q128JVSIQ电源引脚(VCC)附近放置2.2uF和100nF的滤波电容,以便提供稳定的3.3V供W25Q128JVSIQ所使用。
在绘制PCB时,应尽可能缩短连接距离,减少外围电路的串扰,保证信号的完整性。
图片14.png

按键电路

  1. 复位按键与RP2040的RUN引脚相连接,外接上拉电阻使RUN默认稳定为高电平,按下RESET按键,RUN被拉低,板子复位重启,在按键两端接个100nF电容,可以加快复位响应时间。
  2. 启动模式切换按键与RP2040的QSPI_SS引脚串联一个1kΩ相连接,串联电阻防止在BootLoader模式时,随后按下复位时,还是从BootLoader模式启动,而不是运行Flash的内容。当RP2040上电时,QSPI_SS引脚将自动默认为上拉,RP2040在启动过程中会检查这个I/O的值,QSPI_SS为逻辑0,RP2040进入引导加载驱动BootLoader模式。
  • 未按BOOTSEL按键时,复位或上电,从Flash启动,进入normal普通模式。
  • 按下BOOTSEL按键时,复位或上电,将显示为一个RPI-RP2磁盘,进入BootLoader模式,拖放UF2固件进行编程开发。

在开机有短暂一段时间不能保证QSPI_SS引脚的状态,增加一个上拉电阻就可始终得到满足。W25Q128JVSIQ这款Flash闪存外部上拉电阻是不必要的,所以标记为NO-FIT,焊接时可忽略不焊。
图片15.png

晶振电路

晶振选用SMD3225-4P封装12MHz的晶振,在不需要严格时序要求时,可以使用内部振荡器输入。晶振两旁的15pF电容作用是保证振荡频率更加稳定,在XOUT中串联1kΩ的电阻用于限流,可以防止晶振过驱导致寿命减少或损坏,选用其他不同的晶振,可能需要调整这些值。
图片16.png

LED指示电路

电源指示灯(红),上电时亮起,证明最小系统供电部分正常工作;
状态显示灯(蓝),用于给RP2040的GPIO25引脚测试,通过程序实现亮灭;
图片17.png

引脚电路

引脚使用2个1×20Pin的2.54mm排针孔方式引出,方便扩展项目连接。
在绘制PCB时,要注意两排针距离为17.78mm,兼容市面主流的树莓派Pico板。
图片18.png

调试接口

USB串口调试接口(USB1),是树莓派Pico进行重新编程/烧写程序的最简洁方法,通常使用此方式调试。
SWD下载调试接口(H1),电容为滤波作用,使下载烧录性能更加稳定。
图片19.png

SCH_RP2040最小系统

图片20.png

PCB 布局建议

图片21.png

  • TYPE-C靠左侧板边居中摆放;
  • 排针间距为17.87mm,放置在板边两侧;
  • 主控芯片摆放在板子中部位置,方便与扩展引脚的外接排针走线;
  • 晶振靠近放置在MCU附近,减小干扰;
  • SWD调试排针接口放置在板右侧;
  • 滤波电容紧挨需滤波引脚放置;

PCB 布线建议

图片22.png

  • 电源线宽设置为15mil,信号线宽设置为8mil;
  • 以顶层走线为主,走不通的线可以放置过孔切换到底层进行连接;
  • 走线过程中优先走直线,需要拐弯的地方以135°钝角或圆弧为主,横平竖直,保持设计美规;
  • 晶振走线尽量短,底部不要走线,减少噪声干扰;
  • 在布线过程中适当放置GND扇孔占位,避免覆铜后GND不完整;

丝印覆铜建议

图片23.png

  • 标记注明板子信息(RP2040最小系统);
  • 添加丝印标记按键,外接引脚和调试接口功能;
  • 在绘制调整完PCB后加上泪滴效果,使板子更加美观稳固;
  • 在元器件底下添加JLCJLCJLCJLC指定客编位置,成板美观;

4.编程开发

开发环境

树莓派可以使用MicroPython和C/C++语言进行开发学习,使用MicroPython语言开发时建议使用Thonny IDE,C/C++语言开发时建议使用Arduino IDE。简单友好,方便快速入门,上手学习。
图片24.png
图片25.png

烧录固件

  • 进入MicroPython官网https://micropython.org/download/rp2-pico/下载UF2固件;
  • 按住BOOTSEL按键不放,将Pico插入电脑的USB串口,电脑会弹出一个RPI-RP2的磁盘,在这文件夹下的INDEX.HTM文件,点击会跳转打开树莓派Pico的官网,INFO_UF2.TXT文件,则是记录板子当前的信息。
  • 将下载好的UF2文件拖入RPI-RP2文件夹中。此时打开的RPI-RP2窗口会自动关闭,树莓派Pico自动重启,同时在设备管理器器可以看到一个通过USB虚拟出来的端口,固件烧录完成。
    图片26.png

Thonny

图片27.png

Arduino

图片28.png

5.实物验证

物料清单

图片29.png

器件焊接

图片30.png
参考顺序

  • 首先焊接RP2040芯片(U1),焊接时需先将在QFN封装上锡,或者使用锡膏上加热台/热风枪;

  • 再焊接TYPE-C,二极管(D1),按键,Flash(U2);

  • 然后再焊接电阻电容,LED和晶振;

  • 最后再根据需要选择是否需要焊接排针。
    注意事项

  • 焊接时可选择嘉立创EDA工具栏中的焊接辅助工具,实时交互方便焊接;

  • 优先焊接RP2040芯片,避免其它器件影响焊接;

  • 焊接排针时可用一块空板或洞洞板顶住,防止焊斜,影响使用。

顶层装配图

图片31.png

底层装配图

图片32.png

成品展示

图片33.png

实物验证

图片34.png

Zadig

Zadig可以帮助用户装载通用驱动,解决设备无法连接电脑的问题,保证外设可以正常访问电脑。点击Options→List All Devices,选择修改时需要注意不要选到系统驱动程序(RP2040驱动程序USB ID:2E8A)。
图片35.png
BootLoader模式

  • RP2 Boot(interface 0) → USB Serial(CDC)
  • RP2 Boot(interface 1) → WinUSB

normal普通模式

  • Raspberry Pi Pico(interface 0) → USB Serial(CDC)

图片36.png

常见问题

  • USB连接传输不起作用,没有弹出RPI-RP2磁盘管理器或串口号
  1. 检查是否没有按住BOOTSEL按键,或者中间松开过;
  2. TYPE C必须是数据线(充电线不带数据传输功能),TYPE-C的DP/DN未连接好(虚焊);
  3. 晶振不起振(虚焊或者损坏了)。
  • 烧录初始UF2固件后设备管理器无法识别/未知USB设备(设备描述符请求失败)
  1. 托拽刷入flash_nuke.uf2清除固件,将Flash中原有内容清除,然后再次刷入初始UF2固件;
  2. RP2040芯片虚焊或者损坏了,焊接QFN封装时一定得先在引脚处上锡再焊接或加热。
  • 使用了Zadig导致Pico在bootloader mode(引导加载程序模式)下不会枚举作为存储数据驱动器
  1. 在设备管理器中找到所有RP2的引导驱动;
  2. 右键选择“卸载设备”,勾选“删除此设备的驱动程序软件”(如果弹出询问时);
  3. 点击卸载,一定要卸载所有RP2相关的引导。

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
暂无数据

附件

序号文件名称下载次数
1
【核心板】RP2040最小系统.pptx
1172
2
Firmware.zip
391
3
RP2040-datasheet.pdf
295
4
W25Q128JVSIQ-datasheet.pdf
155
5
Raspberry-Pi-Pico-C-sdk.pdf
336
6
Raspberry-Pi-Pico-Python-sdk.pdf
262
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

评论

全部评论(1
按时间排序|按热度排序
粉丝0|获赞0
相关工程
暂无相关工程

底部导航