当前位置: 首页 > news >正文

STM32F103 最小系统 PCB 设计与原理

这篇文章是来自我学习:

​​​​​​带着你从手册开始画板 STM最小系统板教程系列(一)_哔哩哔哩_bilibili​​​​​​

这套教程的笔记,同时本文中也参考了其他教程以及我遇到的困惑与自答,最终汇总。

一、单片机最小系统

单片机最小系统是由芯片外部接上时钟电路、复位电路和电源构成的一个基本应用系统。主要包含的部分,单片机、时钟电路、复位电路、电源电路、程序加载口。

下图就 是PCB 最终效果。

二、主控芯片

这里使用 STM32F103CBT6,首先应该设置启动模式电路,在STM32 都有 BOOT1 和 BOOT0 两个引脚,接低或者高电平即可配置。

在系统复位后,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。

一般来说,我们都使用主闪存模式 (flash),来作为启动区域。

不过在烧录串口程序中,我们则需要系统存储器启动系统。系统储存器在出厂时设定了 bootloader (引导程序),用此方式启动,向 STM32 串口写入代码,引导程序将会帮我们把把代码写入到 flash 中。之后将引脚转化到主闪存模式 (flash),复位即成功烧录代码并运行。

当然如果我们使用 stlink、DAP 之类的调试器,则不需要设置这些,并且它还具有代码断点查看内存等功能。不过本教程并没有板载内置调试器,如果想用则只能外置了。

2.1 主控芯片 PCB 设计

以下便是 STM32F103CBT6 的 BOOT1 和 BOOT2 引脚原理图。

在 BOOT1 处接入了一个按钮,使得我们可以切换主闪存和系统储存。

 最后我们把电路整理成这样:

 

三、复位电路 

根据 STM32F103x8B 数据手册 5.3.13 章节提示,复位引脚在芯片内部以及接了一个永久上拉电阻。也就是通上电此引脚将永久处于高电平。同时也给出了推荐电路设计。

3.1 复位电路 PCB 设计

我们并不使用手册中建议的复位电路,而是采用这样的结构:

 

上图复位电路,在刚上电时c1电容需要一定时间充电,在此时 NRST 处于低电平。低电平时系统复位,这样每次上电系统就能自动复位一次。或者我们摁下按钮,也会使得电路接地,进行复位。

四、外接晶振

根据 STM32F103x8B 数据手册 5.3.6 章节提示,高速外部时钟 (HSE) 的频率应该在 0~25MHz 之间,低速外部时钟 (LSE) 应该在 0~1000KHz 之间。在这里我们使用其中的两个典型值 8MHz 和32.768KHz。

32.768KHz 在 15 次二分频后即可得到 1Hz 很适合作为时钟使用。

4.1 外接晶振 PCB 设计

 晶振电路需接入两个 20pf 电容。

五、电源 

5.1 线性稳压器 (LDO) 

 在这里使用了 me6206a33 作为稳压电源,主要是因为他体积小,比较适合这个板子。

根据参考手册提示,VIN 和 VOUT 都需要接入 1uF 的电容。

pcb设计如下:5V 为输入电源,3.3V 为输出。 

5.2 STM32 电源引脚配置

其中名词解释: 

VCC电路的供电正电压VDDD芯片的工作数字正电压
GND电路的供电负电压VSSD芯片的工作数字正电压
VDD芯片的工作正电压VREF+ADC基准参考正电压
VSS芯片的工作负电压VREF-ADC基准参考负电压
VDDA芯片的工作模拟正电压VBAT电池或其他电源供电
VSSA芯片的工作模拟负电压VEE负电压供电

 在图中提示出很重要的一点:VDD 被要求接入 5x100nf + 1x4.7uf  共六个电容。VDDA 和 VREF+ 也被要求接入特定的电容。 所以我们构建电路:

 

我在观察一些开源项目时,发现很多项目并没有按照这手册说明给足电容。关于这个问题我特地咨询了一位工程师:

 并接入 STM32:

5.3 电源的 pcb 设计

 

六、串口转 USB

6.1 CH340N 概述

首先我们需要使用一颗 CH340N 将串口转化为差分信号,这样才能输出到 usb 中。

 

CH340 内置时钟,不需要外接晶振。同时 CH340 也作为一个系列出现,我们在这里使用最小封装CH340N。

 手册说明,VCC 需要外接 0.1uF 的电容。同时 UD+ 和 UD- 可直接接入到 usb 无需电阻。

电路实现如下:

6.2 Type-C 接口

 

 

 标准的 type-c 接口是 24PIN,我们不需要这么多,只需要去掉 tx 和 rx 的 16 PIN 版即可。

 通过 CH340N 将数据转化为差分信号,后接入 type-c 的 A6、A7、B6 和 B6 差分口。其中最重要的 type-c 的CC1 和 CC2口,这两个数据口决定了插入方向,插入的版本等。

CC1 和 CC2 都接入下拉电阻即可配置 type-c 为 UFP 模式,即为被供电设备,下表中说明了 UFP 几种子模式。图中说的 Ra下拉是 1.2k 下拉电阻。Rd 下拉是 5.1k 下拉电阻。

我们需要使用的是 debug mode (调试模式),即 CC1 和 CC2 都接入 5.1k 下拉电阻。至于其他几种模式用途我还没有完全搞懂,不做介绍。

PCB 接线如下:因为正反有两排接口,所以无论是vcc、接地和差分均有一对口。

6.3 串口转 USB 的 pcb 设计

 

七 总结

相关文章:

STM32F103 最小系统 PCB 设计与原理

这篇文章是来自我学习: ​​​​​​带着你从手册开始画板 STM最小系统板教程系列(一)_哔哩哔哩_bilibili​​​​​​ 这套教程的笔记,同时本文中也参考了其他教程以及我遇到的困惑与自答,最终汇总。 一、单片机最小系统 单片机最小系统是由…...

JVM篇---第十一篇

系列文章目录 文章目录 系列文章目录一、如何选择垃圾收集器?二、什么是类加载器?三、什么是 tomcat 类加载机制?一、如何选择垃圾收集器? 如果你的堆大小不是很大(比如 100MB ),选择串行收集器一般是效率最高的。 参数: -XX:+UseSerialGC 。如果你的应用运行在单核的机…...

MongoDB——window11安装mongodb5.0.21版本服务端(图解版)

目录 一、mongodb官网下载地址二、安装步骤三、配置环境变量四、运行mongodb 一、mongodb官网下载地址 mongodb官网下载地址:https://www.mongodb.com/try/download/community 二、安装步骤 双击运行下载好的mongodb-windows-x86_64-5.0.21-signed.msi安装包&am…...

第1次 更多的bash shell命令

1.检测程序 程序都是进程在运行,进程里面有很多线程,面试经常会问进程和线程的区别,线程可以访问另一个线程的什么什么的,这些我都听腻了,区别就是进程会分配程序需要的空间,创建线程需要的资源&#xff0c…...

工业路由器项目应用(4g+5g两种工业路由器项目介绍)

引言: 随着工业智能化的不断发展,工业路由器在各个领域的应用越来越广泛。本文将介绍两个工业路由器项目的应用案例,一个是使用SR500 4g工业路由器,另一个是使用SR800 5g工业路由器。 详情:https://www.key-iot.com/i…...

国产开源无头CMS,MyCms v4.7 快捷生成接口开发后台

MyCms 是一款基于 Laravel 开发的开源免费的开源多语言商城 CMS 企业建站系统。 MyCms 基于 Apache2.0 开源协议发布,免费且可商业使用,欢迎持续关注我们。技术交流 QQ 群:887522124 加群请备注来源:如gitee、github、官网等 v4…...

C++(反向迭代器)

前言: 上一章我们介绍了适配器,也提了一下迭代器适配器,今天我们就从反向迭代器把迭代器适配器给解释一下。 既然 都叫迭代器容器了 就说名只要接口合适他可以封装实现各种容器需求包括vector list 。 目录 1.反向迭代器设计 1.1反向迭代…...

DataX和dataX-web 集群部署及使用

📑 DataX和dataX-web 集群部署及使用 一 . 安装前准备 DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、Oracle等)、HDFS、Hive、ODPS、HBase、FTP等各种异构数据源之间稳定高效的数据同步功能。 DataX 采用 框架 插件 的模式…...

常见的数据存储方案:选择合适的方式来管理您的数据

对于数据存储方案的选择,是现代企业和个人都需要面对的重要决策。本文将为您介绍几种常见的数据存储方案,包括关系型数据库、NoSQL数据库以及分布式文件系统。通过了解每种方案的特点、操作方式和适用业务类型,希望能帮助您选择合适的数据存储…...

leetcode 221 最大正方形 + 1277 统计全为1的正方形子矩阵

题目 在一个由 ‘0’ 和 ‘1’ 组成的二维矩阵内,找到只包含 ‘1’ 的最大正方形,并返回其面积。 示例 输入:matrix [[“1”,“0”,“1”,“0”,“0”],[“1”,“0”,“1”,“1”,“1”],[“1”,“1”,“1”,“1”,“1”],[“1”,“0”,“…...

yolov7车牌识别(12种中文车牌类型)

12种中文车牌类型: 1.单行蓝牌 2.单行黄牌 3.新能源车牌 4.白色警用车牌 5 教练车牌 6 武警车牌 7 双层黄牌 8 双层武警 9 使馆车牌 10 港澳牌车 11 双层农用车牌 12 民航车牌 测试demo: 以yolov7-lite-s 为例: python detect_rec_plate.py --detect_model weigh…...

Mac PF命令防火墙

查看所有网络接口及其名称 ifconfig -a 文件目录:/etc/pf.conf 在文件末尾添加以下行: block drop from IP_ADDRESS其中,"IP_ADDRESS"是您要屏蔽的IP地址。 输入以下命令以重新加载pf防火墙配置文件: sudo pfctl …...

prototype-based learning algorithm(原型学习)

Prototype-based learning(原型学习)是一种机器学习方法,它的核心思想是通过存储一组代表性的样本(原型),然后使用这些原型来进行分类、回归或聚类等任务。这种方法模拟了人类学习的方式,人们往…...

【数据结构-二叉树 八】【遍历求和】:求根到叶子节点数字之和

废话不多说,喊一句号子鼓励自己:程序员永不失业,程序员走向架构!本篇Blog的主题是【遍历求和】,使用【二叉树】这个基本的数据结构来实现,这个高频题的站点是:CodeTop,筛选条件为&am…...

PHP知识大全

PHP知识大全 1. 变量如何定义?如何检查变量是否定义?如何删除一个变量?怎样检测变量是否设置? $定义 isset()// 检测变量是否设置 defined()// 检测常量是否设置unset()//销毁指定的变量 empty()// 检测…...

Jmeter常用参数化技巧总结!

说起接口测试,相信大家在工作中用的最多的还是Jmeter。 JMeter是一个100%的纯Java桌面应用,由Apache组织的开放源代码项目,它是功能和性能测试的工具。具有高可扩展性、支持Web(HTTP/HTTPS)、SOAP、FTP、JAVA 等多种协议。 在做…...

iTunes更新iOS17出现发生未知错误4000的原因和解决方案

有不少人使用iTunes更新iOS 17时出现「无法更新iPhone发生未知的错误4000」的错误提示,不仅不知道iTunes升级失败的原因,也无从解决iPhone无法更新4000的问题。 小编今天就分享iPhone更新iOS系统出现4000错误提示的原因和对应的解决方案。 为什么iPhone…...

微信小程序 table表格 固定表头和首列 右侧表格可以左右滚动

(一) 1.左侧一列固定不动 2.右侧表格内容可以左右滚动 3.单元格内容平均分配 4.每一行行高可以由内容撑开 通过 js 设置左侧一列行高与右侧表格内容行高保持一致 1.1 效果图 1.2 tabble.wxml <view classtable><!-- 左侧固定 --><view classtable_left_colum…...

Final Cut Pro 10.6.10中文用法儿

Final Cut Pro是一款专业视频编辑软件&#xff0c;主要用于影片的后期剪辑、调色、特效、音频处理等方面。 Final Cut Pro for Mac(fcpx视频剪辑) 10.6.10中文版 以下是一些基本的使用方法和快捷键&#xff1a; 添加素材: 在检视器中&#xff0c;可以使用E快捷键把所选素材片…...

【网络安全---XSS漏洞(1)】XSS漏洞原理,产生原因,以及XSS漏洞的分类。附带案例和payload让你快速学习XSS漏洞

以pikachu靶场为例子进行讲解&#xff0c;pikachu靶场的搭建请参考以下博客&#xff1b; 【网路安全 --- pikachu靶场安装】超详细的pikachu靶场安装教程&#xff08;提供靶场代码及工具&#xff09;_网络安全_Aini的博客-CSDN博客【网路安全 --- pikachu靶场安装】超详细的pi…...

经验小波变换(EWT):从理论基石到信号分解实战

1. 经验小波变换&#xff08;EWT&#xff09;的前世今生 我第一次接触EWT是在处理一段轴承振动信号时。当时用传统EMD方法分解出的IMF分量里&#xff0c;高频噪声和故障特征频率完全混在一起&#xff0c;就像把咖啡和牛奶搅成了拿铁——虽然都是白色液体&#xff0c;但根本分不…...

使用 SciPy 求解零和博弈纳什均衡的正确建模与实现

...

K8s原生ML编排进入“编译期优化”时代(SITS 2026首次披露:eBPF驱动的模型感知调度器Alpha版已交付头部5家云厂商)

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;AI原生Kubernetes编排&#xff1a;SITS 2026 K8s for ML工作负载 SITS 2026 引入了专为机器学习工作负载深度优化的 AI-native Kubernetes 编排层&#xff0c;突破传统 K8s 在资源弹性、异构设备调度与…...

ComfyUI-Impact-Pack完整安装指南:为什么你的V8版本功能不全?终极解决方案

ComfyUI-Impact-Pack完整安装指南&#xff1a;为什么你的V8版本功能不全&#xff1f;终极解决方案 【免费下载链接】ComfyUI-Impact-Pack Custom nodes pack for ComfyUI This custom node helps to conveniently enhance images through Detector, Detailer, Upscaler, Pipe, …...

Encaustic不是滤镜!揭秘热蜡媒介物理特性如何反向重构MJ提示词结构:材料科学×AIGC的跨学科实践

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;Encaustic不是滤镜&#xff01;——热蜡媒介的本质祛魅 Encaustic&#xff08;热蜡绘画&#xff09;常被误认为是数字图像处理中的一种“复古滤镜”&#xff0c;实则是一种拥有两千多年历史的实体绘画媒…...

在MacBook Pro上构建工业物联网数据采集:libmodbus实战指南

1. 为什么选择MacBook Pro作为工业物联网开发平台 工业物联网开发通常需要频繁的现场调试和设备对接&#xff0c;传统工控机笨重且不便携。MacBook Pro凭借其出色的性能表现和稳定的macOS系统&#xff0c;正在成为工程师们的新宠。我去年参与一个智慧农业项目时&#xff0c;就深…...

CDMA功率测量技术与Agilent 8960系统优化

1. CDMA功率测量技术背景与挑战在cdma2000移动通信系统中&#xff0c;精确的功率控制是实现高质量通信的核心技术之一。与GSM等采用固定功率等级的系统不同&#xff0c;CDMA要求移动台(MS)能够在80dB动态范围内精确调整发射功率。这种需求源于CDMA系统的自干扰特性——所有用户…...

别再傻傻分不清!Ansys Workbench三大建模界面(SCDM/DM/Mechanical)保姆级对比与选用指南

Ansys Workbench三大建模界面深度解析&#xff1a;如何根据项目需求选择最佳工具 在工程仿真领域&#xff0c;Ansys Workbench作为行业标杆软件套件&#xff0c;其内置的三大建模界面——SpaceClaim&#xff08;SCDM&#xff09;、DesignModeler&#xff08;DM&#xff09;和Me…...

VLSI时代下74系列离散逻辑芯片的现代应用与设计实践

1. 从“胶水逻辑”到“系统粘合剂”&#xff1a;离散逻辑芯片的现代生存法则 在今天的数字电路设计领域&#xff0c;提起“7400系列”或者“74HC04”&#xff0c;很多年轻工程师的第一反应可能是博物馆里的古董&#xff0c;或者教科书上的历史章节。主流叙事已经被SoC、FPGA和高…...

跨平台桌面待办工具My-TODOs:本地存储的极简任务管理终极指南

跨平台桌面待办工具My-TODOs&#xff1a;本地存储的极简任务管理终极指南 【免费下载链接】My-TODOs A cross-platform desktop To-Do list. 跨平台桌面待办小工具 项目地址: https://gitcode.com/gh_mirrors/my/My-TODOs 你是否厌倦了云端任务管理工具的复杂界面和隐私…...