我自制了一块树莓派核心板,分析一下电路原理

前言

今天做一个基于RP2040的树莓派Pico,自制一个的成本在60元左右。

这是最小系统核心板设计,可选用Python或C/C++进行开发,方便快速入门。


全文导航(9部分)

硬件拆解说明、电路原理、PCB设计技巧、编程开发、焊接技巧、常见问题解答、DIY材料盘点、源文件开源、优点说明


硬件拆解说明

核心板由7个部分组成!看拆解图,更直观。


电路原理

这里会将电路拆分为9个部分,讲解一下原理。

整体原理图赏析

1.电源电路

RP2040需要3.3V(用于I/O)1.1V(用于芯片的数字核心电压)两种电压供应。

由于RP2040内部有一个3.3V转1.1V的LDO,所以不需要担心1.1V的电源问题

电源采用TYPE-C接口输入VBUS(5V),VBUSVSYS通过二极管连接,再通过外部的LDO(ME6211)输出固定的3.3V。

在LDO的输入/出端加上2.2uF100nF电容滤波。因为RP2040具有USB数据传输功能,所以DP/DNRP2040相连接

2.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绑定相连接。

3.ADC采样电路

RP2040具有ADC功能的GPIO26-29引脚IOVDD(3V3)端之间分别接有内部反向二极管,分辨率为12位。

ADC的基准电压默认为3.3VC7起滤波作用,R5R6分压得到1/3VSYS,与Q1(DMG1012T-7)相连接,可通过GPIO29_ADC3进行电压监视。

4.Flash闪存电路

W25Q128JVSIQ的引脚与RP2040QSPIx引脚相连接

Flash闪存要求RP2040芯片选择输入电压与自己的3.3V电源引脚处于同一电压,否则,它不能正常工作。

所以在W25Q128JVSIQ电源引脚(VCC)附近放置2.2uF和100nF的滤波电容,以便提供稳定的3.3V供W25Q128JVSIQ所使用。

在绘制PCB时,应尽可能缩短连接距离,减少外围电路的串扰,保证信号的完整性。

5.按键电路

复位按键与RP2040的RUN引脚相连接,外接上拉电阻使RUN默认稳定为高电平,按下RESET按键,RUN被拉低,板子复位重启。在按键两端接个100nF电容,可以加快复位响应时间

启动模式切换按键RP2040QSPI_SS引脚串联一个1kΩ相连接,串联电阻防止在BootLoader模式时,按下复位时,还是从BootLoader模式启动,而不是运行Flash的内容。

当RP2040上电时,QSPI_SS引脚将自动默认为上拉,RP2040在启动过程中会检查这个I/O的值,QSPI_SS为逻辑0,RP2040进入引导加载驱动BootLoader模式。

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

6.晶振电路

晶振选用SMD3225-4P封装12MHz的晶振。

在不需要严格时序要求时,可以使用内部振荡器输入。

晶振两旁的15pF电容作用是保证振荡频率更加稳定,在XOUT中串联1kΩ的电阻用于限流,可以防止晶振过驱导致寿命减少或损坏,选用其他不同的晶振,可能需要调整这些值

7.LED指示电路

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

8.引脚电路

引脚使用2个1×20Pin的2.54mm排针孔方式引出,方便扩展项目连接,兼容市面主流的树莓派Pico板。

9.调试接口

USB串口调试接口(USB1),是树莓派Pico进行重新编程/烧写程序的最简洁方法,通常使用此方式调试。

SWD下载调试接口(H1)电容为滤波作用,使下载烧录性能更加稳定。

PCB设计技巧

原理图设计完成,就要开始PCB设计了!

本章节主要讲解PCB的布局、布线、丝印铺铜技巧

1.布局技巧(6个)

①TYPE-C靠左侧板边居中摆放;

②排针间距为17.87mm,放置在板边两侧;

③主控芯片摆放在板子中部位置,方便与扩展引脚的外接排针走线;

④晶振靠近放置在MCU附近,减小干扰;

⑤SWD调试排针接口放置在板右侧

⑥滤波电容紧挨滤波引脚放置;

2.布线技巧(5个)

①电源线宽设置为15mil,信号线宽设置为8mil

以顶层走线为主,走不通的线可以放置过孔切换到底层进行连接;

③走线过程中优先走直线,需要拐弯的地方以135°钝角或圆弧为主,横平竖直,保持设计美规;

晶振走线尽量短,底部不要走线,减少噪声干扰;

⑤在布线过程中适当放置GND扇孔占位,避免覆铜后GND不完整;

3.丝印覆铜技巧(4个)

①标记注明板子信息(RP2040最小系统);

②添加丝印标记按键外接引脚调试接口功能;

③在绘制调整完PCB后加上泪滴效果,使板子更加美观稳固;


编程开发

1.开发环境

树莓派可以使用MicroPythonC/C++语言进行开发学习。

2.烧录固件(6步)

跟着步骤一步步来即可:

①进入MicroPython官网下载UF2固件;

②按住BOOTSEL按键不放

③将Pico插入电脑的USB串口,电脑会弹出一个RPI-RP2的磁盘

④点击文件夹下的INDEX.HTM文件,会跳转打开树莓派Pico的官网,INFO_UF2.TXT文件,则是记录板子当前的信息。

⑤将下载好的UF2文件拖入RPI-RP2文件夹中。

⑥此时打开的RPI-RP2窗口会自动关闭,树莓派Pico自动重启。同时在设备管理器器可以看到一个通过USB虚拟出来的端口,固件烧录完成。

3.Thonny

4.Arduino

焊接技巧(4个)

跟着步骤,一步步来即可:

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

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

③然后再焊接电阻电容LED晶振

④最后再根据需要,选择是否需要焊接排针。

注意事项:

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

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


常见问题解答(3个)

问题1.USB连接传输不起作用,没有弹出RPI-RP2磁盘管理器或串口号

①检查是否没有按住BOOTSEL按键,或者中间松开过;

②TYPE C必须是数据线(充电线不带数据传输功能),TYPE-C的DP/DN未连接好(虚焊);

③晶振不起振(虚焊或者损坏了)。

问题2.烧录初始UF2固件后设备管理器无法识别/未知USB设备(设备描述符请求失败)

①托拽刷入flash_nuke.uf2清除固件,将Flash中原有内容清除,然后再次刷入初始UF2固件;

②RP2040芯片虚焊或者损坏了,焊接QFN封装时一定得先在引脚处上锡再焊接或加热。

问题3.使用了Zadig导致Pico在bootloader mode(引导加载程序模式)下不会枚举作为存储数据驱动器

①在设备管理器中找到所有RP2的引导驱动;

②右键选择“卸载设备”,勾选“删除此设备的驱动程序软件”(如果弹出询问时);

③点击卸载,一定要卸载所有RP2相关的引导。


DIY材料盘点表格


源文件开源

这个DIY教程很受高校教师欢迎,老师主要是用于给学生进行拓展训练。因此本教程的开源资料也很是齐全。

如果你也想DIY这样一块核心板,请在电脑端打开相关的附件资料:【核心板】RP2040最小系统 - 嘉立创EDA开源硬件平台

第一步:点击文字链即可下载

第二步:获得文件

请在电脑端打开电路源文件:「链接」


核心板的优点

文章的最后,我总结一下这块树莓派核心板的用处和优点吧!


如果你认为这篇文章还不错的话,欢迎点赞、关注、转发、收藏~

我会持续更新优质的开源项目!

展开阅读全文

页面更新:2024-05-17

标签:电路   板子   电阻   电容   按键   芯片   接口   原理   电源   核心   模式   技巧

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2020-2024 All Rights Reserved. Powered By 71396.com 闽ICP备11008920号-4
闽公网安备35020302034903号

Top