尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

手把手拆解STM32F401RCT6开发板硬件设计:从原理图到PCB全流程

手把手拆解STM32F401RCT6开发板硬件设计:从原理图到PCB全流程 很多人用STM32F401RCT6的开发板用得很顺手却很少想过这块板子是怎么从零画出来的。我前前后后做了几版F401RCT6的最小系统板和扩展板踩过不少坑也摸索出一些比较稳的做法。这篇文章就把STM32F401RCT6开发板的硬件设计完整拆开讲一遍从芯片选型、电源、时钟复位、调试下载到PCB布局和常见问题排查给那些想自己画板子、做产品原型或者交课程设计的工程师一份可以直接抄作业的参考。全程不谈花哨操作只说实际测试下来的方案。1. 先搞清楚F401RCT6到底能干什么芯片定位与选型逻辑1.1 为什么是F401RCT6而不是F103或者F407很多人问我做开发板为什么不选烂大街的STM32F103C8T6也不直接上F407。这里我把三者摆在一起看结论就很清楚参数STM32F103C8T6STM32F401RCT6STM32F407ZGT6内核Cortex-M3Cortex-M4F带FPUCortex-M4F带FPU主频72MHz84MHz168MHzFlash/SRAM64KB/20KB256KB/64KB1MB/192KBUSB无OTG FSOTG FS封装LQFP48LQFP64LQFP144定位入门经典性价比均衡高性能全能F401RCT6最大的优势不是性能碾压而是外设和封装正好卡在“够用且容易焊”的位置。LQFP64封装在0.5mm引脚间距下手工拖焊完全可以搞定不像F407的LQFP144那么考验耐心。它带了单精度浮点运算单元做PID控制、FFT、语音特征提取这类算法时比F103舒服太多。主频84MHz看起来不算高但配上ST的ART加速器实际跑代码比同频Cortex-M3更快而且功耗控制得不错甚至有1.7V供电的低压版本型号可选。再说价格。F401RCT6在国内渠道的价格虽然比F103C8T6贵几块钱但换来的是更大的Flash、更多IO和原生USB。对于做量产小设备的人来说这几块钱换来的资源余量非常值。F407性能更强可144脚封装带来的PCB成本、焊接难度、Layout压力对一个学习板或者小产品来说有点过重。所以我的结论是在“学习最小系统中小型项目复用”这个需求点上F401RCT6是甜点级选择。1.2 一块完整的F401开发板由哪些部分组成开发板不是芯片原理图那么简单硬件设计的核心是规划整个系统。我画板子之前习惯先列一个功能清单再画一个非常粗略的信号链路图直接在纸上画不搞花哨工具电源Type-C或USB座取5V经过LDO变成3.3V给MCU和板载外设供电时钟8MHz无源晶振接PH0/PH1给MCU提供HSE时钟源复位NRST引脚加电阻上拉、电容滤波、按键接地启动配置BOOT0跳线、BOOT1PB2下拉决定从Flash还是Bootloader启动调试接口SWD四线或五线接到板边排针USB通道PA11/PA12接USB座做USB设备板载USB转串口CH340N接USART1方便看日志外设LED、按键、扩展排针把这些信号画成链路就是USB的5V输入后分两路一路进LDO变成3.3V为MCU、CH340N、LED供电另一路直接连到MCU的PA11/PA12做USB信号。8MHz晶振为MCU提供系统时钟SWD接口负责下载调试UART1通过CH340N与PC通信。整块板子逻辑就这么简单但每个环节都有细节下面逐个讲。2. 电源电路设计从5V到3.3V的关键细节2.1 USB输入与LDO选型低压差比大电流更重要开发板的电源设计第一件事是决定输入方式。现在Type-C座子已经很便宜焊接也方便我建议直接用Type-C母座这样手机充电线随手就能供电。USB的VBUS就是5V接下来要解决的是把5V转成3.3V。这一步很多新手会下意识选AMS1117-3.3因为教程多、货便宜。但说实话AMS1117用在开发板上能跑却谈不上好。它压差大约1.1V输入5V输出3.3V没问题可如果电池供电电压降到4V输出就撑不住3.3V了。静态功耗也不小对电池设备不友好。我的原则是如果是学习板随便焊几块AMS1117可以如果要做成能反复使用的工具板或者产品原型推荐用低压差LDO。LDO型号压差最大输出电流静态电流适合场景AMS1117-3.31.1V左右800mA5mA左右便宜大碗但效率低适合固定5V输入ME6211约300mV100mA500mA几十μA低压差、低功耗适合电池和USB双供电RT9013约250mV500mA约50μA噪声低适合模拟电路和无线模块我实际用得最多的是ME6211采购便宜、货源稳定输出的3.3V纹波在开发板这个负载级别下完全够用。输入侧放一个10uF100nF的电容输出侧放一个22uF钽电容或陶瓷电容再加一颗100nF这样动态响应和噪声表现都不错。需要特别提醒的是LDO的输出电容不要随手乱选大容量值具体的ESR范围看一下数据手册否则可能会振荡。ME6211的输出电容推荐2.2uF以上即可我放22uF是为了带大电流外设时更稳。为什么不直接上DCDC开发板的总电流通常在200mA以内LDO完全扛得住而且DCDC的电感、开关噪声会让ADC采集和USB信号多出很多麻烦。做低功耗手持机再用DCDC开发板阶段稳定和简单优先。2.2 VDD、VDDA、VBAT和VCAPF4系列最容易翻车的几个脚MCU供电不只是把3.3V接到所有VDD引脚那么简单。F401RCT6是LQFP64封装有多个VDD和VSS引脚我见过有人只接一个VDD结果芯片间歇性死机。正确的做法是每个VDD引脚旁边放一颗100nF去耦电容电容的地端通过过孔直接进底层地平面。整板再放一颗4.7uF~10uF的储能电容应付瞬时大电流。然后是VDDA也就是模拟供电引脚。内部ADC、复位电路、PLL都依赖VDDA如果直接和数字VDD混在一起ADC采集容易跳码。我的做法是用一颗磁珠600Ω100MHz或者一个2.2Ω小电阻把3.3V隔离成VDDA然后VDDA对地放1uF10nF两个电容。磁珠和电阻二选一即可不需要两个都上。这样能很大程度滤掉数字开关噪声。VBAT这个脚经常被忽略。它给备份域和RTC供电如果不打算用RTC也要把VBAT接到3.3V不能悬空。空接的话内部POR上电逻辑可能出问题表现为上电偶尔起不来。我在设计里直接放了一个0Ω电阻连接VDD和VBAT方便以后想改成电池供电时割开跳线。接下来讲F4系的重头戏VCAP电容。这是从F103转过来的人最容易踩的坑。F401内部有一个1.2V核心电压调节器需要通过VCAP1和VCAP2引脚外接电容稳压。每个VCAP引脚必须接一颗2.2uF陶瓷电容到地容值不能随意改电容要尽可能靠近引脚。如果这两颗电容漏焊、虚焊、或者容量不对芯片会出现反复复位、或者完全上不了电而且你用万用表量VDD明明有3.3V芯片就是不干活。当时我在第一版F401板子上就漏看了VCAP排查了一个晚上最后对着数据手册的pinout一个个核对才发现问题。我在电源部分的核心检查顺序是先量VDD有没有3.3V再量VCAP引脚上有没有约1.2V的核电压最后看NRST是高还是低。三步测完芯片有没有正常上电心里就有数了。3. 时钟、复位与启动上电能跑的最小三件套3.1 8MHz HSE晶振电路PH0/PH1和负载电容怎么算F401的HSE引脚不是图上标注的“OSC_IN/OSC_OUT”而是PH0-OSC_IN和PH1-OSC_OUT。很多人画完板子找不到晶振接哪两个脚就是没注意这个对应关系。无源晶振最常用的是8MHz型号通常是“8MHz、负载电容12pF或20pF、频率公差±10ppm”的贴片封裝。晶振两端各接一颗负载电容到地两颗电容的容值计算公式是C1和C2串联后与晶振内部负载电容匹配同时PCB布线的寄生电容也要算进去。工程上我直接按2倍负载电容减去2~4pF来取。举例晶振规格CL12pFPCB走线寄生大概4pF那么C1C2取20pF就差不多。如果晶振CL20pF就取C1C222pF。电容材质选NP0/C0G温漂小不要用X5R类的。晶振两端还要并联一颗1MΩ电阻作用是给晶振内部的CMOS反相放大器提供直流偏置帮助起振。这颗电阻不是可选项没有它晶振会很难振起来或者起振缓慢尤其是低温环境。开发板上这个电阻经常被省略但实际量产时还是有它更稳妥。布线方面晶振要尽可能靠近PH0/PH1引脚负载电容紧挨晶振放置整个晶振电路的下方不要走数字信号线最好用铺铜把这片区域包起来接地减少信号串扰。我见过一个板子晶振飞线很长导致串口乱码把晶振挪近MCU后问题就消失了。如果设计里用到了RTC功能还需要32.768kHz的LSE晶振接PC14/PC15两颗6~10pF电容。学习板可以预留位置不焊因为很多应用用不到RTC省一颗晶振的钱和布局面积。3.2 复位电路10k上拉100nF电容是标准答案STM32的NRST引脚内部其实有一个约40kΩ的上拉电阻但外部还是建议再接10kΩ上拉到3.3V再加一颗100nF电容到地两个元件并联一个复位按键到地。为什么外部还要上拉因为内部上拉阻值大抗干扰能力弱如果线缆比较长容易因为耦合噪声产生误复位。外部10k上拉后引脚阻抗低很多更不容易被干扰。RC时间常数大概是10k乘以100nF算出来是1ms这个时间足够满足NRST低电平的复位要求。按键按下时把NRST拉低松开后电容充电到高电平需要约1ms形成一次干净的复位脉冲。这个RC值在开发板上我用过很久从来没有因为复位时序出过问题。有一个细节要注意复位电容太大比如1uF上电时NRST会低很久如果下载器在芯片复位期间尝试握手可能出现目标板连接失败。我之前用1uF的时候需要手动按一下复位键才能连上ST-LINK后来换回100nF就正常了。所以复位电容别贪大100nF足够。3.3 BOOT0和BOOT1启动模式跳线要预留STM32F401上电后会根据BOOT0和BOOT1的电平决定从哪里取代码。BOOT0一般是一个独立引脚BOOT1其实是PB2。开发板上通常把BOOT0做成一个三针跳线排BOOT0电平BOOT1PB2电平启动位置低任意主Flash正常运行高低系统存储器进入Bootloader高高SRAM运行用于调试基本不推荐正常状态下BOOT0必须拉低否则芯片每次上电都进Bootloader程序永远不会运行。我的设计是BOOT0引脚放一颗10kΩ下拉电阻默认低电平然后通过三针排针和跳线帽可以选择接到3.3V。BOOT1PB2就不做跳线了直接10k下拉到地因为常用的“从系统存储器启动”只需要BOOT0拉高PB2保持低就行。为什么一定要预留这个跳线因为F401的系统存储器里有一段出厂Bootloader可以通过USB或者USART下载hex文件不需要额外买仿真器。把BOOT0跳线拉高USB连电脑就能用官方工具进入DFU模式烧程序。真正做到“一根线就能下载”对开发调试非常方便。4. 调试与下载SWD和USB接口怎么画才不出错4.1 SWD四线接口上拉下拉必须做F401的开发板调试接口我一般不做JTAG20根的JTAG在现在的Cortex-M板上完全是浪费引脚和面积。SWD只需要四根线VDD、GND、SWDIO、SWCLK最多再加一根NRST用于当芯片被锁死时复位。SWDIO对应PA13SWCLK对应PA14。这里有一个从F103转过来容易忽略的点F401的SWDIO和SWCLK引脚在复位后的默认功能就是SWD调试但如果你在程序里把这两个脚复用成GPIO下载器就再也连不上了。解决的办法有两个一是板子上留一个“永久复位”按键连接不上时按住复位键再点下载等程序写入瞬间再松开二是买一个支持低电平复位烧录的下载器靠复位时序硬拉。更稳妥的做法是SWDIO外接10k上拉、SWCLK外接10k下拉让不调试时引脚状态确定。SWD排针放在板边推荐顺序是“VDD、SWDIO、SWCLK、GND、NRST”这样随便买一根杜邦线就能接ST-LINK。别小看这个顺序有些下载器需要检测目标板的VDD来确定电平有的还带NRST线排针顺序太随意会让用户接错。放在板边还有一个好处调试时不用把整块板子拆出来直接侧面夹探头或者插线。4.2 USB OTG FS不用外接1.5k上拉但需要ESD保护F401内部集成了USB OTG FS控制器和物理收发器所以PA11USB_DM和PA12USB_DP可以直接连USB座的D-和D中间不用再加USB PHY芯片。有个很常见的错误认知是全速USB的D上需要外接1.5kΩ上拉电阻到3.3V于是一堆人照搬51或者单芯片方案的电路在D上自己加了一个1.5k上拉。这对STM32F401来说反而是多余的因为芯片内部的USB收发器已经集成了这个上拉而且由USB软件栈控制连接和断开枚举时序。如果你外部再并联一个1.5k检测电阻变成约750Ω高于USB规范允许的范围可能导致电脑识别不了设备或者每次插拔都要多重试几次。USB信号线上真正不能省的是ESD保护。USB座是裸露接口人体静电很常见直接打芯片PA11/PA12引脚轻则USB功能异常重则芯片报废。我习惯在D和D-对地并一颗USBLC6-2SC6它是一颗专门做USB端口的ESD保护芯片内部有TVS、结电容只有pF级不影响信号质量。没有这颗芯片的板子实验室干燥环境下插拔几次USB就容易出问题。再有就是DP/DM上各串联一颗22Ω电阻放在靠近MCU一侧。这个电阻的作用是抑制信号反射和过冲如果走线很短、布线很规整也可以不串但我建议加上占用面积很小关键时刻能救回来。Type-C座子如果是16Pin的要注意CC1和CC2引脚不能悬空需要各接一颗5.1kΩ下拉到地。thumb ruleType-C口当普通USB 2.0使用时CC下拉5.1k是为了让电源适配器识别这是一个需要供电的设备。如果不接这两个电阻有些PD充电器或者笔记本Type-C口会认为没有连接设备直接不输出5V。这是很多人做Type-C小板子插电脑没反应的常见原因。USB座的VBUS引脚除了送电给LDO我还会引一路到MCU的GPIO通过两个电阻分压后检测“USB是否插入”。做USB设备枚举判断和充电状态显示时很好用。当然F401也有内置的USB检测机制但外部分压更直观而且可以同时给ADC做参考。4.3 板载USB转串口CH340N的交叉接线别搞反做开发板最好板载一个USB转串口芯片这样调试日志不用额外插模块。现在最常用的型号是CH340NSOP10封装带整个串口功能价格便宜驱动支持也好。CH340N的TXD和RXD必须和MCU交叉连接CH340N的TXD接MCU的USART1_RXPA10CH340N的RXD接MCU的USART1_TXPA9。新人经常在这里接成直连结果收发都是乱码。CH340N需要外接12MHz晶振晶振两端各接一颗12~22pF负载电容。供电我建议接3.3V这样它的UART电平逻辑和F401一致不会出现5V逻辑反灌的问题。很多模块把CH340用5V供电输出TXD高电平接近5V直接怼到STM32的PA10上长期不放心3.3V供电就没有这个隐患。还要注意一点CH340N的TXD和RXD在板上会直接和PA9/PA10相连如果同时用SWD下载器调试就要避免两路同时驱动RX引脚造成电平冲突。我一般在CH340N和MCU的UART之间串两个0Ω电阻或者跳线帽需要扩展底板时断开平时焊上。这样设计成本极低但灵活性高很多。5. 最小外设与引脚引出策略5.1 板载LED和按键亮度、限流、去抖LED是开发板的“心电图”上电先点个灯代码有没有跑起来一眼就知道。LED接法分两种一种是GPIO推挽输出驱动LED到地高电平点亮另一种是LED接到3.3VGPIO输出低电平点亮。我建议用前者简单直观。限流电阻的选择要考虑LED颜色。红色LED正向压降约1.8~2.0V蓝色约2.8~3.0V。以3.3V供电、目标电流约3mA为例我为红色LED选了680Ω绿色LED选了470Ω蓝色LED选了100Ω这样各颜色亮度体感接近。开发板的LED不需要太亮3mA足够了太亮既刺眼又费电。最合适的做法是数据手册的Vf值取下来自己算一遍而不是看别人用1k就照抄不同颜色LED的压降差很多。按键部分用户按键一般接PA0或者PC13。PA0是WKUP引脚在低功耗模式可以被唤醒所以我常用PA0。按键另一端接GND内部开启上拉电阻按下时引脚变低程序检测下降沿触发。外部我还会加一颗100nF电容到地做硬件去抖防止人体接触瞬间的抖动触发多次中断。这颗电容值很小不会影响正常按键速度。5.2 常用外设接口和引脚分配开发板的核心价值之一就是方便做底板扩展。F401RCT6的引脚很多但不是随便拉一排出来就行要根据复用功能合理分配。F401是AF映射机制同一个引脚可能对应好几个外设提前规划能省很多飞线。我给一块典型开发板的扩展引脚分配是这样的USART1PA9TX、PA10RX板载CH340N占用USART2PA2TX、PA3RX引出给蓝牙模块或GPSUSART6PC6TX、PC7RX引出给RS485或调试传感器I2C1PB6SCL、PB7SDA接OLED、温湿度传感器I2C2PB10SCL、PB11SDA预留更高速率的外设SPI1PA5SCK、PA6MISO、PA7MOSI、PA4CS接Flash或LCDADCPA0~PA7全部引出方便采集这些引脚分配不是我拍脑袋定的而是尽量避开和SWDPA13/PA14、USBPA11/PA12、BOOT0、晶振相关的引脚冲突。做底板扩展时最好也把电源引到排针的固定位置比如每排都有一根3.3V和一根GND这样插面包板或者子板时不用到处飞线。5.3 ADC参考电压VREF别乱接F401的VREF引脚并不是独立于VDDA而存在的在很多封装里它直接和VDDA连在一起。对于普通开发板把VDDA经过磁珠或小电阻接到VDD再放足够容量的电容ADC精度已经够用。如果你要做高精度采集比如称重传感器、热电偶毫伏级信号再外接REF3020这类基准源到VREF同时VREF的电容要选低ESR的X7R或者薄膜电容。另一个容易出的问题是模拟地和数字地。双层板上把整块地铺成一片不搞分割然后模拟部分靠近源端布局比把模拟地割成孤岛更靠谱。很多人听说“模拟地要分开”于是在一层板上划了一道缝结果高速信号跨缝回流反而制造了更大的噪声。除非是四层以上板子做完整电源/地平面划分开发板阶段完整的接地平面就是最不坏的选择。6. PCB布局布线实战要点6.1 双层板够用但四层板更省心F401RCT6是LQFP64、0.5mm引脚间距手工焊接不算难但布线密度比LQFP48高一些。如果只是做一块验证用开发板双层板完全能做出来关键是把底层大面积铺成接地平面电源走线加粗到0.5mm以上避免细线走大电流。我推荐的空间规划是正面放主芯片、晶振、USB座、LDO、CH340N背面放去耦电容、电阻、按键这样正面看起来清爽背面焊元件也方便。四层板则舒服很多常规叠层是信号、地、电源、信号所有去耦电容都能就近打过孔到完整地平面USB差分线也有干净的参考平面。嘉立创打四层板现在价格也不贵如果是做产品原型直接上四层板能省很多排查时间。双层板要注意的电源问题如果5V和3.3V都走细长走线芯片供电瞬间压降会很严重。我的作法是电源线尽量短而粗5V从Type-C座出来先经过ESD后再进LDO3.3V从LDO出来往MCU方向走中间不要绕太大圈子。板子尺寸做到60x35mm左右电源路径就很短。6.2 晶振、USB、去耦电容的具体布线要求晶振电路是开发板上最敏感的高速模拟部分。8MHz虽然频率不高但晶振起振时对周围寄生电容和串扰很敏感。走线和放置规则是晶振放在PH0/PH1同侧尽可能贴近芯片不要隔着芯片放负载电容靠近晶振引脚端地端直接打过孔晶振下方禁止走任何信号线尤其是时钟线和复位线晶振周圈用接地过孔围一圈做一个“地屏蔽环”USB差分线的处理也重要。F401是全速USB 2.012Mbps速率并不高但差分线还是要讲究。DP/DM两条线等长误差控制在5mil以内线宽按9mil左右间距保持3倍线宽尽量在完整地平面上走。USB座到MCU的距离不要超过2厘米。ESD保护芯片和串联电阻要放在靠近USB座的一侧让冲击电流先被TVS吸收而不是直接涌进MCU。去耦电容的摆放是很多人忽略的重灾区。每个VDD引脚的100nF电容必须放在该引脚的正下方或非常近的位置电容的供电端连接VDD走线地端通过独立过孔进入底层地平面。如果把电容放在远离引脚的地方引脚到电容之间的走线电感会抵消电容效果。我见过一个板子电源引脚旁边1厘米之外才放电容芯片跑起来后复位引脚上能抓到明显的毛刺。6.3 丝印、焊盘、过孔和焊接便利性的建议板子上丝印要标注清楚关键信息电源电压、GND、SWD、串口号、BOOT跳线位置。不要小看这一步板子做出来给别人用如果没有丝印别人不知道哪里接电源、哪里是串口直接导致一堆售后问题。我一般会把丝印字号调到最大特别是“3.3V”“GND”“5V”这类的字放在对应排针旁边一眼就能看到。焊盘设计上LQFP64的0.5mm间距是按照官方封装数据做的焊盘尺寸不要自己随便改大改大容易连锡。手工拖焊时我习惯在引脚周围涂助焊剂用烙铁带锡从头拖到尾多余的锡会被助焊剂带走。板子上围绕引脚的区域一定要保证有绿油阻焊如果铜皮裸露面积太大拖焊时容易连成一片。过孔不要在焊盘中间打特别是LQFP引脚焊盘过孔会通过毛细作用吸走焊锡。电源去耦电容的地过孔打在电容地端旁边晶振下方可以用过孔做屏蔽但不要在芯片的散热焊盘区域乱打过孔可能会把锡拉到背面造成短路。7. 常见问题排查与贴片调试顺序7.1 焊接和首次上电按模块来别一次焊完新手拿到空板最容易犯的错误就是一上来把所有元器件全部焊完然后上电发现不工作不知道从哪里查起。正确的调试顺序是分模块焊、分模块测第一步先焊电源部分Type-C座、LDO、输入输出电容不焊MCU上电测量3.3V是否正常第二步焊MCU和全部VDD/VSS引脚、VCAP电容、复位电路上电测量VDD电压、VCAP电压约1.2V、NRST高电平第三步焊晶振和BOOT电阻用示波器或者频率计看PH0/PH1有没有起振波形第四步焊SWD排针连接ST-LINK读芯片ID确认能连接第五步写一个简单的点灯程序验证GPIO最后再焊CH340N和USB电路这样如果后面出问题范围会非常小。所有步骤中VCAP电容和电源部分是排查重点我见过大量“上电不工作”的板子最后都是这两个模块。7.2 常见问题速查表现象可能原因排查方法VDD有3.3V但VCAP无1.2V芯片不工作VCAP电容漏焊、虚焊、容值不对用万用表量VCAP引脚电压补焊2.2uF电容尽量靠近引脚连接不上SWD下载器目标板没供电SWDIO/SWCLK被复用NRST没有上拉芯片处于复位按住NRST再点连接查PA13/PA14接线确认VDD稳定3.3V输出电压偏低LDO焊反、假芯片负载短路输入电容不足断开负载单独量LDO输出检查VDD/GND有没有连锡串口乱码晶振负载电容不匹配波特率不对CH340N的TXD/RXD接反CH340N晶振虚焊检查CH340N的12MHz晶振用示波器量MCU TX波形核对TXD-RXD交叉USB插电脑没反应VBUS没有给到LDOCC1/CC2没有下拉5.1k外部额外加了1.5k上拉ESD电容太大检查VBUS连接确认DP/DM是否直连PA11/PA12测量D电压是否约3.3V上电后偶尔不启动BOOT0悬空或拉高复位电容太大VDD去耦电容太远确认BOOT0下拉将复位电容改为100nF补上每个VDD的100nF程序运行中反复复位电源噪声大VCAP电容虚焊晶振振幅过大加10uF储能电容补焊VCAP检查晶振并联电阻7.3 一些我个人踩过的坑和最终保留的习惯做F401系列板子我现在固定保留几个设计习惯哪怕板子尺寸紧张也不省BOOT0无论如何都要做三针跳线因为USB DFU下载真的太方便别为了省一根排针让用户每次都用仿真器。VCAP电容在BOM里单独加粗标注并写清楚“必须2.2uF、靠近引脚”避免贴片时被当成普通去耦电容随意挪位置。晶振电容我默认选NP0/C0G材质不在温度上抠成本。LDO我默认选ME6211或RT9013基本上不会再用AMS1117做需要长时间运行的板子。还有一点是电源LED。很多设计会在3.3V后面放一个电源指示灯我建议把它放在LDO输出之后遮住时能看到但不要放在靠近ADC引脚的一侧。LED的PWM电流噪声虽然很小但在高精度采集时还是会耦合到模拟区。7.4 后续扩展方向从最小系统板到产品原型F401RCT6开发板画完之后它不是终点而是起点。我通常会在第一版最小系统跑通之后快速做一版“核心板底板”的结构核心板只保留电源、MCU、晶振、SWD、VCAP这些必要元件所有IO通过2.54mm排针引出底板再根据具体项目放传感器接口、电机驱动、485通信、电源管理这些东西。这样做的好处是核心板可以批量贴片底板出问题也不会报废主芯片。如果想把这块板子往更低功耗方向演进可以研究F401的多个低功耗模式在硬件上加上VBAT电池座、外部中断唤醒引脚。如果想要更高性能可以参考同一片PCB布局直接把F401RCT6换成F411RET6甚至F413系列引脚兼容的情况下软件改动也有限。这块板子实际上就是你进入STM32F4硬件生态的一把钥匙。
返回列表