20个经典巧妙电路合集
1、防反接保护(二极管)
在实际电子设计中,防反接保护电路非常重要,不要觉得自己肯定不会接错,实际上无论多么小心,还是会犯错误......

最简单的就是利用二极管了,利用二极管的单向导电性,反接的时候电路不通,但这里有个无法接受的点,就是二极管具有正向压降,输出端电压会有相应的下降,比如我们输入电压是5V,内部的电路还要用到5V,这样就有难度了,如果对电压不敏感的,比如后级电路都要通过DCDC降压,可以用肖特基二极管,压降会小一点。还有一种是使用整流桥,即使极性接反也还能工作,缺点就是有两个二极管的压降。
2、防反接保护(PMOS)
上面介绍了利用二极管防反接的办法,但是压降是痛点,那么有没有什么办法可以去掉这个压降呢,PMOS来了!
我们知道,PMOS在完全导通后,导通电阻是很小的,常规的几百毫欧,有一些几十毫欧, 我们这里在GS之间加了一个齐纳二极管防止输入电压超过MOS的Vgs,Vgs额定值为20V,我们这里一般用10V的就能满足了,具体根据MOS的实际特性进行齐纳二极管的选择。

原理分析:当输入端加正向电压之后,比如+5V,D端电压为5V,由于MOS管体二极管的存在,S端的电压为4.3V,S端电压减G端电压大于开启电压,PMOS导通后,寄生二极管短路,不再起作用; 电压反接后,G端电压大于S端电压,不导通,实现了防反接的功能。
详细的分析可以参考这篇文章:

USB外接电源与锂电池自动切换电路设计,你GET到精髓了吗?
电路倒是简洁,但这个电路有个问题,电路会倒流。假设右侧的负载是一个电池,电压为Vb,当直流输入突然断开时,Q1的Vgs满足MOS的导通条件,PMOS就会导通,电流从右侧往左侧倒流,就可能引发一些未知的故障。
虽然二极管没有反向电流(严格意义上有漏电流),但是这个有反向电流,如果负载有大容量电容或者是电池, 输入端关闭时,电流会从右往左从负载端流出。当然,简单的电路场合用这个电路也没问题。
3、直流浪涌电流抑制开关
此电路可以解决负载中有大容量电容,电源端出现巨大浪涌电流的问题,启动时缓慢升高电压以抑制上电时的浪涌电流。
电压升高的时间由图中的C1与R6决定,值增大,缓启动的时间变长,当然,也可以按照第二点的方法,在GS间加入齐纳二极管。

详细分析,请参考下面文章。

精准电流走向分析,带软开启功能的MOS管电源开关电路!
如果不需要开关,可以去掉三极管部分即可,只做缓启动功能。
4、背靠背防倒灌
像第二点中的防反接保护电路中说了,会有出现倒流的风险,特别是负载端是电池或者有大容量电容时,或者是电脑的USB给一些调试的同时外部还有电源,则会流向Vin测, 进而可能引发一系列的故障,那我们有没有办法防止倒灌呢?


我们看上面这个电路,比上面的电路多了一个MOS,两个MOS背靠背连接起来,当Control端ON/OFF为高电平时,三极管Q9线导通,Q3跟Q4的栅极都被拉低到0V,Q3通过体二极管,符合条件先导通,接着Q4,S端电压大于G端电压,也符合导通条件,导通,负载端得到Vin电压。
当Control端为低电平时,三极管Q9断开,Q3与Q4不导通,完全关断,并且Q3与Q4的体二极管是反向串联的,所以不论哪个方向,都是不通的,达到防倒灌的效果。
这个电路的缺点就是还需要一个IO来控制,略显麻烦。
5、双三极管镜像电路防倒灌(理想二极管)

电路仿真结果:

看着像镜像,其实又不是,这个电路是怎么工作的?
左侧Q6三极管,Vb = Vin - 0.65,右侧Q7三极管是否导通,由Vb与Vout决定,Vb > Vout - 0.65,Q7关闭。
上述关系演变成,Vin - 0.65 > Vout - 0.65,则晶体管 Q7 关闭;
如果 Vin > Vout,晶体管 Q7 截止;
当Vin输入一定电压,Q6饱和导通,Q7截止;MOS管栅极通过电阻接地,导通;
如果Vin被突然关闭,Vb不再受制于输入电压,此时,Vb = Vout -0.65,Q7导通,MOS管G端电压拉高,MOS管关闭,达到防止回流的效果。
Vin > Vout,MOS打开,Vout≈Vin,理想二极管;
Vin < Vout,MOS关闭,防止回流。
该电路的优点,防反接,输出基本不损失电压,不需要额外控制信号,可以防止电流回流。
该电路在Seeed Studio的板子上得到了应用,大家可以看一下,完整原理图有兴趣的可以找老宇哥拿。

以上电路有什么Bug,请大家留言区留言评论交流!
相关文章:
20个经典巧妙电路合集
1、防反接保护(二极管) 在实际电子设计中,防反接保护电路非常重要,不要觉得自己肯定不会接错,实际上无论多么小心,还是会犯错误...... 最简单的就是利用二极管了,利用二极管的单向导电性&#…...
2023全国大学生数学建模ABCDE选题建议,思路模型,小白要怎么选?难度怎么样
首先最重要的,难度C<B<A,D、E题推荐选E题 大家可以查看我们的视频讲解,在这里:【2023全国大学生数学建模竞赛选题建议,难度分析,小白应该怎么选】 https://b23.tv/S6O26uc 选题建议视频播放b23.t…...
【力扣每日一题】2023.9.5 从两个数字数组里生成最小数字
目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目给我们两个数字数组,要我们用这两个数组里的元素组成一个数字,这个数字里需要同时拥有两个数组里的至少一个元…...
跳出Lambda表达式forEach()循环解决思路
背景 在一次需求开发时,发现使用Lambda的forEach()跳不出循环。如下示例代码,想在遍历满足条件时跳出循环。 public static void main(String[] args) {List<Integer> list Arrays.asList(1, 4, 5, 7, 9, 11);list.forEach(e -> {if (e % 2 …...
2023年度AWS SAP直冲云霄训练营学习分享
AWS在公有云市场一直处于行业领先地位,其培训认证体系也是非常的完善的。而且经常在国内组织一些技术论坛,技术分享,公开课,训练营等技术活动。 AWS训练营适合希望学习和考取AWS助理级架构师/专家级架构师(AWS SAA/AW…...
2023高教社杯 国赛数学建模E题思路 - 黄河水沙监测数据分析
1 赛题 E 题 黄河水沙监测数据分析 黄河是中华民族的母亲河。研究黄河水沙通量的变化规律对沿黄流域的环境治理、气候变 化和人民生活的影响, 以及对优化黄河流域水资源分配、协调人地关系、调水调沙、防洪减灾 等方面都具有重要的理论指导意义。 附件 1 给出了位…...
06_快速入门案例实战之电商网站商品管理:集群健康检查,文档CRUD
document数据格式电商网站商品管理案例:背景介绍简单的集群管理商品的CRUD操作(document CRUD (3) 集群的管理 1.快速检查集群的健康状态: cat api 可以查看es中各种各样的数据 GET /_cat/health?v epoch timestamp cluster status node…...
机车整备场数字孪生 | 图扑智慧铁路
机车整备场是铁路运输系统中的重要组成部分,它承担着机车的维修、保养和整备工作,对保障铁路运输的运维和安全起着至关重要的作用。 随着铁路运输的发展、机车技术的不断进步,以及数字化转型的不断推进,数字孪生技术在机车整备场…...
Fair|Fur —— Geometry Nodes
目录 Groom Blend Groom Fetch Groom Pack Groom Unpack Groom Switch Guide Advect Guide Collide With VDB Guide Deform Guide Draw Guide Groom Guide Group Guid Grow to Surface Guide Initialize Guide Mask Guide Partition Guide Process Guide Skin…...
java八股文面试[设计模式]——行为型模式
目录 策略模式 观察者模式 责任链模式 模板方法模式 状态模式 行为型模式关注的是各个类之间的相互作用,将职责划分清楚,使得我们的代码更加地清晰。 策略模式 策略模式太常用了 下面设计的场景是,我们需要画一个图形,可选…...
【送书活动】网络安全(黑客)自学
前言 「作者主页」:雪碧有白泡泡 「个人网站」:雪碧的个人网站 「推荐专栏」: ★java一站式服务 ★ ★ React从入门到精通★ ★前端炫酷代码分享 ★ ★ 从0到英雄,vue成神之路★ ★ uniapp-从构建到提升★ ★ 从0到英雄ÿ…...
如何让数据成为企业的生产力?
为什么有的企业投入大量的人力、物力、财力做数字化转型建设最终做了个寂寞!企业领导没看到数字化的任何价值! 如果要问企业数字化转型建设最核心的价值体现是什么,大部分人都会说是:数据! 然而,不同的人…...
监控 -- linux中的一些系统性能状态指令、Prometheus
目录 监控查看性能相关命令Prometheus1、安装和配置2、将 NFS服务器和LB服务器作为exporter采集数据3、在prometheus server里添加安装exporter程序的服务器 grafana出图工具 监控 监控的目的是获取数据,通过数据分析了解机器是否正常运行 查看性能相关命令 查看c…...
跳槽面试:如何转换工作场所而不失去优势
🌷🍁 博主猫头虎 带您 Go to New World.✨🍁 🦄 博客首页——猫头虎的博客🎐 🐳《面试题大全专栏》 文章图文并茂🦕生动形象🦖简单易学!欢迎大家来踩踩~🌺 &a…...
TINA如何导入spice模型
本文介绍如何使用TINA仿真运算放大器电路。TINA是TI公司自己的spice仿真软件,各个大厂为了更好的让客户使用自己的器件,都纷纷推出自己的仿真软件,ADI也有类似的软件,有机会我们介绍,这期我们主要简单介绍下如何使用TI…...
C. MEX Repetition Pinely Round 2 (Div. 1 + Div. 2)
Problem - C - Codeforces 题目大意:有一个长度为n的数组,数组中每个数字互不相同,范围都是0到n,每次操作将每一个数字从左到右依次变成当前数组的MEX,问k次操作后的数组 1<n<1e5;1<k<1e9 思…...
C++ 运算符
一键三连支持一下吧 C 运算符 运算符是一种告诉编译器执行特定的数学或逻辑操作的符号。C 内置了丰富的运算符,并提供了以下类型的运算符: 算术运算符关系运算符逻辑运算符位运算符赋值运算符杂项运算符 本章将逐一介绍算术运算符、关系运算符、逻辑…...
数据结构day07(栈和队列)
今日任务 链式队列: head.h #ifndef __HEAD_H__ #define __HEAD_H__#include <stdio.h> #include <stdlib.h>typedef int datatype; typedef struct link_list{datatype data;struct link_list* next; }link,*linkp; typedef struct circulate_line_t…...
八、Linux中的用户与文件权限
1、普通用户与特权用户 (1)在Linux中,和windows中一样。用户分为普通用户和特权用户。 特权用户:拥有系统管理的绝对权限。普通用户:普通用户的权限受到限制,只拥有基本的权限,某些操作没有权限。 (2)Linux中的特权…...
岛屿数量 -- 二维矩阵的dfs算法
岛屿数量 又被称为 FloodFill 算法 class NumIslands:"""floodFill 算法https://leetcode.cn/problems/number-of-islands/"""def solution(self, grid: List[List[str]]) -> int:res 0m, n len(grid), len(grid[0])for i in range(m):for…...
stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
【Linux】C语言执行shell指令
在C语言中执行Shell指令 在C语言中,有几种方法可以执行Shell指令: 1. 使用system()函数 这是最简单的方法,包含在stdlib.h头文件中: #include <stdlib.h>int main() {system("ls -l"); // 执行ls -l命令retu…...
AtCoder 第409场初级竞赛 A~E题解
A Conflict 【题目链接】 原题链接:A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串,只有在同时为 o 时输出 Yes 并结束程序,否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...
DAY 47
三、通道注意力 3.1 通道注意力的定义 # 新增:通道注意力模块(SE模块) class ChannelAttention(nn.Module):"""通道注意力模块(Squeeze-and-Excitation)"""def __init__(self, in_channels, reduction_rat…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
Module Federation 和 Native Federation 的比较
前言 Module Federation 是 Webpack 5 引入的微前端架构方案,允许不同独立构建的应用在运行时动态共享模块。 Native Federation 是 Angular 官方基于 Module Federation 理念实现的专为 Angular 优化的微前端方案。 概念解析 Module Federation (模块联邦) Modul…...
C# SqlSugar:依赖注入与仓储模式实践
C# SqlSugar:依赖注入与仓储模式实践 在 C# 的应用开发中,数据库操作是必不可少的环节。为了让数据访问层更加简洁、高效且易于维护,许多开发者会选择成熟的 ORM(对象关系映射)框架,SqlSugar 就是其中备受…...
【C++从零实现Json-Rpc框架】第六弹 —— 服务端模块划分
一、项目背景回顾 前五弹完成了Json-Rpc协议解析、请求处理、客户端调用等基础模块搭建。 本弹重点聚焦于服务端的模块划分与架构设计,提升代码结构的可维护性与扩展性。 二、服务端模块设计目标 高内聚低耦合:各模块职责清晰,便于独立开发…...
Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)
目录 一、👋🏻前言 二、😈sinx波动的基本原理 三、😈波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、🌊波动优化…...
