关于STM32项目面试题01:电源

news2024/11/18 7:44:33

博客的风格是:答案一定不能在问题的后面,要自己想、自己背;回答都是最精简、最精简、最精简,可能就几个字,你要自己自信的展开。

面试官01:说说你知道的开关电源的拓扑结构?

面试官02:给你一张 A4 纸,请你现场画一下 Buck 降压电路。

面试官03:请你再画一下 Boost 升压电路。

面试官04:好,我看你两个电路都画出来了,请你向我简单说一下两个电路的原理。

 面试官05:那你使用过这两种电路吗?是什么样的使用场景呢?

01:Buck 降压电源、Boost 升压电源、Buck-Boost 升压降压电源、反激电源。

02:看一遍,手搓一遍,直到记住。注意MOS 管的画法与方向。

你知道记住这个电路的方式有多简单吗?就是开关后面串联电感和电阻。

03:看一遍,手搓一遍,直到记住。你知道记住这个电路的方法有多简单吗?就是电源串联电感给电阻供电。

降压开关串联,升压开关并联。(你看这个升字和这个并字)

04:降压。开关闭合。开关断开。总(比划波形)。二极管作用。

升压。开关闭合。开关断开。二极管和电容的作用。

注意都是先说开关闭合。

Buck降压电路将输入电压降为一个比较低的电压输出。电路通过MOS管关闭给电感充电和负载供电,负载上的电压逐渐上升(手比划上升);开关断开,电感为负载供电(手比划下降),这样来输出一个较为平滑的输出电流波形。通过调节开关的开关频率,其实就是调节占空比,来控制电感充电、放电的时间,最终控制输出电压的大小。

Boost升压电路则是开关闭合给电感充电,负载和电容暂时被短路;开关断开电源和电感一起给负载供电,其中还包括一部分给电容充电,这样电源+电感电压达到升压的目的;当开关再次闭合的时候就由刚刚充电的电容对负载放电。

05:未使用升压,在STM32项目中使用降压电路将7~28V降为5V供继电器、智能串口屏、电机、蜂鸣器等使用,了解的芯片是MP1470、MP1484和MP1584,使用了MP1584。

面试官06:哦~~那你能介绍一下在板子中这款芯片你是怎么设计、布局周边电路来使用的吗?

面试官07:那你还记得你说的这个电路中一些重要器件的选型吗?以及你选型的参考标准。比如说你说到TVS管、大小滤波电容、自举电容、续流二极管、电感这些。

面试官08:我们刚刚一直有提到自举电路,我想问一下,你关于自举电容的理解和运用。

面试官09:既然一直都在说电源,你能向我们介绍一下你项目中的电源架构吗?

面试官10:既然你提到了LDO,这也是一个重点硬件模块, 你知道LDO的原理吗?可以画以下原理图吗?

06:7~28V接入→接口处理(TVS(浪涌和静电保护)、二极管(防反接)、大小滤波电容、0欧姆电阻);到输出这边则是自举电容电路、反馈电路和最重要的输出电路,输出电路上有电感、续流二极管、滤波电路。

07:TVS-SMBJ30CA,击穿电压在28~33V,高于电路的最大输入电压,避免误触发;二极管DSK34,实验室常用肖特基二极管;1nF小电容,就是普通的0603的小电容即可;22uF/35V的电解大电容-RVT1V220M0505

自举电容为普通的0.1uF的小电容,续流二极管还是DSK34,滤波是RVT0J221M0605的电解大电容(220uF/6.3V)搭配0.1uF小电容。电感是SWPA4030(4.7uH,2A),选择的感值比手册小,选值和很多因素相关,主要是负载,我觉得后续的使用中,我不会同时使用几个电机,几个屏幕,继电器,所以就选择了一个小电感值的电感。

上面所说输入和输出两个不同的电解电容,输入处的电解电容主要是符合一般的低频滤波要求,耐压也保留了合适的裕量;输出处的电容容值增大到220uF是因为负载有继电器、电机这样的感性负载,需要大电容吸收尖峰电压。

08:核心原理。电感放电,电容充电。给MOS1的驱动器电源。钳位驱动器电源。

自举电容最核心的原理:电容两端电压不能突变。首先是两端电压,是电容一边相当于另一边的电压,其次是不能突变,说明电容两端的电压变化必须需要一个大于0的时间。

降压芯片设有BST自举电容的引脚,电感放电,电容充电,并且电容充电走的芯片内部的MOS管2和二极管通路,由于有二极管的存在,这条通路也不影响电感放电。

当电感的能量泄放完之后,需要打开芯片内部的MOS1向电感充电,MOS管1有一个驱动器,驱动器的电源接在自举两端,自举电容刚好通过刚刚的充电达到上正下负的VCC,钳位驱动器电源,使符合驱动器开启的条件,当有信号时,驱动器就可以直接驱动MOS关闭,给电感充电。

(当电感能量泄放完之后,由于续流二极管的存在,芯片内部主要的的MOS管1的没有了回路可以说是悬浮在半空中,这时由于充好电电容两端的电位差将MOS1的驱动器电源电位差钳位在VCC,这样一旦有高电平,驱动器就可以立刻驱动MOS管1,这样又能继续给电感充电。)

电感回路导通,使驱动器下端电压上升,正是由于有自举电容的两端电压不能突变的存在,将驱动器上端电压抬高到VIN+VCC,导通才能持久。

在STM32项目中在MP1584的BST和SW引脚之间接了一个自举电容和电阻,电容是0.1uF,电阻是22Ω,之所以加上电阻是因为可以使自举电容的充点电曲线稍微平缓,更易于充放电。

09:

电源可以说是一个项目中最重要的部分,在设计电源之前心里就要对项目的整体功能、模块、功耗有宏观把控,最终的电源设计是:有两种供电方式,第一是由圆头的DC电源连接器接入7~28V的直流电源,通过上面讲述的DCDC降压芯片降成5V的系统电压,另一种供电方式就是USB直接接入5V的电源。

5V的系统电源分为3路,一路流向需要5V供电的器件中,另外两路就是分别在经过0欧姆电阻和滤波电路(RVT1A101M0505/100uF/10V)进入两个LDO芯片,一个是5V转4V的MIC29302,一个是5V转3.3V的AMS1117,其中4V的电压是专门供给项目的GPRS模块,3.3供给剩余不是5V的其他所有(单片机、数码管、温湿度传感器,触摸按键等)。

10:通过误差放大器调节PMOS开关的占空比。

原理图:

面试官11:那你设计LDO模块能向我们介绍介绍吗?

面试官12:你上面还提到了BUCK-Boos升降压电路,请你再给我们画一下电路原理图,并讲述原理。(但是没有使用过,也不会使用)

面试官13:你上面还提到反激电源,请你也画一下电路原理图和原理。(换个问法:我们一直都在聊直流升压、降压,那你有没有交流电源的设计或者其他?)

面试官14:刚刚我们一直在聊原理图方面的知识,原理图画好之后下一步必然就是画PCB嘛,请你讲述一下你画PCB的过程吧。

面试官15:那最后你实际打板了吗?你画的PCB板效果怎么样呢?你是怎么测试出来的呢?

11:输入输出滤波、电源指示灯、反馈电路、假负载(只有MIC29302有)。

LDO原理虽然有一点复杂,但是现在集成芯片实际使用起来却不复杂。MIC29302转4V的电路可以参考数据手册,除了有输入输出滤波、电指示灯还有反馈电路(注意反馈电路上的两颗电阻都建议选电阻精度为1%),还有手册中建议的470Ω的假负载,无论真负载在不在使用,输出电压必须有10mA的电流,保证输出电压的稳定,芯片不需要重启。

AMS1117吧转3.3V的电路也是参考数据手册,输入滤波,输出滤波,电源指示灯。

12:开关闭,电感充;开关断,电感放。调节开关占空比确定是升压还是降压。

你知道记住升降压电路的原理图有多简单吗?电感为负载唯一且灵活的电源。

13:精髓:MOS 管导通时给初级线圈储能, MOS 管断开时时,线圈将所储能量释放到次级线圈中。(其他想必不用我多说,你自己心里有数)

如果涉及到对这个电路的应用,你还需要知道:

  1. 全桥整流桥使用芯片MB10F
  2. 输入电容按照2~3uF/W,本项目输出为5V/2A,输入电容为33uF,耐压保留裕量为400V。
  3. RCD电路按照数据手册电阻150K,电容2.2uF,因为要吸收尖峰电压,二极管选择耐压700V的FR107。
  4. 输出二极管:SB10100,耐压100V耐得住反向电流,导通电流10A留得住大电流。
  5. 输出电容:容值和ESR。680uF/45mΩ-130mV,为进一步减小纹波可以放两颗电容,中间再加一颗4.7uH电感,构成π型网络,减小纹波到30mV。
  6. 反馈电路:电压基准芯片TL431,线性光耦PC8174A。
  7. PWM主芯片:HE500-15,有VBUS引脚,过流保护引脚,内部比较电压引脚,输出引脚,电源输入(单独在变压器上绕了一个线圈,经过二极管和电容变成直流电压为芯片为芯片供电),反馈电路。
  8. 变压器:源边匝数210,副边匝数10,辅助线圈匝数32,源边线径0.2mm,副边线径0.5mm*4,辅助线圈匝数0.1mm,骨架EE19,源边电感3.6mH。
  9. LAYOUT:主回路电流大,走线短且流畅,不能绕弯;电路隔离,地平面分开;芯片周边器件接近芯片,反馈部分远离干扰源。
  10. 交付厂家:标注同名端,三明治绕制。

我建议是背下来,而不是留个印象, 每次还过去看博客。

14:预布局。优化布局。3.3V中间,5V边缘。

预布局要做到心中有环,环要最小。环值得就是流大电流的主干道,如DCDC降压部分的输入回路和输出回路就是大电流,预布局将所有器件按原理图摆放好后,优先考虑上面所说的主干道,怎么紧凑怎么布局,在PCB中的紧凑一方面指的是回路布局紧凑,另一方面指的是相关的一片铺铜紧凑。

优化布局:所有器件尽量紧凑、对齐、但是也要调整间距方便后续引出电流和打孔。

以上是一个DCDC模块的PCB,在整个板子的电源处理上可以把使用的最多最杂的3.3V在板子背面引到板子中间,方面后面四通八达的供给各个模块,5V刚好一方面可以避开中间的3.3V,另一方面5V供给的继电器、电机、CAN接口也都在板子的边缘处。

15:实际打板,测试的结果也都达到要求。测试过程:

(1)上电准备

  1. 所有器件焊接完成,目测检查,是否漏焊,虚焊、焊反、短路等。
  2. 使用万用表欧姆档黑线接地,红色接到各个电源处检查一下有没有短路。
  3. 将3个0欧姆电阻去掉,可调电源调至12V输入进去。
  4. 空载,万用表电压档量一下是不是5V,断电。
  5. 焊接100Ω假负载

未完待续。

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

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

相关文章

Nacos下载和启动

Nacos是什么? 一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台 下载 https://github.com/alibaba/nacos/releases/tag/2.1.1启动 将下载好的Nacos解压缩,然后到bin目录下打开cmd 输入指令:startup.cmd -m standalone 出…

Apache DolphinScheduler 跨工作流复杂依赖功能详解

大家好,我叫高楚枫,来自阿里云 EMR 团队的开发工程师,同时也是 Apache DolphinScheduler 的 PMC 成员之一。 今天非常高兴能在这里和大家分享关于跨工作流复杂依赖的功能详解。 引言 在现代的数据处理和调度过程中,工作流的依赖…

STL_string 常用的用法

string里常用的函数与讲解使用 ↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑↑ (点击进入c关于string 的各个函数的全面讲解使用/英文版) Iterators(迭代器): begin与end: …

门磁模块详解(防盗感应开关 STM32)

目录 一、介绍 二、程序设计 main.c文件 gate_guard.h文件 gate_guard.c文件 三、实验效果 四、资料获取 项目分享 一、介绍 MC-38常闭式门磁开关是作为IO开关输入数字信号的,原理是合在一起信号是导通的 , 配合有线主机使用 不能单独使用。适用于非铁质&a…

RK3588镜像打包制作,替换文件系统

1.在开发板上安装async apt-get async 2.在另一台linux机器上执行命令拷贝文件系统 注意: 这里使用root权限或者账户 mkdir rootfs rsync -avx root192.168.1.3:/ rootfs 3.制作空镜像文件 先去开发板上验证自己的系统使用了多少空间,然后输入命令制…

grafana升级指南

已有grafana在使用,需要升级新版本的grafana,操作如下: 1.先把之前的grafana文件夹整个备份 2.在grafana官网下载OSS的zip版本,不要msi版本 3.在原来的grafana文件夹里,把新版本的文件夹都复制进来,但是…

CVE-2024-21096:MySQLDump提权漏洞分析

CVE-2024-21096是一个中等严重性的漏洞,它影响Oracle MySQL Server产品中的mysqldump组件。成功利用此漏洞的未认证攻击者可能对MySQL Server的数据进行未授权的更新、插入或删除操作,还可以读取MySQL Server可访问数据的一部分,并可能导致My…

代码随想录算法训练营第五十九天 | dijkstra(堆优化版)精讲

目录 dijkstra(堆优化版)精讲 思路 堆优化细节 方法一: 最小堆优化 dijkstra(堆优化版)精讲 题目链接:卡码网:47. 参加科学大会 文章讲解:代码随想录 小明是一位科学家&#x…

MySQL 事务的 ACID 特性与应用

MySQL事务的ACID特性与应用 数据库事务 是保障数据一致性和完整性的关键机制。事务不仅是并发控制的核心,更是数据恢复的基本单位。本文将带你深入了解MySQL中的事务概念、ACID特性以及如何在实际应用中正确处理事务。 1. 什么是事务? 事务&#xff0…

基于Vue的兴趣活动推荐APP的设计与实现_kaic

摘 要 近年来,随着互联网不断的普及与发展,生活也变的多姿多彩,每个人几乎都有属于自己的小小兴趣圈子,但人们的兴趣却不止一个,大多数人是没有时间为自己的兴趣“买单”的。为了解决我们在生活中对于各种兴趣活动的…

学习笔记缓存篇(一)

1、如何解决热key 1、本地缓存 采用本地缓存的优点在于简单,扩容方便。但是会带来一致性的问题。 2、离散热点key 做法:结合当前节点的ip或者机器的MAC地址去得出一个固定值拼接在key后面。访问时也是根据key,到后端固定的edis上。 优点&…

学习结构体的使用

对于结构体的创建,首先要创建一个结构体类型,像下面这样: 结构体对成员的访问,就是变量名.成员就可以了 当然对于结构体的声明还有一些特殊的声明 结构体的自引用 结构体的重命名

Linux 35.5 + JetPack v5.1.3@CUDA安装和版本切换

Linux 35.5 JetPack v5.1.3CUDA安装和版本切换 1. 源由2. 现象3. 分析3.1 看本质3.2 善动脑3.3 笔记回忆3.4 底层思考3.5 多版本 4. 版本切换5. 总结 1. 源由 最近遇到一些CUDA编程,以及编译链接过程出现一些版本不匹配的问题。 首先,申明下&#xff…

【网络安全的神秘世界】渗透测试基础

🌝博客主页:泥菩萨 💖专栏:Linux探索之旅 | 网络安全的神秘世界 | 专接本 | 每天学会一个渗透测试工具 渗透测试基础 基于功能去进行漏洞挖掘 1、编辑器漏洞 1.1 编辑器漏洞介绍 一般企业搭建网站可能采用了通用模板&#xff…

神经网络的公式推导与代码实现(论文复现)

神经网络的公式推导与代码实现(论文复现) 本文所涉及所有资源均在传知代码平台可获取 概述 本文将详细推导一个简单的神经网络模型的正向传播、反向传播、参数更新等过程,并将通过一个手写数字识别的例子,使用python手写和pytorch…

充电管理芯片

1.接口 typec SBU引脚(辅助通道) SBU引脚是Type-C接口母座中的辅助通道,用于支持附加的功能,如模拟音频和视频传输。通过SBU引脚,Type-C接口母座可以实现更广泛的连接应用,包括连接到外部显示器、音频设备…

【前端】main.js中app.vue中 render函数的作用及使用背景

vue.js中的main.js中的作用是将app组件挂载到页面中&#xff0c;其中app组件是汇总所有组件元素的组件。main.js的创建vue实例。 #认为的版本 import APP from ./App.vue;new Vue({el:#root,template:<App></App>,components:{App}, })#实际的版本 /* 整个项目的入…

基于imx6ull平台opencv的图像采集和显示屏LCD显示功能(带Qt界面)

目录 一、概述二、环境要求2.1 硬件环境2.2 软件环境三、开发流程3.1 编写测试3.2 验证功能一、概述 本文档是针对imx6ull平台opencv的图像采集和显示屏LCD显示功能,创建Qt工程,在工程里面通过点击按钮,实现opencv通过摄像头采集视频图像,将采集的视频图像送给显示屏LCD进…

docker-compose elasticsearch 集群搭建(用户登录+https访问)

文章目录 前言docker-compose elasticsearch 集群搭建(用户登录+https访问)1. 效果2. 制作elasticsearch + 分词器镜像2.1. 拉取elasticsearch:7.11.12.2. 制作特定版本镜像3. docker-compose elasticsearch 集群制作4. es账户密码初始化前言 如果您觉得有用的话,记得给博主点…

<Python>基于python使用PyQt6编写一个延迟退休计算器

前言 这两天关于延迟退休的话题比较火&#xff0c;官方也退出了延迟退休计算器的小程序&#xff0c;我们使用python来实现一个。 环境配置 系统&#xff1a;windows 平台&#xff1a;visual studio code 语言&#xff1a;python 库&#xff1a;pyqt6 程序依据 程序的算法依据…