【学习笔记】STM32F407探索者HAL库开发(二)STM32F4最小系统设计

news2024/9/19 10:38:14

【学习笔记】STM32F407探索者HAL库开发(二)STM32F4最小系统设计

  • 0 什么是最小系统
  • 1 电源电路
    • 1.1 数字部分电源
    • 1.2 模拟部分电源
    • 1.3 参考电压
    • 1.4 VBAT
  • 2 复位电路
  • 3 BOOT启动电路(F4)
  • 4 晶振电路
    • 4.1 低速晶振
    • 4.2 高速晶振
  • 5 下载调试电路
  • 6 串口一键下载电路
  • 7 最小系统的设计意义
    • 7.1 降低开发成本和风险
    • 7.2 提高开发效率
    • 7.3 便于故障排查和调试

在这里插入图片描述

0 什么是最小系统

最小系统就是保证MCU正常运行的最低要求(最小电路组成单元),一般是指 MCU的供电、复位、晶振、 BOOT等部分。 最小系统的作用是为电子设备或系统的开发和调试提供一个基础平台。在设计和开发复杂的电子系统时,通常先构建最小系统,确保核心部分能够正常工作,然后再逐步添加其他功能模块和外设,以实现完整的系统功能。这样可以降低开发难度,提高开发效率,并且便于进行故障排查和调试。

STM32F407的最小系统需求如下表所示:

类型引脚名称说明
电源VDD/VSS(数字部分)电源正(VDD)/负(VSS)引脚,给 STM32 供电
电源VDDA/VSSA模拟部分电源正/负引脚,给 STM32 内部模拟部分供电
电源VREF+/VREF-参考电压正/负引脚,给 STM32 内部 ADC/DAC 提供参考电压100脚及以上的STM32F407 型号才有这两个脚
电源VBATRTC&后备区域供电引脚,给RTC 和后备区域供电。一般VBAT接电池,用于断电维持 RTC 工作,如不需要,直接将VBAT接 VDD 即可
复位NRST复位引脚,用于复位 STM32,低电平复位
启动BOOT0/BOOT1启动选择引脚,一般这两个脚各接一个下拉电阻即可,其他启动配置说明详见后续分析
晶振OSC_IN /OSC_OU外部HSE 晶振引脚,用于给 STM32提供高精度系统时钟,如果使用内部HSI 能满足使用需求,这两个脚可以不接晶振
晶振OSC32_IN / OSC32_OUT外部LSE 晶振引脚,用于给 STM32 内部 RTC 提供时钟,如果使用内部LSI 能满足使用需求,这两个脚可以不接晶振
调试SWCLK/SWDIOSWD 调试引脚,用于调试 STM32 程序,同时 STM32 还支持JTAG 调试,不过不推荐使用!因为 SWD 省 IO!

1 电源电路

为整个系统提供稳定的电力。这可能包括直流电源(如电池、电源适配器等)或交流电源经过整流、滤波和稳压等处理后得到的直流电源。可增加电源管理:确保电源的稳定性和可靠性,可能包括过压保护、过流保护、欠压保护等功能。

1.1 数字部分电源

在这里插入图片描述

VCC5进入(例如USB接口),通过AMS1117稳压器,输出VCC3.3,给STM32供电,芯片需求电源是2.0V ~ 3.6V供电。R56/R57是为了维修方便而增加的2个电阻,大家实际设计电路板时候,可以不加这两个电阻.VCC3.3M直接连接3.3V即可。

VCC3.3M为芯片上所有的VDD供电,VSS全部接到GND。

1.2 模拟部分电源

在这里插入图片描述

模拟部分的电源也是由数字电源VCC3.3获取的,经过一个RC低通滤波器,把3.3V中高频的部分过滤掉,保留低频的部分,给模拟部分的VDDC和VSSA供电。

1.3 参考电压

在这里插入图片描述

参考电压Vref+,也是来自于模拟部分电源,通过排针的方式引入,使用短路帽连接至VDDA(3.3V模拟电源),Vref-一般就是GND。如果不想使用VDDA,也可以通过排针,从外部接入一个参考电压。

1.4 VBAT

在这里插入图片描述

3.3V通过二极管给VBAT供电,当开发板断电时,没有3.3V后,通过BAT纽扣电池(3V)通过二极管给VBAT引脚供电,是的RTC和后备区域的数据保存下来。

2 复位电路

在这里插入图片描述

STM32复位引脚NRST保持低电平状态时间1~4.5ms即可复位。

3 BOOT启动电路(F4)

在这里插入图片描述

开发板默认状态,接线帽将35连接,46连接,通过两个下拉电阻将BOOT0和BOOT1接地。

4 晶振电路

4.1 低速晶振

在这里插入图片描述

4.2 高速晶振

在这里插入图片描述

5 下载调试电路

在这里插入图片描述

6 串口一键下载电路

在这里插入图片描述

PA9和PA10通过排针13引出,可通过外部的USB-TTL的模块或RS232电平转换连入。
开发板也提供了转换芯片CH340

在这里插入图片描述

右侧为USB接口,连接至电脑,通过CH340 D+/D-输入至CH340芯片,可以将USB的信号转换为TTL电平,通过TXD/RXD引脚输出给USART1的24排针,使用短路帽供给13。

7 最小系统的设计意义

7.1 降低开发成本和风险

  1. 资源聚焦:通过只包含最基本的组件,最小系统可以在开发初期以较低的成本进行设计和验证。这避免了在不确定整个系统需求的情况下投入大量资源到全面的设计中,降低了不必要的成本支出。
  2. 早期验证:在项目早期构建最小系统,可以快速验证核心功能和关键技术的可行性。如果在这个阶段发现问题,可以及时调整设计方向,避免在后续开发中投入更多资源后才发现不可行,从而降低项目失败的风险。

7.2 提高开发效率

  1. 简化设计流程:最小系统的简洁性使得设计过程更加清晰和直接。开发人员可以专注于核心功能的实现,减少了复杂系统中可能出现的干扰因素,加快了设计进度。
  2. 快速迭代:由于最小系统相对简单,对其进行修改和优化也更加容易。这使得开发人员可以快速进行迭代开发,根据测试结果和用户反馈及时调整设计,提高产品的质量和性能。

7.3 便于故障排查和调试

  1. 缩小问题范围:当系统出现故障时,最小系统的简单结构有助于快速定位问题所在。由于组件较少,排查故障的范围也相应缩小,提高了故障排查的效率。
  2. 独立测试:最小系统可以作为一个独立的单元进行测试,与其他部分的系统相对隔离。这使得测试过程更加简单和可控,能够更准确地发现和解决问题。
    7.4 为系统扩展提供基础
  3. 明确核心需求:通过设计最小系统,开发人员可以更好地理解系统的核心需求和关键功能。这为后续的系统扩展提供了明确的方向和基础,确保扩展的部分与核心功能相协调。
  4. 逐步扩展:在最小系统的基础上,可以逐步添加其他功能模块和外设,实现系统的逐步扩展。这种渐进式的开发方式可以更好地控制开发过程,降低系统复杂性带来的风险。

总之,最小系统的设计在硬件电路开发中具有重要的意义和作用。它不仅可以降低开发成本和风险,提高开发效率,还便于故障排查和调试,为系统的扩展提供了坚实的基础。

在这里插入图片描述

注:笔记内容来自正点原子官方HAL库开发教程,配合STM32F407探索者开发板

注:最小系统的设计本质上是实现功能的最基本单元,在前期设计工作中作为基础架构而存在。为了便于调试,可以添加诸如 CAN 通信等模块,以更好地验证硬件电路的功能特性。这样的设计策略能够在项目初期快速构建一个可测试的平台,通过逐步添加功能模块和进行调试,确保硬件电路的稳定性和可靠性,为后续的系统扩展和优化提供坚实的基础。同时,CAN 通信模块等的引入可以实现更高效的数据传输和系统监控,有助于及时发现和解决潜在的问题,提高整个系统的开发效率和质量。

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

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

相关文章

计算机操作员试题(公共科目)

计算机操作员试题(公共科目) ★★★ RZer整理 仅供参考 ★★★ 单项选择题 “人的本质”这一概念是人对自身的认识发展到一定阶段形成的,它力图从根本上回答“人是什么”或“什么是人”这一重大问题。马克思主义认为,人的本质( )。 A.永恒不变 B.可随主观意志而任意改变 C…

【Material-UI】Radio Group中的 Color 属性详解

文章目录 一、Radio Group 组件概述1. 组件介绍2. 基本用法 二、Color 属性详解1. Color 属性的作用2. 使用 Color 属性设置颜色3. 自定义颜色 三、Color 属性的实际应用场景1. 品牌一致性2. 状态指示3. 突出特定选项 四、注意事项1. 色彩对比2. 无障碍设计3. 主题定制 五、总结…

electron仿微信,点击子窗口以外的区域时、关闭子窗口

环境 windows:PC微信 我们可以看到,微信聊天界面点击右上角三个点时,会显示这个人的聊天信息窗口,我们把鼠标点击在其他位置时,这个聊天信息窗口就消失了,那么,这是怎么实现的呢,能…

Git的使用教程及常用语法02

四.将文件添加到仓库 创建仓库 git init查看仓库的状态 git status 添加到暂存区 git add提交 git commitgit status 可以查看当前仓库的状态信息,例如包含哪些分支,有哪些文件以及这些文件当前处在怎样的一个状态。 由于当前没有存储任何的东西&…

深度解析丨AI绘画StableDiffusion如何实现模特精准换装,以及如何将假人模特替换成真人模特!

大家好,我是灵魂画师向阳 今天给大家分享一下用AI绘画Stable Diffusion 进行模特换装!本篇教程主要运用StableDiffusion这个工具来进行操作,下面会通过几个小案例,给大家展示不同需求下,我们该如何使用StableDiffusio…

Linux查看jvm相关参数以及设置调优参数

1、查看jvm相关参数 1.1、查看Java进程命令 jcmd会显示出来对应的Java进程id 1.2、查看堆内存各个区域的使用大小、具体大小和GC次数以及耗时 jstat -gc 4036145jstat -gc 进程id 各个参数的含义。 如上图,4036145的进程,FGCT是0.452,FGC是4.平均每次full gc耗时0.11秒。 …

如何选择行为审计管理软件?值得收藏的三款行为审计管理软件

在选择行为审计管理软件时,企业需要考虑多个方面以确保所选软件能够满足其特定的需求和目标。以下是一些关键的选择标准,以及基于这些标准推荐的三款优秀软件。 选择行为审计管理软件的关键标准 1.功能全面性:软件应覆盖行为审计的各个方面&…

Godot《躲避小兵》实战之为游戏添加音效

现在,我们已经完成了游戏的所有功能。以下是一些剩余的步骤,为游戏加点“料”,改善游戏体验。 随意用你自己的想法扩展游戏玩法。 背景 默认的灰色背景不是很吸引人,那么我们就来改一下颜色。一种方法是使用 ColorRect节点。将…

JavaScript学习文档(6):什么是对象、对象使用、遍历对象、内置对象、术语解释

目录 一、什么是对象 1、对象是什么 二、对象使用 1、对象使用 2、对象有属性和方法组成 (1)对象属性(增删改查) (2)对象方法 三、遍历对象 1、遍历对象 2、渲染学生信息案例 四、内置对象 1、…

旅游行业怎么利用C#接口发送短信

旅游企业一般拥有众多的分支机构,同时各地分支机构又有众多下属分散在当地各区的旅游营业报名点,以前传统的解决方案是采用专线、MODEM拔号等方式,专线的成本很高,MODEM拔号更费时,且长途拔号互联成本在多点情况下费用…

scikit-learn特征抽取

为什么需要特征工程 数据和特征决定了机器学习的上限,而模型和算法只是逼近这个上限而已 什么是特征工程 特征工程是使用专业背景知识和技巧处理数据,使得特征能在机器学习算法上发挥更好的作用的过程 意义:会直接影响机器学习的效果 特征…

Type-C无线麦克风方案

在数字化浪潮的推动下,音频设备正经历着前所未有的变革。从传统的有线麦克风到如今的蓝牙无线麦克风,每一次技术的飞跃都极大地丰富了我们的音频体验。而今,随着Type-C接口的普及与技术的不断成熟,Type-C无线麦克风正悄然成为音频…

数据结构----红黑树

小编会一直更新数据结构相关方面的知识,使用的语言是Java,但是其中的逻辑和思路并不影响,如果感兴趣可以关注合集。 希望大家看完之后可以自己去手敲实现一遍,同时在最后我也列出一些基本和经典的题目,可以尝试做一下。…

DRF——Filter条件搜索模块

文章目录 条件搜索自定义Filter第三方Filter内置Filter 条件搜索 如果某个API需要传递一些条件进行搜索,其实就在是URL后面通过GET传参即可,例如: /api/users?age19&category12在drf中也有相应组件可以支持条件搜索。 自定义Filter …

学习2d直线拟合-2

参考文章 直线拟合算法(续:加权最小二乘)_加权拟合直线法-CSDN博客 对比了参考文中和opencv中的直线拟合权重,不知道理解的对不对,前者是权重平方,后者没有平方

迷雾大陆辅助:VMOS云手机助力升级装备系统秘籍!

在《迷雾大陆》的广阔世界中,装备的选择和获取对于每一位冒险者来说都是至关重要的。为了让玩家能够更轻松地管理装备并在冒险中获得更高的效率,VMOS云手机提供了专属定制版云手机,内置游戏安装包,不需要重新下载安装游戏。VMOS云…

【VectorNet】vectornet网络学习笔记

文章目录 前言(vectornet算法流程)(向量表示)(图构建)(子图构建)(全局图构建)(解码器: 轨迹预测)(辅助研究)(损失函数)(实验)(问题厘清) VectorNet Overview 前言 论文: https://arxiv.org/pdf/2005.04259代码: https://github.com/xk-huang/yet-another-vectornet年份: 2020.…

Hadoop联邦模式搭建

在Hadoop架构中提供了三类搭建方式,第一类是给测试或开发人员使用的伪分布式或单NN节点搭建方式,第二类是用来商用化并解决NN单点故障的HA搭建方式,第三类就是这里要说的联邦模式,它本身也是一种供给商用的模式,但是它…

【Apache Doris】周FAQ集锦:第 19 期

【Apache Doris】周FAQ集锦:第 19 期 SQL问题数据操作问题运维常见问题其它问题关于社区 欢迎查阅本周的 Apache Doris 社区 FAQ 栏目! 在这个栏目中,每周将筛选社区反馈的热门问题和话题,重点回答并进行深入探讨。旨在为广大用户…

openmediavault 存储安装

1、简介 openmediavault NAS存储,支持linux和windows文件共享(文件系统共享),有中文web界面,有filebrowser插件可以web界面管理、下载文件,有FTP插件支持ftp操作,有用户管理;插件丰富…