网站首页 > 技术教程 正文
自动关机电路图
在本文中,我们将向您展示如何构建锁存电源开关电路,也称为自动断电电路。您可以使用此电路自动关闭 ESP32、ESP8266、Arduino 或任何其他微控制器。
该电路允许您在微控制器不执行任何任务时完全切断电源。换句话说,一旦微控制器完成执行任务,它就会通过软件自行关闭。这是使电池在您的电子项目中持续更长时间的好方法。
概述
在继续本教程之前,这里是我们将要做什么的高级概述:
- 当您按下电路的按钮或使用任何其他组件关闭电路时,微控制器会受到电源驱动。因此,您的 ESP32、ESP8266 或 Arduino 开启。
- 您将 LATCH 引脚(在代码中设置)设置为 HIGH 以保持电路通电。
- 微控制器执行其任务。在我们的示例中,它什么也不做——它只是等待 10 秒。您可以修改代码以执行有用的任务。
- 将 LATCH 引脚设置为低电平,因此微控制器自动关机。
- 当 LATCH 引脚设置为 LOW 时,电源被切断。
自动关机与深度睡眠
自动断电电路完全切断电源。因此,当微控制器不执行任何任务时,没有功耗。
在深度睡眠模式下,功耗比活动模式低得多。但是,始终存在功耗,因为您的微控制器始终处于开机状态(有关 ESP8266 深度睡眠的介绍,您可以阅读以下文章:ESP8266 Deep Sleep with Arduino IDE)。
所需零件
要遵循本教程,您需要以下部分:
- 微控制器或开发板,例如:
- ESP32 开发板(阅读 ESP32 开发板评论)
- ESP8266 NodeMCU (阅读 ESP8266 板评论)
- Arduino UNO(阅读最佳 Arduino 入门套件)
- NDP6020P 晶体管 P 沟道 MOSFET
- 2N3904 晶体管 BJT NPN
- 电阻器:220K Ohm、2x 100K Ohm、10K Ohm 和 220 Ohm
- 2 个二极管(例如:1N5819)
- 开关/按钮
- 5V电源
以下电路图显示了锁存电源开关电路(自动断电电路)图。
右侧编号为 1、2 和 3 的端子应连接到您的微控制器板。
- 引脚 1 连接到 5V。
- 引脚 2可以连接到微控制器的任何数字引脚。在我们的示例中,我们将该引脚连接到 GPIO 5 / 数字 5。
- 引脚 3 连接到 GND。
自动关机电路的工作原理
1)当您按下开关或闭合电路时,有电到达2N3904晶体管的基极。因此,2N3904 被拉低,将 MOSFET 的栅极 (G) 拉至 GND。
2) P 沟道 MOSFET 在其栅极相对于源极为负时导通。当您按下按钮时,MOSFET 的栅极被拉至 GND,允许电流流向 VIN 引脚,这将为微控制器供电。只要 MOSFET 的栅极被拉至 GND,就会发生这种情况。
3)为了在释放按钮后保持 MOSFET 的栅极拉至 GND,我们通过微控制器的 GPIO 发送一个 HIGH 信号。当我们发送一个 HIGH 信号时,有功率到达晶体管的基极。
4) 因此,我们确保 MOSFET 的栅极被拉至 GND,电流流向 VIN 端子为我们的微控制器供电。
5)当我们想要关闭电路时,我们只需将GPIO设置为LOW即可。发生这种情况时,没有功率到达晶体管的基极,因此 MOSFET 不会让电流流向 VIN 引脚,因此没有功耗。
自动关机电路 - ESP32
如果您使用的是 ESP32,以下是电路接线方法。
自动关机电路 - ESP8266
这是ESP8266的图表。
自动关机电路 - Arduino
最后,这是将锁存电路连接到 Arduino 的方法。
上传代码
在继续本教程之前,您应该准备好您的 Arduino IDE。如果您尚未安装 ESP32 或 ESP8266,请按照以下教程之一在 Arduino IDE 上安装。如果您使用的是 Arduino,则无需安装其他任何东西。
- 在 Arduino IDE 中安装 ESP32 开发板:
- 视窗说明
- Mac 和 Linux 说明
- 在 Arduino IDE 中安装 ESP8266 开发板
/*********
Rui Santos
Complete project details at https://randomnerdtutorials.com
*********/
// Define power latch pin for ESP32 (GPIO 5) / ESP8266 (GPIO 5) / Arduino (Digital 5)
const int powerLatch = 5;
void setup() {
// Define pin as an OUTPUT
pinMode(powerLatch, OUTPUT);
// Keeps the circuit on
digitalWrite(powerLatch, HIGH);
// Waits for 10 seconds
delay(10000);
// Turns the power latch circuit off
digitalWrite(powerLatch, LOW);
}
void loop() {
}
查看原始代码
代码如何运作
让我们仔细看看代码是如何工作的,以及如何在项目中使用它。
我们首先定义电源锁存器引脚。我们正在使用通用输入输出接口 5,但您可以使用任何其他引脚。此 GPIO 连接到锁存电源电路引脚 2 端子。
const int powerLatch = 5;
在里面设置(),我们将电源锁存器引脚定义为输出。
pinMode(powerLatch, OUTPUT);
接下来,我们将电源锁存引脚设置为高的. 当我们将其设置为高时,我们确保有电源为微控制器供电。
digitalWrite(powerLatch, HIGH);
接下来,我们等待 10 秒。
delay(10000);
之后,我们将电源锁存器引脚设置为低的. 当它设置为低时,电源被切断,单片机关闭。
digitalWrite(powerLatch, LOW);
您应该在将电源锁存器引脚设置为之后添加要执行的任务高的并在将其设置为低的.
猜你喜欢
- 2025-05-09 Linux-ps进程命令你学会了吗?(linux ps -ef哪个是进程号)
- 2025-05-09 fdisk,Linux磁盘分区必学(linux磁盘分区使用什么命令)
- 2025-05-09 在索尼的帮助下 微软exFAT文件系统在Linux上的性能再次大幅提升
- 2025-05-09 Xshell中操作Linux的常用命令,你知道几个?
- 2025-05-09 deepin使用笔记——开机卡LOGO,无法正常关机的解决办法
- 2025-05-09 手机体验原生Linux——红米2刷PostmarketOS
- 2025-05-09 关闭 Ubuntu 中的关机/重启确认的小技巧
- 2025-05-09 腾讯云国际站:为什么腾讯云服务器自动关机?
- 2025-05-09 Linux基础02(linux基础知识)
- 2025-05-09 CentOS7.3 Linux系统中杀死进程的方法
你 发表评论:
欢迎- 最近发表
-
- linux日志文件的管理、备份及日志服务器的搭建
- Linux下挂载windows的共享目录操作方法
- Linux系统中的备份文件命令(linux系统中的备份文件命令有哪些)
- 麒麟KYLINOS|通过不同方法设置用户访问文件及目录权限
- 「Linux笔记」系统目录结构(linux目录的结构及含义)
- linux中修改归属权chown命令和chgrp命令
- 工作日报 2021.10.27 Android-SEAndroid权限问题指南
- Windows和Linux环境下,修改Ollama的模型默认保存路径
- 如何强制用户在 Linux 上下次登录时更改密码?
- 如何删除Linux文件夹中除某些扩展名之外的所有文件?
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)