标题: 51单片机驱动三极管继电器问题 [打印本页]
作者: sys_max 时间: 2025-5-19 21:42
标题: 51单片机驱动三极管继电器问题
背景想做一个通过 WIFI 控制 220v 开关灯,硬件开发小白一个(之前学习过一段时间51单片机),我主要是做软件开发的,心血来潮想学习一下硬件。
问题- S8050 (NPN) 三极管无法驱动继电器,但是可以驱动 LED,换成 S8550 (NPN)就可以了什么原因?
- 我需要哪些元器件?
- 还有就我这图是不是对?很多内容都问AI才知道要配那些器件

元器件清单
模块/元件 | 型号/参数 | 用途 |
稳压模块 | AMS1117-3.3 | 5V转3.3V核心元件 |
WIFI | ESP-01s | 联网 |
继电器 | JQC-3FF-S | 通断220 |
续流二极管 | 1N47001 | 防止反灌,保护电路 |
-
接线图.jpg
(145.89 KB, 下载次数: 0)
接线图
作者: shenqiwei 时间: 2025-5-20 03:20
二极管怎么不告诉我们?
作者: wufa1986 时间: 2025-5-20 08:00
你的接法是错误的
作者: sys_max 时间: 2025-5-20 08:36
二级管 1N47001
作者: sys_max 时间: 2025-5-20 09:52
具体哪里有问题,还望大佬提点一番
作者: lxh0508 时间: 2025-5-20 09:56
以你电路没有问题的情况下看,51单片机的拉电流输出能力太弱,NPN三极管没有工作在饱和区,但是灌电流能力可以,PNP能工作在饱和区。所以51单片机要驱动NPN三极管得加一个强上拉电阻
作者: WL0123 时间: 2025-5-20 10:12
IO口高电平驱动S8050需要在IO口接1~3K上拉电阻。否则高电平驱动能力不够。
作者: dj3365191 时间: 2025-5-20 10:41
S8550是PNP型三极管,你要把继电器接到S8550的集电极回路里
作者: cy009 时间: 2025-5-20 11:21
续流二极管1N47001,是不是写错了?应该是1N4007或1N4001吧
作者: sys_max 时间: 2025-5-20 12:27
具体哪里有问题,麻烦大佬指点一二
作者: sys_max 时间: 2025-5-20 15:34
是1N4007,不好意思写错了
作者: sys_max 时间: 2025-5-20 15:36
S8550 这个可以驱动,S8050 驱动不了
作者: sys_max 时间: 2025-5-20 15:37
使用 S8050时,基极加的就是1.2kΩ电阻也是驱动不了,但把继电器换LED就可以
作者: sys_max 时间: 2025-5-20 15:44
有加电阻1.2kΩ,是不是要换个小点电阻,其实我把电阻拔了试也是驱动不了
作者: 太阳雨ZW 时间: 2025-5-20 16:50
标题: RE: 51单片机驱动NPN三极管继电器问题
驱动NPN三级管继电器图示
-
2345截图20250520164419.png
(38.77 KB, 下载次数: 0)
作者: rundstedt 时间: 2025-5-20 19:21
明显是NPN驱动电路你却用了PNP管子。
作者: sys_max 时间: 2025-5-20 20:34
可以了大佬,这么神奇,感谢大佬。问题出在那个电阻哪里,我原来直接串在p1.0输出哪里的,现在改成一头在p1.0,一头在5v哪里就可以了,为啥要这样接
作者: sys_max 时间: 2025-5-20 20:35
是的,我是误打误撞用PNP可以,用NPN不行才来问问各位大佬
作者: sys_max 时间: 2025-5-20 20:43
经过测试出现个新问题,上电一瞬间继电器就吸合了
作者: dfvgt 时间: 2025-5-20 21:45
### 问题1解答 - **原因分析**:S8050和S8550虽然都是三极管,但参数有差异。S8050是NPN型,S8550是PNP型 。驱动继电器需要一定的驱动电流,S8050可能因为电流放大倍数β不够大,或者在当前电路参数下无法提供继电器吸合所需的足够基极电流,导致无法驱动继电器;而驱动LED所需电流相对较小,S8050能满足。S8550可能在当前电路参数下,其电流放大能力等特性能够提供继电器吸合的基极电流,所以可以驱动继电器。 ### 问题2解答 - **所需元器件**: - **主控相关**:除已列的ESP - 01s用于联网外,若想进行逻辑控制,还需单片机(之前学过51单片机可考虑使用,或其他如STM32等 ),以及配套的晶振、复位电路相关元件(如电容、电阻 ) 。 - **电源相关**:除AMS1117 - 3.3稳压模块外,还需要电源输入接口(如DC插座 )、滤波电容(如电解电容、瓷片电容 ) ,用于稳定电源。 - **驱动相关**:已列的继电器JQC - 3FF - S及续流二极管1N47001,还需要三极管(如能正常驱动继电器的S8550等 )及其基极电阻等,用于控制继电器的通断。 - **负载接口相关**:用于连接220V灯的接线端子等。 ### 问题3解答 - **因未提供具体电路图,无法直接判断图是否正确** 。但从元器件清单看,整体方向合理。不过在实际电路搭建时,要注意各元件的连接方式、引脚定义等。比如ESP - 01s与单片机的通信接口连接、继电器控制电路中三极管基极电阻取值(要保证三极管工作在合适状态 )、电源电路的布线和滤波等。
作者: sys_max 时间: 2025-5-20 22:09
哈哈哈,这个回答很完美,但是没解决我的问题
作者: xiaobendan001 时间: 2025-5-21 07:38
这种电路就是这个问题,即使程序中复位后立即拉低该脚,也会在复位期间吸合一下。
即便是有推挽能力甚至是复位期间是高阻态的型号,也一样。要解决问题,就要用PNP的,但是继电器只能用5V的,如果不行,就得用PNP+NPN,两个三极管。
或者换成带推挽输出的型号,使用NPN,然后在该引脚使用下拉电阻,吃掉芯片复位时输出的弱上拉电流。
当然复位期间是高阻态的,可以用NPN,或者比如ULN2003这种达林顿。
作者: sys_max 时间: 2025-5-21 08:37
应该没问题,是代码问题,默认上电输出高电平
作者: 太阳雨ZW 时间: 2025-5-21 09:58
初始化时置P1.0为低电平,需要继电器吸合时置P1.0高电平。
作者: Y_G_G 时间: 2025-5-21 10:44
他这个电路是没有问题的
上电吸合的问题,你要看单片机的规格书,默认的上电电平,如果要更改就要外加电路,或者更改驱动电路
作者: sys_max 时间: 2025-5-21 12:09
是的确定是代码问题,电路图没问题
作者: sys_max 时间: 2025-5-21 12:23
是的电路图没问题,代码有问题。
不过有个疑问就是,电阻一头接p1.o,一头接5v+。
是不是因为IO 口驱动能力较弱电流不够,这里是不是叫上拉电阻?
作者: sys_max 时间: 2025-5-21 14:31
感谢解答,已解决,问题出在代码上面,默认高电平
作者: gditbbk 时间: 2025-5-21 14:44
接法不太对哦
作者: xiaobendan001 时间: 2025-5-21 19:09
上电瞬间的跳动,对于指示灯什么的,没问题
对于其他的要研究一下
作者: kkkk66 时间: 2025-5-21 19:23
二极管直接这样接会爆的
作者: keemee 时间: 2025-5-22 05:23
电阻1.2K太小了,再说了,逻辑0时8050不能导通,逻辑1时8050导通的一瞬间,就把电平拉低成0,最后还是不通,必须换成8550,接成低电平导通
作者: sys_max 时间: 2025-5-22 13:59
你说的没错换成8550低电平导通是可以的(测试过)。
“逻辑0时8050不能导通,逻辑1时8050导通的一瞬间,就把电平拉低成0,最后还是不通”,
这个你咋知道的,串联电子就是这个问题,万用表测电压只能测出来一次,大概是0.657v,再测就是电阻来回跳,没有电压了。
作者: sys_max 时间: 2025-5-22 14:00
好像没有爆😂😂,可以用不知为啥
作者: sys_max 时间: 2025-5-23 09:14
经验过实验,就像你说的复位后立即拉低该脚(P1.0输出低电平)还是瞬间吸合一下。原来代码是P.0默认高电平,我是以为是代码问题改了还是存在该问题,所以结论只能用PNP了,还有个方法不知道可行不,还没测试就是P1.0 接一个100uf 电容来吸收第一次的电压
- IO口 ──电阻R ──电容C ──8050基极B
- │
- └──地GND
-
复制代码
欢迎光临 (http://www.51hei.com/bbs/) |
Powered by Discuz! X3.1 |