
做STM32开发这几年我发现一个很有意思的现象很多刚入门的朋友手里握着开发板看了几篇教程真到自己做项目的时候第一反应不是去翻芯片手册而是到处问有没有参考设计可以看看。这个习惯其实非常好参考设计确实是嵌入式开发里最值钱的捷径之一。但问题在于很多人在找资料这件事上没什么章法要么百度一搜出来一堆标题党要么在某个论坛里翻了一下午也找不到能直接用的东西。所以这篇内容我就把自己这些年攒下来的国内STM32参考设计资源渠道、搜索技巧、还有实操中踩过的坑一次性整理出来希望能帮你在找资料这条路上少折腾几个来回。1. 参考设计到底解决什么问题先说个有点反常识的结论参考设计不等于让你照着抄。它更像是一个已经验证过的设计路径告诉你芯片厂商或者有经验的工程师是怎么把一颗芯片从理论上电到跑起来、从能跑到跑得稳的。明白这一点你才知道应该从参考设计里看什么。1.1 为什么找参考设计不是抄板很多初学者拿到一份参考设计原理图第一件事就是打开Altium Designer或者立创EDA把原理图里的元器件一个一个照着画一遍然后直接送去打样。这种做法不是不可以但如果你不知道这块板子为什么这么做稍微改一改动一下问题立刻就来了。举个例子STM32F103的参考设计里电源部分通常会放一个LDO输入输出各加两个104电容有的还会在两个电容之前串一颗磁珠。你要是照抄一行字不改板子大概率没问题。但如果你换了输入电压、换了负载电流、或者把芯片换成了STM32F407还照着原样抄就可能出现上电复位不稳定、ADC采样值跳动、甚至芯片发烫的情况。原因是不同芯片的动态电流差异很大电源的去耦设计需要跟着调整。所以你看参考设计重点不是抄那几根线而是理解三个东西一是电源怎么分配二是时钟和复位怎么处理三是调试接口怎么留。这三块是所有STM32项目的地基地基上的房子你可以自己随便设计但地基本身建议跟着官方参考设计走。1.2 参考设计对不同开发阶段的帮助对刚入门的人来说参考设计是从0到1的脚手架。你不需要先看懂整个芯片手册跟着参考设计先把最小系统搭起来下载一个点灯程序跑通自信心和熟悉度就起来了。这时候参考设计给你的是一种结构化认知电源脚、下载脚、晶振脚、复位脚它们在原理图里是怎么排列的你就大概理解了芯片的运行逻辑。对有工作经验的人来说参考设计更多是用来查漏补缺的。比如你做一个带CAN总线的设备发现CAN通信时好时坏翻官方参考设计的CAN收发器部分看到人家在CAN_H和CAN_L之间加了终端电阻和共模电感你可能就意识到自己板子上少了这些器件。这种查漏补缺的效率比你自己对着波形一点点分析高得多。另外做毕业设计或者参加竞赛的同学参考设计的意义就更直接了。一份完整的参考设计意味着你至少不用从白纸开始画板可以把更多精力放在算法和功能实现上。但注意毕设答辩或者竞赛评审的时候老师一定会问这个电路为什么这么设计如果你答不上来那就说明你不是参考设计用的而是抄的效果反而会打折扣。2. 官方渠道从ST官网到STM32CubeMX找STM32参考设计第一个要逛的地方永远是官方渠道。ST的文档体系和代码仓库非常丰富只不过很多人没找到那个门在哪。2.1 ST官网的资源中心怎么用ST官网STMicroelectronics的资料分了好几层很多人一进去就晕了。其实常用的就几个入口产品页、工具软件页、以及文档下载中心。最直接的方式是在官网搜索栏输入芯片型号比如STM32F407进入产品页面后往下翻能看到资源这个选项卡里面全部是官方文档和数据手册。但是注意官方参考设计并不全藏在芯片产品页里。ST有一个专门的应用笔记Application Note系统编号通常以AN开头比如AN4325是Getting started with STM32F4xxxx MCU hardware development。这类应用笔记里会附完整的硬件设计指导包括最小系统设计、电源要求、PCB布局建议很多还附带参考原理图。搜索技巧是直接在官网搜索AN数字或者搜索你的应用关键词application note比如STM32 CAN application note。另外ST还有一批评估板/Discovery板的官方资料这是我觉得最值得下载的东西。以STM32F746G-DISCO为例官网提供了完整的用户手册、数据手册、原理图PDF、以及gerber文件。你把官方开发板的原理图下载下来它就是一份非常高含金量的参考设计从USB到SD卡、从音频到LCD接口每种外设的典型接法都在上面。初学者如果能完整看明白一块官方Discovery板的原理图硬件水平至少涨半级。2.2 别忽略STM32CubeMX生成的工程很多人以为STM32CubeMX只是一个代码生成器用来点点鼠标生成初始化代码。这个理解没错但格局小了。CubeMX其实还是一款参考设计生成器。为什么这么说因为你在CubeMX里选了芯片型号、配置时钟树、勾选外设功能、设置引脚映射它生成的.ioc文件和工程代码本身就是一类参考设计。它告诉你这颗芯片的时钟最高可以跑多少PLL的配置参数是什么哪些引脚可以映射到哪些外设DMA通道怎么分配。换句话说它是软件层面的参考设计——参考的是芯片内部资源的合理分配方式。比如你想用STM32做USB设备在CubeMX里勾选USB_DEVICE选择CDC类然后生成代码。CubeMX会自动帮你完成USB时钟配置PLL48CK必须是48MHz、端点初始化、描述符配置。如果你自己从头写这些配置没有一两天搞不定而且大概率会因为时钟频率不对导致USB枚举失败。这就是为什么我建议在找任何软件参考代码之前先把你的硬件配置放到CubeMX里过一遍让它先生成一份标准答案你在这个基础上改比自己凭空造轮子稳得多。2.3 ST官方社区与其他官方资料仓库ST官方社区ST Community主要是英文交流上面工程师非常多但不太适合刚开始找资料的人直接去抓。因为它是一个问答型社区资料不是按参考设计整理好的而是散落在各个帖子里。不过如果你遇到一个具体问题比如STM32H7以太网DMA描述符怎么配置搜索ST Community的帖子质量通常非常高很多回复是ST官方工程师写的参考价值极大。另外说个很多人不知道的信息ST在GitHub上有大量官方仓库账号名叫STMicroelectronics。这里面除了STM32Cube固件库之外还有很多应用示例代码和硬件设计文件。比如你要找电机控制相关的参考设计ST官方有STM32-Motor-Control项目里面有FOC控制的整套源码和文档比自己网上瞎搜一家半吊子的代码靠谱太多。国内访问GitHub可能偶尔慢但下载这种官方仓库绝对值得等一等。3. 国内社区论坛与开发板厂商最接地气的参考资料官方资料虽然权威但很多新手看完依然一脸懵因为官方的参考设计太规范了反而不像实际项目。这时候就需要国内的社区和开发板厂商来补位。3.1 正点原子与野火的开源资料体系国内做STM32开发板最出名的两家正点原子和野火他们的资料体系本质上就是一套完整的STM32实战参考设计库。正点原子的核心价值在于硬件资料极其完整。以战舰开发板为例原理图、PCB源文件直接开源板子上几乎每个模块都有对应的例程。你做一个项目需要用到某款传感器、某个外设先翻正点原子的例程基本都能找到参考。比如你想学STM32驱动TFTLCD屏幕正点原子有完整的FSMC或者SPI屏幕例程里面的初始化序列、坐标设置、画点函数都是调试过的直接用比自己从头啃数据手册快得多。野火这边和正点原子类似但野火在文档深度上做得更细尤其它的《STM32库开发实战指南》、以及后来基于HAL库的文档讲解外设原理的篇幅很长。这意味着野火的资料更适合你想理解为什么这么配寄存器的情况。比如看野火关于DMA的参考代码他会把DMA的请求映射、传输方向、优先级配置逐个讲明白而不是只给你一段代码。使用这两家资料的技巧是不要把他们的例程代码直接复制进你的工程而是把你需要的模块代码摘出来理解它依赖哪些底层外设然后移植到自己的项目结构里。很多人在这个环节栽过跟头因为我后面讲到的问题排查里也会重点说。3.2 电子发烧友、21ic与CSDN的搜索逻辑国内还有一批老牌电子社区比如电子发烧友、21ic。这些论坛上用户量很大各类设计资料、源码分享非常多但也很杂。电子发烧友有一个下载中心频道里面按分类整理了海量STM32资料从参考设计到毕业设计、从源码到PCB封装库都有。在这个频道寻找资料关键词越具体越好比如不要搜STM32而应该搜STM32F407 参考设计 原理图。CSDN则是国内技术博客的集中地搜STM32参考设计能找到大量文章。但CSDN有一个坑很多文章是早期发布的用的还是标准外设库和现在主流的HAL库差别很大。所以你在CSDN找到一篇文章的时候第一件事先看发布时间和使用的库版本如果还在用标准库写的、发布时间又超过五六年除非你确实在用标准库否则建议别浪费时间。这类社区的共性问题是资料质量参差不齐。我在前面也踩过不少坑下载了某些名字花哨的某某开发板全套资料打开发现是一位网友自己画的原理图、代码混乱、注释缺失什么也参考不了。所以使用社区类平台的时候要优先找下载量大、评论多、更新时间近的资料。如果一个资料下载了上千次那说明很多人验证过它是有用的这个逻辑虽然粗糙但大多数时候是有效的。3.3 实验室师兄师姐与校内资料共享说一个可能被很多人忽略的渠道自家实验室或校内团队积累的资料。麻省理工有OpenCourseWare国内很多高校也有各自的课程设计资源库和实验室项目资料只不过没有系统公开。如果你正在读研或者读本科做STM32项目之前先问问学长学姐有没有现成的资料这往往比网上找的参考设计更贴合你手头的板子。我见过很多同学在毕设前期花了一两周在网上找资料结果最后偶然发现导师以前的某个项目就是类似方向原理图就在课题组的共享网盘里省了太多事。所以找参考设计不能完全依赖网络身边资源的优先级也不低。4. GitHub、Gitee与立创开源广场开源硬件与代码的宝库如果说论坛和官方资料是参考设计1.0那GitHub和立创开源广场就是参考设计2.0。它们提供的不仅是一份原理图而是集原理图、PCB、代码、BOM、说明文档于一体的完整项目级参考参考价值非常高。4.1 GitHub上搜STM32项目的正确姿势GitHub是全球最大的开源代码托管平台上面STM32项目成千上万但搜索效率差别很大。很多人一上来就搜STM32结果出来几十万条结果根本没有筛选的头绪。正确姿势是用精确关键词补充限定词的组合。举个例子你想找STM32做电机的参考设计搜索STM32 BLDC比搜STM32 电机结果质量高得多因为GitHub的索引对英文关键词更友好。你想找USB设备参考搜STM32 USB CDC就非常精准。另外在搜索结果里可以用Topics标签筛选很多高质量STM32项目作者会打上stm32、arm-cortex-m、embedded等标签点进去能看到同主题的优质项目。还有一种搜索思路是搜awesome集合仓库比如awesome-stm32、awesome-embedded。这类仓库是由社区志愿者维护的精选项目清单每一条都是精挑细选过的质量有保障。我个人的习惯是每半年刷一遍awesome-stm32看有没有新收录的优质仓库很多设计灵感就是从这些仓库里来的。4.2 Gitee国内代码托管平台的独特价值Gitee码云是国内的代码托管平台和GitHub类似但有几个特点使得它在STM32领域很值得用。第一是访问速度快、下载友好不像有时候GitHub那么痛苦。第二是国内很多工程师和硬件公司会把项目同步一份到Gitee上尤其是一些国产芯片开发板相关的项目。搜索Gitee的时候有个技巧很多国内作者项目README是中文的所以你可以在Gitee上搜中文关键词比如STM32 参考设计、STM32 毕业设计效果经常出人意料。不过Gitee的整体项目规模相比GitHub还是小一些建议作为补充渠道使用GitHub找不到合适的时候再翻Gitee。4.3 立创开源广场从原理图到PCB的完整参考要说国内找STM32硬件参考设计最近几年最值得推荐的平台那必须说一下立创开源广场属于嘉立创EDA体系。这个平台的特点非常鲜明每个项目都有完整的开源工程文件你可以直接在浏览器里打开原理图和PCB进行查看甚至直接一键下单把这块板子打出来。立创开源广场上有非常多基于STM32的项目比如四轴飞行器、机械臂控制板、智能家居网关、示波器等。这些项目的作者大多是硬件爱好者或者工程师他们上传的工程文件包含详细的原理图设计、PCB布线、BOM清单有些还附带了固件源码和调试说明完整度非常高。对于准备做实际硬件的开发者来说这种参考比只看一张PDF原理图要好用太多了。使用立创开源广场的时候我建议你关注几个维度项目的收藏数和点赞数、项目描述是否完整、原理图是不是真的用立创EDA画的这决定了你能不能顺利打开和编辑。选择高收藏项目还有一个好处——评论区通常有别人遇到过的问题和作者的回复相当于免费的技术支持。5. 实战案例用几个热搜场景演示怎么找参考光说平台不讲实操有点纸上谈兵。下面我用三个具体场景来演示当你遇到一个具体的STM32需求应该怎么把这些平台串起来用。这三个场景分别是ILI9341读ID异常、超声波测距模块、以及FOC电机控制。5.1 案例一STM32使用ILI9341读ID是a1a1不知道你有没有刷到过STM32使用ILI9341读ID是a1a1这个问题。这是个非常经典的屏幕驱动问题很多人在驱动1.8寸或者2.4寸TFT屏幕的时候写代码读LCD控制器的ID读出来结果是a1a1而不是厂家预期值然后整个人就懵了。这个问题如果你有参考设计思路解决路径清晰得多。先说结论a1a1这个值通常是读取方式错误、或者屏幕驱动IC兼容性导致的。常见的TFT屏幕虽然标注ILI9341但厂家可能会用性能接近的国产驱动IC比如ST7789、ST7735之类这些IC的ID寄存器内容本身就不是ILI9341的值。参考设计怎么帮你第一步去GitHub或者正点原子/野火的例程里搜ILI9341 Read ID找到一个官方或者社区验证过的读取代码对比你的读取逻辑。很多时候你会发现读取21号寄存器0xD3获得了两个字节一个是高低字节顺序不对导致误读。第二步去你买的屏幕商家页面看它标注的具体型号如果它说兼容ILI9341那可能不是软件问题而是屏幕本身用了他家用芯片。顺便说一个更隐蔽的坑SPI模式下读ID之前必须发命令0xD3后跟着3个dummy字节再读而很多参考软件里对dummy字节的数量处理不一致导致读ID错位。解决方法是多试几种参数组合这个没有捷径只能对照参考设计一个个试。5.2 案例二STM32超声波测距模块超声波测距是STM32入门非常经典的实验最常见的模块是HC-SR04。参考设计在这个场景下能帮助你的是两块硬件触发引脚的选择、以及计时方式的选择。HC-SR04用法很简单Trig引脚拉高10微秒以上触发测距然后模块在Echo引脚输出一个高电平高电平持续时间就是声波往返的时间。你需要的STM32参考设计其实就是一个能精确测量这个高电平持续时间的工程。网上搜STM32 HC-SR04能找到大量参考代码但质量参差不齐。最好的方式是参考官方定时器输入捕获的例程理解怎么用定时器捕获上升沿和下降沿而不是用延时轮询。我在实际使用中发现用输入捕获比用外部中断加定时器计数的方案要稳因为CPU被其他中断占用的时候定时器捕获依然会准确记录时刻。硬件参考方面HC-SR04是5V供电的模块STM32的GPIO是3.3V电平Trigger引脚可以直接用3.3V高电平触发但Echo输出的高电平是5V直接接到STM32的GPIO上可能会有烧引脚的风险。参考设计里通常会做一个简单的分压电阻或者用三极管做电平转换这一点你在立创开源广场搜STM32 超声波能看到不同作者的接法互相印证后选一个适合自己板子的。5.3 案例三STM32 FOC电机控制代码如果你要搜STM32 FOC或者STM32 电机控制参考设计的价值就体现得更明显了。FOC磁场定向控制的数学原理比较复杂如果你从零开始写FOC代码光坐标变换、PI调参、SVPWM这些东西就够啃几个月。但你要是找参考设计可以直接站在巨人的肩膀上。ST官方提供了完整的电机控制库在GitHub上叫STM32-Motor-Control里面有FOC的完整实现包括观测器、环路调节器、SVPWM、保护逻辑等。而国内做电机控制的工程师在Gitee上也有不少FOC相关项目比如SimpleFOC的中文移植版、或者几个基于STM32G4芯片的电机控制参考设计。参考这种项目的时候我强烈建议你从硬件设计入手而不是直接看代码。因为FOC控制性能很大程度上取决于硬件电路比如MOSFET驱动电路、电流采样电路、母线电压采样。你先把参考设计原理图里的这三个关键模块看懂再用示波器对照官方波形去验证自己的板子最后才去看代码里的坐标变换和PID参数。这个路径比一头扎进代码里去读所有宏定义要高效得多。6. 参考设计拿到手之后怎么抄作业找到参考设计只是第一步怎么把参考设计转化到你自己的项目里这里面的方法论很重要。我在这个问题上踩过不少坑总结下来核心就一句话把参考资料当成设计约束来抄而不是标准答案来抄。6.1 硬件参考设计的移植步骤硬件移植参考设计我习惯用三步走。第一步梳理需求。先列出你自己的项目要有什么功能然后把参考设计里的模块勾出来哪些模块直接复用哪些模块要改哪些模块砍掉不需要。比如你做的是一个基于STM32F103的温湿度采集器找到的参考设计是一个带USB的示波器那你需要复用的是最小系统、电源部分砍掉LCD接口、矩阵按键、SD卡槽USB可以留着用于以后通信但原理图上的USB防护电路、ESD器件可以考虑是否需要。第二步逐模块对比。把参考设计的电源模块、时钟模块、复位模块、下载调试模块和自己的需求做个表格。电源电压是否一致电流余量是否够晶振是无源还是有源下载口是SWD还是JTAG这些影响全局的决策必须看仔细。第三步重新画原理图。我的习惯是参考设计只看不做不在参考原理图上改而是自己新建原理图对着参考设计的框架一笔一笔画。这个过程里你自然会发现很多细节哪个引脚要接上拉哪个引脚要串0欧姆电阻做调试跳线等等。我自己用立创EDA重新画一块板子通常需要两三天但这个过程非常值因为画完原理图之后你对整个板子的熟悉程度是直接抄板的两三倍以上。6.2 软件参考设计的移植步骤软件方面的参考设计移植和硬件不同重点在工程结构上。现在STM32开发主流是HAL库CubeMX生成的工程。你找到一份网上的参考例程首先要看他用的库版本是什么。HAL库不同小版本之间偶尔有API变化如果你用的是较新版本对方还是旧版本编译可能就会报错。解决方法是先跑起来再说编译通过了然后逐功能模块测试。其次看他的工程结构。好的例程一般会用分层结构底层驱动BSP、中间层协议栈/算法库、应用层main函数和业务逻辑。如果你的参考例程都是堆在main.c里面的大几千行那说明这个例程的工程结构不太好你可以提取其中的关键函数移植过去但不要照着它的工程结构去搭。最后特别提醒一点在移植外部中断、DMA、定时器等占用硬件资源的代码时一定要确认自己的CubeMX配置和参考代码的配置完全一致。不然你改了应用层但里面调用的外设句柄名字、通道号不对编译过了也运行不起来。我做过的最稳妥的方法是把参考代码的.ioc文件打开看一眼了解外设配置然后在自己的CubeMX工程里重新配置一遍生成代码后把参考代码的应用层文件复制进来。6.3 何时可以改改就能用何时必须重新设计这个判断基于你的产品形态。如果你的开发和参考设计的应用场景完全一致芯片型号一样、外设一样、供电一样、调试方式一样那你把参考设计改一改布局就能用。但是只要有任何一项不一致就别偷懒。芯片型号不同引脚数量和外设映射都不同供电方式不同电源模块就要重新设计外设不一样接口电路就要重新画。我在实际项目中见过最惨烈的例子是有人把正点原子STM32F407开发板的ETH部分电路原封不动搬到自己的板子上还觉得自己抄得挺对结果发现正点原子用的是RMII模式而他的PHY芯片要求和RMII接口匹配需要50MHz外部时钟他的板上没布这条时钟线最后只能飞线解决。这种问题本质上就是没有理解参考设计背后的原理只抄了结果没抄思路。7. 资料甄别与使用避坑经常有人问我为什么下载了那么多资料能用的没几个。这其实是个资料甄别问题。我给你总结一份我实测有效的可用性判断清单。7.1 一份合格STM32参考设计的组成要件一份真正可用的参考设计至少应该包含这几样东西原理图、PCB结构说明或者版图、BOM清单、固件源代码、以及说明文档。如果一份资料只有某个部分使用的时候你就要多留个心眼。原理图是核心。它能告诉你芯片每个引脚接了什么、电源怎么进、外设电路怎么设计。但要注意有些非官方来源的参考设计可能是别人从PDF转出来的图片放大就糊了这种没法实际使用最多让你看个大概架构。最好的格式是原理图工程源文件比如AD的SchDoc文件、立创EDA的工程文件、或者至少是清晰的矢量PDF。BOM清单决定了你能不能复刻硬件。没有BOM清单的参考设计你光看原理图知道某个地方有个10K电阻但不知道这个电阻是0603还是0402封装、精度要不要1%买料的时候就会很纠结。所以有时候BOM比原理图还要重要。固件源码和说明文档是加分项。源码能让你知道硬件上的某个电阻为什么要这么接说明文档能帮你快速了解整个设计思路。完整度越高的参考设计使用起来越顺手踩坑几率越低。7.2 下载资料时的几个实时甄别技巧判断一个网络上下载的STM32资料是否靠谱我一般会做这么几个快速检查看文件命名是否规范比如日期项目名版本号这种格式通常说明作者有整理习惯看压缩包内目录结构是否清晰有没有doc、hardware、software、test这种分类看文档里有没有作者联系方式或者更新记录看代码里的注释密度和编码风格。还有一个非常实用的技巧看资料的年龄。有些经典参考设计虽然发布时间早但原理图和工程结构放到今天依然不过时比如正点原子早期的标准库教程。但有些资料是用较老芯片平台的、或者用了已经被淘汰的外设库这种就价值有限了。你在参考的时候应该优先选择和你当前使用的芯片、库版本接近的资料。顺便提一个行业现象有些资料平台会把网友上传的共享资料标成付费精品进来卖内容却只是公开文档的打包转载。我的态度是能不在这上面花钱就别花钱因为STM32领域真正优质的资料绝大多数都是免费的官方文档、GitHub开源项目、立创开源广场、开发板厂商的资料都是免费开放的。7.3 版本匹配问题芯片、库、编译器的互相适配版本匹配问题算是STM32开发中一个非常经典的坑。你在网上找到一个看似完美的参考设计结果按照它的要求配置好工程一编译全是错误。这种情况几乎都是版本问题。最常见的有三种版本冲突一是HAL库版本不一致二是芯片支持包DFP版本不对三是编译器/工具链版本过老或过新。比如你用Keil MDK 5.37打开一个用Keil 4创建的旧工程光提示让你转换格式可能就要折腾半天。参考设计里的启动文件、目标芯片配置、分散加载文件.sct、链接脚本一个不匹配都会造成问题。我的建议是下载参考工程后先不动任何文件直接尝试编译。如果编译通过说明这个工程环境和你本机兼容可以放心用。如果编译报错优先看错误信息里提到的头文件路径、芯片型号定义、启动文件这几项。通过对照错误信息你会有很大概率找到版本不匹配的根源。8. 最后的建议建立一个属于自己的参考设计库写了这么多平台和技巧其实最后想说一个习惯养成的问题。那些做起项目来又快又好的工程师往往并不是记忆力超群而是他们有一套自己的资料整理体系。我自己这些年积累了上千份STM32相关的参考设计、应用笔记、代码工程然后把它们分类整理比如按芯片系列分F1、F4、H7、按外设模块分USB、CAN、以太网、电机控制、按项目类型分开发板、传感器节点、电源管理、人机交互。每下载一份资料先花三分钟把它的来源、芯片型号、库版本、适用场景记到一个表格里这样下次找资料的时候直接搜索表格就行了根本不用重新翻网盘。还有一个习惯值得培养每次从参考设计里抄了一段代码或者画了一个电路模块在注释或者文档里标记本设计参考自XXX平台的YYY项目。这样做最大的好处是当你后来发现这段代码有bug或者电路有不合理之处时你能顺着标记找到原始参考设计看看是不是自己的移植过程出了问题还是原参考设计本身就有缺陷。这样排查问题的速度会快很多。根据我个人的实际经验做STM32项目资料功夫占了三成剩下七成在调试。如果能把找参考设计这件事做得又准又快后面调试的时间会压缩得很明显。希望这篇内容真的能帮你少走一些弯路在做项目的时候心中有数手头有粮。