STM32自己从零开始实操10:PCB全过程

news2024/9/23 6:36:35

一、PCB总体分布

分布主要参考有:

  1. 方便供电布线。
  2. 方便布信号线。
  3. 方便接口。
  4. 人体工学。

以下只能让大家看到各个模块大致分布在板子的哪一块,只能说每个人画都有自己的理由,我的理由如下。

还有很多没有表达出来的东西,我也不知道该怎么描述,只可意会,不可言传把。

1.1电源

从外部左上角接入电源,5V 接到中上部(中上部也方便 5V 供电),向上变成 4V 供给无线(无线也刻意放在上面),向下变成中间位置的 3V(中间也方便 3.3V 供电)。

1.2STM32

每一个 VDDA 附近都要搭配一个滤波电容。

两个晶振下方不能走线,周边要铺满铜。

SWD 调试接口放在边上,方便插 ST-LINK 调试。

1.3显示

大屏幕插中间看,其他显示接口也分布其左。

数码在右上角,方便看,符合人体工学。

并且数码管我选择用 5V 供电,刚好电机的 5V 引入也在附近,方便 5V 一起供电。

1.4输入

按键在右下方方便按键。

1.5输出

继电器 5V 供电,必须靠近 5V。

接口在板子的边沿。

1.6电机

接口在板子的边缘,方便接入。

1.7无线

靠近 4V 供电处。

1.8接口

板子下边缘,全部留给接口。

二、布线

布了一版,没布完全,一方面是因为没有边布边截图记笔记,另一方面觉得我可以布出更好的展示给大家,唉~,写个帖子不容易啊。

2.1电源V_SYS

2.2.1引入电源7~28V

  1. 性质:引入电源7~28V
  2. 说明:电流大,电线粗,电线宽度 2mm。

2.2.1 V_SYS

  1. 性质:V_SYS 在 0Ω 之前,由 7~28V 经过 DCDC 芯片转变而来。
  2. 说明:供给两个 LDO 为了电源转变。电流大,电线粗,电线宽度 2mm。引入到供电的地方依次变细(4V 为 2mm,3V 为 1.5mm)。

  1. 性质:USB1 引入 V_SYS ,没有电压转变,进来电压就是 5V 。
  2. 说明:电流较大,电线较粗,电线宽度 0.8mm。

至此 V_Sys 就算布线完成。

2.2电源 4V

2.3电源 5V

向下供给各个需要5V供电的接口(接口也要相应的摆放在这片),没有办法避免向上走板子边缘到达右上角供给电机接口和数码管。

很多时候,从板子边缘走长长的供电线是没有办法避免的,因为供电就是要“药到病除”。

2.4电源 3.3V

可以看到3.3V供电处比5V分布更广,要分成上、中、、下三路进行供电。

也是在这部分我学习到:布局的时候就要有大局观,每一次走供电线更是如此,要看整体网络高亮,看清楚布局,想清楚走线,再行动。

2.4电源 Motor_5V

巧妙的穿过芯片中间,到达每一个铝电解电容的面前。

三、乱总结的陈氏技巧

  1. 铝电解电容走线必须正儿八经沿着电源电流方向走出来的粗走线。
  2. 小电容可以不是正儿八经从电源处引出来的走线,可以采用就近原则,在电源走线后面一点处,而且是 0.3mm 的细走线。
  3. 5V 的线在小器件处可以走细线。
  4. STM32 出来的信号线全部 0.25mm。(比其他的信号 0.3mm 细一点,不然布不下)
  5. 每一个小模块周边的电阻电容等小器件,一要注意在位置足够的前提下布局不用太过紧凑,因为后期很可能需要经过走线。

写在最后

玩了好几天,明天有事,后天的时候就开始收心,正式开始调试工作,也会同步写一些心得和大家分享,加油加油加油,共勉共勉共勉。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1942988.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Python和MATLAB网络尺度结构和幂律度大型图生成式模型算法

🎯要点 🎯算法随机图模型数学概率 | 🎯图预期度序列数学定义 | 🎯生成具有任意指数的大型幂律网络,数学计算幂律指数和平均度 | 🎯随机图分析中巨型连接分量数学理论和推论 | 🎯生成式多层网络…

如何解决Windows系统目录权限问题

目录 前言1. 为什么会出现权限问题2. 修改文件权限的步骤2.1 确定目标文件2.2 右键属性设置2.3 更改所有者2.4 修改权限2.5 确认修改 3. 替换文件3.1 拷贝新的文件3.2 验证替换结果 结语 前言 在Windows系统中,时常需要往C盘系统目录下拷贝或者替换文件。然而&…

【Python系列】JSON 序列化性能对比分析

💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

【学术会议征稿】第五届计算机工程与智能通信国际研讨会(ISCEIC 2024)

第五届计算机工程与智能通信国际研讨会(ISCEIC 2024) 2024 5th International Symposium on Computer Engineering and Intelligent Communications (ISCEIC 2024) 第五届计算机工程与智能通信国际研讨会(ISCEIC 2024)将于2024年…

安全管理(EHS系统)是什么?化工企业如何进行安全管理?

化工企业一般会涉及到易燃易爆、有毒有害的原材料和产品,生产环境有高温高压、腐蚀性强等危险因素。一旦管理不善或操作失误,极易引发火灾、爆炸、中毒等严重事故,不仅有人身伤害,还会给企业带来巨大损失,甚至影响社会…

如何快速批量修改照片拍摄日期?一键批量搞定拍摄日期修改教程

在摄影爱好者、专业摄影师甚至普通用户中,照片不仅仅是视觉记录,它们还承载着时间和地点的印记。当需要调整大量照片的拍摄日期时,手动操作显然不是最高效的方法。幸运的是,现代文件管理工具如“简鹿文件批量重命名”软件提供了批…

数据隐私保护与区块链技术的结合:新兴趋势分析

在当今数字化时代,数据隐私保护成为了一个备受关注的重要话题。随着个人数据的不断生成和流通,如何有效保护用户的隐私成为了技术创新的一个重要方向。区块链技术作为一种去中心化、安全性高且可追溯的技术手段,正在逐渐成为解决数据隐私保护…

Android --- 广播

广播是什么? 一种相互通信,传递信息的机制,组件内、进程间(App之间) 如何使用广播? 组成部分 发送者-发送广播 与启动其他四大组件一样,广播发送也是使用intent发送。 设置action&#xff…

RoundCube搭建安装教程:服务器配置方法?

RoundCube搭建安装教程的疑问解析!怎么搭建邮件系统? RoundCube是一款开源的Web邮件客户端,具有现代化的用户界面和丰富的功能,可以通过浏览器访问邮件服务器。AokSend将详细介绍如何在服务器上配置和安装RoundCube,以…

JS语法学习

找到官方库,查看相应资料:(都可以切换为中文版本的) 可以在 JavaScript 的官方网站上查看最新的语法规范和文档。JavaScript 的官方网站是 developer.mozilla.orghttps://developer.mozilla.org/en-US/docs/Web/JavaScript。那里…

尚庭公寓开发笔记(一)

本篇文章讲的是p前五十节课 可以关注后续 传统的数据库设计流程 分为三个阶段:概念模型设计阶段 逻辑模型设计阶段 物理模型设计 阶段 为本项目设计数据库模型 地图的存储只需要保存经纬度就ok 本项目采用的是mysql数据库 所有表都使用的是innnodb存储引擎 我们使…

数据编织 VS 数据仓库 VS 数据湖

目录 1. 什么是数据编织?2. 数据编织的工作原理3. 代码示例4. 数据编织的优势5. 应用场景6. 数据编织 vs 数据仓库6.1 数据存储方式6.2 数据更新和实时性6.3 灵活性和可扩展性6.4 查询性能6.5 数据治理和一致性6.6 适用场景6.7 代码示例比较 7. 数据编织 vs 数据湖7.1 数据存储…

内网安全:IPC横向

IPC计划任务横向 IPC配合系统服务横向 前言: IPC是为了实现进程之间的通信而开放的管道。IPC可以通过验证用户名和密码来获取相应的权限。通过IPC可以与目标机器建立连接。 IPC计划任务横向 本次目标:通过机器192.168.11.40,横向控制机器192…

dependency-check-maven依赖漏洞扫描

引入插件依赖&#xff1a; <plugin><groupId>org.owasp</groupId><artifactId>dependency-check-maven</artifactId><version>7.0.4</version><configuration><autoUpdate>false</autoUpdate><dataDirectory&g…

SQL

SQL全称 Structured Query Language&#xff0c;结构化查询语言。操作关系型数据库的编程语言&#xff0c;定义了一套操作关系型数据库统一标准 。 SQL通用语法 SQL语句可以单行或多行书写&#xff0c;以分号结尾。SQL语句可以使用空格/缩进来增强语句的可读性。MySQL数据库的…

bug诞生记——动态库加载错乱导致程序执行异常

大纲 背景问题发生问题猜测和分析过程是不是编译了本工程中的其他代码是不是有缓存是不是编译了非本工程的文件是不是调用了其他可执行文件查看CMakefiles分析源码检查正在运行程序的动态库 解决方案 这个案例发生在我研究ROS 2的测试Demo时发生的。 整体现象是&#xff1a;修改…

电脑突然出现‘vcruntime140_1.dll无法继续执行代码’的问题正确处理方法

如果你的电脑出现vcruntime140_1.dll无法继续执行代码的提示&#xff0c;那么你就要重视这个问题了&#xff0c;因为这代表vcruntime140_1.dll文件有可能损坏了或者找不到了&#xff0c;一旦这个vcruntime140_1.dll文件不见了&#xff0c;那么你的很多程序都会打不开&#xff0…

CatBoost模型Python代码——用CatBoost模型实现机器学习

一、CatBoost模型简介 1.1适用范围 CatBoost&#xff08;Categorical Boosting&#xff09;是一种基于梯度提升的机器学习算法&#xff0c;特别适用于处理具有类别特征的数据集。它可以用于分类、回归和排序任务&#xff0c;并且在处理具有大量类别特征的数据时表现优异。典型…

FPGA:3-8译码器的设计

1、什么是3-8译码器&#xff1f; 3-8译码器&#xff0c;顾名思义&#xff0c;三个输入&#xff0c;八个输出&#xff0c;构成3-8译码器。根据二进制特性&#xff0c;三位二进制数有八种可能&#xff0c;对应的真值表如下所示(该译码器输出低电平有效)&#xff1a; 3-8译码器(…

kail-linux如何使用NAT连接修改静态IP

1、Contos修改静态IP vi /etc/sysconfig/network-scripts/ifcfg-ens33&#xff0c; 标记红色处可能序号会变动 参考linux配置网络不通解决方案_kylinv10sp2 网关不通-CSDN博客https://tanrt06.blog.csdn.net/article/details/132430485?spm1001.2014.3001.5502 Kail时候NAT连…