学点啥系列之

——STM32F103ZET6 核心板制作指引

原创资料,转载请联系

作者的话:会画stm32F103ZET6的话,rct6啥的简直不要太简单

一、电路总览

图1:电路整体

二、单片机部分

要做一块核心板,首先要搞清楚自己想在这块板子上加啥东西。

依照思路,一块单片机最小系统,应该要有电源(三处讲)、单片机本身、复位电路以及时钟电路。

我们先从单片机本身入手,如图 2 所示,是本次的主角,STM32F103ZET6


图2:STM32F103ZET6

翻开数据手册,查一下,如图 3:


图3:数据手册的zet6

从数据手册中我们可以获知这 LQFP封装的芯片各个引脚是什么。可能有的同学迷糊了,这些引脚都有编号(1-144),那么实际上单片机上引脚是如何对应编号的呢?

同学,先找 1 号引脚,那么 1号引脚在哪呢?找小圆点(引脚基准点)!

看看下面这张图 4:


图4:芯片实物

找小圆点,仔细看看,哎呀,居然有 3 个圆点,咱们这个左下角的那个点

才是引脚基准点,离该点最近且作为引脚直线上逆时针第一个引脚是 1 号引脚:

那么答案呼之欲出了,如图 5 所示:


图5:引脚基准和 1 号引脚

还有一个方法,那就是将芯片的丝印字符正对,左下角第一个引脚即为一号引脚,此法适用于没有引脚基准时的判断。

关于找 1 号脚的问题就不多说了,可以自己找资料。我们把芯片画在原理图上,如图 6

所示:



图 6:MCU 原理图

此处我们将一块 stm32f103zet6 划分为两个部件,仔细观察一下可以发现,我们将 VDD、VSS、VSSA、VREF+、VDDA、VSSA单独提出来做一个部件,其实二者封装还是共用的,AD绘制原理图库加部件的操作自己琢磨。这里有个有意思的地方,那就是右边 MCU_2 处有DGND 和 AGND,它们之间用了一个 0Ω的电阻连了起来,关于数字地和模拟地之间用0Ω电阻连接的操作,同学可自行查找资料学习。此处咱们讲点更有意思的内容,这里有着一堆VDD、VSS、VREF+、VSSA、VDDA、NRST、VBAT,我在此处做些解释,防止有些同学不明白还懒。

① VCC: 学过 51 的同学都知道 51 供电引脚是个 VCC,VCC 就是接入电路的电压。(V代表电压,C 字母代表电路)

② VDD: 器件内部的工作电压,咱们一般直接接 3.3V 了。(D 为 device器件的首字母,表示器件)

③VSS: 通常指电路公共接地端电压,所以可以看到往往咱们都把其接到GND 去了。(S为 series 表示公共连接的意思)

④VDDA: 通对比 VDD 多了个A,不用想,这肯定和模拟电路有关,所以这玩意是对所有的模拟电路部分供电。需要注意的是VDDA 和 VDD 之间的电压差不能超过 300mV,VDD 与 VDDA应该同时上电或调电,所以咱们就不自找麻烦整写花里胡哨的电路了,这两玩意直接连同一个电源就是了。

⑤VSSA:接地的玩意后面跟了个 A,毫无疑问,这是 VDDA的地,所以我们可以理解出来,VDDA 和 VSSA是单片机内部模拟电路的正负(电源),所以啊,你要是这两玩意不接好,怕是不能使得单片机正常工作了。那为啥我右边这张图的VSSA(31号引脚)接了一个数字地呢?不该是接到模拟地吗?那是因为我这个芯片画错了,这里 31号引脚是 VREF-,而不是 VSSA。但真的就是错的?这里画错是有一定道理的,在VREF-可用时,必须绑定到 VSSA。

⑥VREF+、VREF-:关于这个,看到 ref,大家就应该知道这玩意是个参考电压,结合stm32 的引脚具备 A/D 转换的功能这点,就能清楚这玩意是用来提高 ADC精度的。在引脚数目上了 100后,为了保证更好的低电压输入精度,连接一个单独的参考电压输入到VREF+中,VREF+输入电压范围为 2.0V 到 VDDA,VREF-可用时,必须绑定到VSSA。在引脚数为 64 时,将没有这个 VREF(实际上不是没有,而是不引出了,VREF+、VREF-在内部被接到 VDDA、VSSA 上去了)对于 NRST 和VBAT,电路如图 7 所示:


图 7:时钟、复位、VBAT 电路

红色框的是时钟电路,蓝色框的是复位电路,绿色框的是 VBAT外围电路。时钟电路和复位电路不多说,此处讲一下这个 VBAT 外围电路。

VBAT 的作用: 使用电池或其他电源连接到 VBAT 脚上时,当 VDD断电时,可以保存备份寄存器的内容和维持 RTC 的功能。

图7上的 VBAT 电路,外接 3V3 或者不外接,都有 BT1 在作用,对于VBAT外围电路,还有更好的接法,在这里展示一下:


图 8:VBAT 外围电路好接法

看图8,这里接了两个二极管,对比俺画的电路,区别在于 BAT的正极也接了个二极管,分析电路可知,当 VCC3.3M 作用时,D2两端压差不至于导通,所以有了 VCC3.3M 作用时,备用电池就不会作用了,而 VCC3.3M断开时,D2 满足导通条件,BAT 作用于 VBAT。

该VBAT外围电路取自博主_Charles_Chen的图,我自己懒得画了哈哈哈

三、电源和通信部分


图 9:USB 供电电路

这是个 USB 供电电路,C6、R9 是阻容网络,接到了 USB的外壳上去(6、7、8、9引脚),目的如下:

⑴将影响外壳的噪音滤除、不影响信号地;

⑵迫使板子上电流是流入内部的信号地,而不是流到外壳。

这样处理综合考虑了 EMI 滤波和 ESD隔离,相比于直接接地,此类处理方式能更好减小各种干扰,增加整体的抗干扰能力,事实上USB 对 ESD 并不敏感,这种接法也是属于有备无患,不想接的话可以直接接地或者不接,将阻容网络去掉。

然后看一下 usb 的 D+和 D-,对应到 STM32 的 USBDP、USBDM。

USBDP(USB DataMinus)是 USB 的正信号线;

USBDM(USB Data Positive)是 USB 的负信号。

查一下数据手册


图 10:数据手册截图

再看C5,这是退耦电容,许多同学对滤波和退耦电容区分不清,建议查查资料了解一下,滤波主要是用于电源整流电路中,用来滤除交流成分,使得输出的直流更加平滑(滤纹波)。

而退耦电容一般用于不需要交流的地方,用来消除自激,并接在正负极,避免由于电流的突变而使得电压下降,这里也有滤纹波的意思。

说到滤波、退耦电容,又不得不提旁路电容,旁路电容用在有电阻连接时,接在电阻两端使得交流信号顺利通过。(具体自己查资料)

对于 PA8、R6、R7、R8、Q1,此处作用是切换 D+上拉,当 PA 高电平时 D+不上拉;PA8

低电平时 D+上拉。

一般插上电脑 USB 后的 VUSB 的电压时 5V(实测要更低些),经过下面这个线性稳压IC(AMS1117-3.3V)后输出 3V3。(右边并联 LED 用来指示3.3V 输出正常)


图 11:AMS1117 稳压电路
Vin 和 Vout不必多说,看看数据手册即可明白。此处输出的 3.3V 供给单片机。

接下来是 UART 和 SWD:


图 12:SWD 和 UART

至于为啥是 PA13、PA14。。。自己看数据手册。

BOOT 就不说了,然后就是最好将芯片的各个引脚引出,一般是用排针引出:


图 13:接插件引出
当然你也可以不止引出一个,比如 3.3V、5V、GND这种引脚,因为用的比较多,可以多引出些,可以插更多凌乱的杜邦线啥的。

附录:PCB 提要


①各个引脚要注意在 Top/Bottom Overlay 层标注一下:(天蓝色线框位置)

②GND 用铜加固一下,电流较大的地方把线弄粗些,必要时直接用铺铜当导线:

"

③晶振要尽量靠近时钟接口、走线尽量对称,最好走差分线。并且晶振底部尽量不要走线:

④绘制 logo:

这种是两层叠在一起,分别是 Top Layer 层和 Top Solder 层,自己尝试一下吧。

作于 2020.10.21
上传于2021.10.24

本文以现在眼光来看仍然有许多可优化的地方,但不影响主题,再者“心宽体益胖”,日渐惰矣

STM32F103ZET6 核心板制作指引的更多相关文章

  1. 基于迅为-i.MX6Q开发板制作镜像方法

    在“/home/imx6”目录(在前面编译 android 系统的时候新建过这个目录,如果没有可以自己新建一个)下,使用命令“mkdir minilinux/”新建 minilinux 目录,使用命令 ...

  2. 【iCore3 双核心板】DEMO 1.0 测试程序发布

    iCore3 Demo V1.0 程序说明 一.概要 本资料包包含5个文件夹: 1.“arm”里是 icore3上 arm的程序包,开发环境为 KEIL 5.17: 2.“fpga”里是 icore3 ...

  3. 迅为iTOP-4412核心板调整电压

    本文转自:http://www.topeetboard.com iTOP-4412核心板使用的电源管理芯片是三星专门针对4412研发的S5M8767,8767提供9路BUCK和28路LDO输出,每路电 ...

  4. 【iCore系列核心板视频教程】之 SDRAM 读写实验

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...

  5. 【iCore2 双核心板视频教程一】iM_LAN 100M 以太网模块UDP例程(包含视频教程)

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...

  6. 【iCore2双核心板视频教程三】iM_LAN 100M 以太网模块TCP压力测试(更新视频教程)

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...

  7. 【iCore2双核心板视频教程二】iM_LAN 100M 以太网模块TCP通信例程

    ============================== 技术论坛:http://www.eeschool.org 博客地址:http://xiaomagee.cnblogs.com 官方网店:h ...

  8. 【新产品发布】发布STM8S 核心板

    搞了一些STM8的核心板供大家把玩,先上几张图: 物品购买地址: http://item.taobao.com/item.htm?spm=686.1000925.1000774.17.5GMO5M&a ...

  9. 【iCore、iCore2 双核心板】EPCS 实验(SPI Flash)(基于Verilog语言)

    _____________________________________ 深入交流QQ群: A: 204255896(1000人超级群,可加入) B: 165201798(500人超级群,满员) C ...

随机推荐

  1. Typora常用操作

    Typora常用操作 目录 Typora常用操作 1. 标题 2.子标题 3. 区块 4.代码 5. 表格 6. 超链接 7.单选框 8.数学公式 9.流程图 10.生成目录 11.字体设置 12. ...

  2. [loj3246]Cave Paintings

    题中所给的判定条件似乎比较神奇,那么用严谨的话来说就是对于两个格子(x,y)和(x',y'),如果满足:1.$x\le x'$:2.从(x,y)通过x,x+1,--,n行,允许向四个方向走,不允许经过 ...

  3. java内部类的调用方式

    public class DotThis { public class Inner{ public DotThis outer(){ return DotThis.this; }; } /* 1.第一 ...

  4. pechkin 导出https路径的图片

    使用Pechkin.Synchronized可以方便导出html为pdf,但是对于https路径的图片并不支持,仅支持http路径下的图片 解决方案:图片使用本地绝对路径(相对于服务器) 以下是我获取 ...

  5. Go语言核心36讲(Go语言实战与应用十八)--学习笔记

    40 | io包中的接口和工具 (上) 我们在前几篇文章中,主要讨论了strings.Builder.strings.Reader和bytes.Buffer这三个数据类型. 知识回顾 还记得吗?当时我 ...

  6. 【NOI导刊200908模拟试题02 题4】【二分+Dijkstra】 收费站

    Description 在某个遥远的国家里,有n个城市.编号外1,2,3,-,n. 这个国家的政府修建了m条双向的通路.每条公路连接着两个城市.沿着某条公路,开车从一个城市到另一个城市,需要花费一定的 ...

  7. CF1156F Card Bag

    题目传送门. 题意简述:有 \(n\) 张卡牌,每张卡牌有数字 \(a_1,a_2,\cdots,a_n\).现在随机抽取卡牌,不放回,设本次抽到的卡牌为 \(x\),上次抽到的卡牌为 \(y\),若 ...

  8. 模仿UP主,用Python实现一个弹幕控制的直播间!

    灵感来源 之前在B站看到一个有意思的视频: [B站][亦]终极云游戏!五千人同开一辆车,复现经典群体智慧实验 大家可以看看,很有意思. up主通过代码实现了实时读取直播间里的弹幕内容,进而控制自己的电 ...

  9. DNS域名解析全过程

    一张图看懂DNS域名解析全过程   DNS域名解析是互联网上非常重要的一项服务,上网冲浪(还有人在用这个词吗?)伴随着大量DNS服务来支撑,而对于网站运营来说,DNS域名解析的稳定可靠,意味着更多用户 ...

  10. 在WEB网页上模拟人的操作(批量操作)

    思路:selenium IDE网页测试工具+firefox浏览器=>录制网页操作脚本->导出为Perl/python/Ruby/C/R等语言 参考: (1)selenium IDE网页测试 ...