完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
我正在做一个简单的项目,按下按钮,ESP-01S 通过扬声器播放消息,然后它需要关闭,因为它将由 AA 电池或 3.7v 锂电池供电。
我遇到的问题是我擅长编码但不擅长电子产品,所以我继续使用 ESP8266 音频库的示例,我很快设法让 ESP-01 通过软件 delta 播放存储在 LittleFS 上的 flac 音频文件-sigma DAC 仅使用一个 NPN 晶体管和一个 1K 电阻。建议使用 2n3409,但我发现 2n2222 会产生更高的音量。 这部分没问题,但在播放音频后我需要关闭一切以免耗尽电池。我尝试使用 ESP.deepSleep();,但我发现当 ESP 连接到晶体管时无法使用,在 deepSleep 期间引脚状态导致晶体管处于活动状态并且恒定电流通过扬声器。这也会使晶体管过热到可能烧毁它的程度,我没有让它达到这个程度。 如果可以将 8266 置于睡眠模式,我认为可能只是一个连接到 RST 和 GND 的按钮可能是正常的,但这似乎是不可能的。这也将使 3.3v 稳压器和 5v 升压器处于活动状态。 所以我不确定该怎么做,也许是 mosfet?通过按下按钮启用的东西,然后 GPIO 启用维护它所以当音频完成时我可以改变 GPIO 状态? |
|
相关推荐
1个回答
|
|
如果您想完全切断 ESP8266 和其他组件的电源,则需要使用一个开关电源或断电器。您可以使用一个 MOSFET 作为开关来控制电源的通断,这样您就可以通过代码来控制 MOSFET 的通断。
以下是如何使用 MOSFET 进行控制的简单示例: 1. 首先,将 MOSFET 的源极连接到电源的负极,将漏极连接到 ESP8266 和其他部件的负极。 2. 将 MOSFET 的栅极连接到 ESP8266 的 GPIO 引脚,这样您就可以通过代码来控制 MOSFET 的通断。 3. 在代码中使用 digitalWrite() 函数来控制 GPIO 引脚的电平,从而控制 MOSFET 的通断。例如: ``` digitalWrite(MOSFET_PIN, HIGH); // 打开电源 ``` ``` digitalWrite(MOSFET_PIN, LOW); // 关闭电源 ``` 4. 当您需要关闭 ESP8266 和其他部件时,只需将 MOSFET 的栅极拉低即可。如果您使用的是 ESP8266 的深度睡眠模式,则需要在进入深度睡眠之前关闭 MOSFET。 请注意,使用开关电源或断电器可能会产生电流峰值,因此在断电时需要一些保护措施,以避免损坏 ESP8266 和其他部件。建议使用保险丝或专用的断电器来确保电路的安全运行。 |
|
|
|
只有小组成员才能发言,加入小组>>
961 浏览 1 评论
552浏览 6评论
461浏览 5评论
有没有办法在不使用混杂模式的情况下实现Wifi驱动程序接收缓冲区访问中断呢?
446浏览 5评论
447浏览 4评论
417浏览 4评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-11-26 14:03 , Processed in 1.921649 second(s), Total 78, Slave 62 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号