找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 5929|回复: 33
打印 上一主题 下一主题
收起左侧

STC89C52RC单片机的P2口无法驱动继电模块

  [复制链接]
跳转到指定楼层
楼主
我想用STC89C52RC的P2口驱动高电平触发继电模块
继电模块里带NPN的三极管

可是一接上继电器

IO口的输出电压就被拉低到0.8V左右
请问是IO高电平输出能力不行么
请问是否把高电平触发继电器换成低电平之后再修改程序的就能解决?


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:213173 发表于 2020-4-25 17:04 | 只看该作者
在P2对应输出端口接一个1~3K上拉电阻即可。
回复

使用道具 举报

板凳
ID:202748 发表于 2020-4-25 18:08 | 只看该作者
继电器模块里驱动三极管的G极肯定有下拉电阻。(是为了稳定性考虑不会误动作)。你可以无视。运行单片机,在你程序设定需要继电器动作的时候,P2口会输出高电平,此时继电器就会动作。
回复

使用道具 举报

地板
ID:724218 发表于 2020-4-26 00:42 来自手机 | 只看该作者
wulin 发表于 2020-4-25 17:04
在P2对应输出端口接一个1~3K上拉电阻即可。

加了  还是不行
回复

使用道具 举报

5#
ID:724218 发表于 2020-4-26 00:44 来自手机 | 只看该作者
ysandi 发表于 2020-4-25 18:08
继电器模块里驱动三极管的G极肯定有下拉电阻。(是为了稳定性考虑不会误动作)。你可以无视。运行单片机, ...

就是它该触发的时候不会触发  我量了一下发现电压直接被拉低到1v
回复

使用道具 举报

6#
ID:219796 发表于 2020-4-26 07:58 来自手机 | 只看该作者
电源功率够么,不行再io输出位置再加个三极管
回复

使用道具 举报

7#
ID:524818 发表于 2020-4-26 08:27 | 只看该作者
是不是考虑把P2口设为强推挽模式?
回复

使用道具 举报

8#
ID:65956 发表于 2020-4-26 08:34 | 只看该作者
51单片机要IO驱动继电器方式的一般要用低电平驱动更稳定,且要用双三极管,即一个PNP+NPN方式,不然你就要用ULN2003这种去驱动
回复

使用道具 举报

9#
ID:213173 发表于 2020-4-26 08:56 | 只看该作者

高电平驱动继电器模块,IO口的输出电压就被拉低到0.8V左右是正常的,加了1~3K上拉电阻还是不行,是因为你的继电器模块没有接电源。
回复

使用道具 举报

10#
ID:724218 发表于 2020-4-26 10:07 | 只看该作者
wulin 发表于 2020-4-26 08:56
高电平驱动继电器模块,IO口的输出电压就被拉低到0.8V左右是正常的,加了1~3K上拉电阻还是不行,是因为你 ...

我直接买的成品继电器模块  接了5V的电源  还是不能驱动
回复

使用道具 举报

11#
ID:724218 发表于 2020-4-26 10:10 | 只看该作者
cphnkj188 发表于 2020-4-26 08:27
是不是考虑把P2口设为强推挽模式?

请问怎么设置啊  我直接在主函数里面加了
P2X0=0X00;
P2X1=0X05;
编译不过
回复

使用道具 举报

12#
ID:213173 发表于 2020-4-26 10:40 | 只看该作者
ToumaKazusa01 发表于 2020-4-26 10:07
我直接买的成品继电器模块  接了5V的电源  还是不能驱动

成品继电器模块有多种电源电压的,上照片。
回复

使用道具 举报

13#
ID:213173 发表于 2020-4-26 10:46 | 只看该作者
ToumaKazusa01 发表于 2020-4-26 10:10
请问怎么设置啊  我直接在主函数里面加了
P2X0=0X00;
P2X1=0X05;

STC89C52RC单片机IO口只有弱上拉、开漏、高阻3种工作类型,没有强推挽模式。
回复

使用道具 举报

14#
ID:724218 发表于 2020-4-26 11:07 | 只看该作者
ysandi 发表于 2020-4-25 18:08
继电器模块里驱动三极管的G极肯定有下拉电阻。(是为了稳定性考虑不会误动作)。你可以无视。运行单片机, ...

我看了看 基极有个1K的电阻  我把它去了都没法工作,
请问低电平触发的是不是就对IO输出能力没多大要求了
回复

使用道具 举报

15#
ID:738331 发表于 2020-4-26 11:19 | 只看该作者
有没有单片机工频耐压试验的仿真
回复

使用道具 举报

16#
ID:724218 发表于 2020-4-26 11:46 | 只看该作者
wulin 发表于 2020-4-26 10:46
STC89C52RC单片机IO口只有弱上拉、开漏、高阻3种工作类型,没有强推挽模式。

我看了看三极管是J3Y   8050
请问直接换成成品的低电平触发的继电器可以解决问题么


IMG_20200426_114337.jpg (4.43 MB, 下载次数: 42)

IMG_20200426_114337.jpg
回复

使用道具 举报

17#
ID:724218 发表于 2020-4-26 11:48 | 只看该作者
wulin 发表于 2020-4-26 10:40
成品继电器模块有多种电源电压的,上照片。

继电器的工作电压是5V  我接了电源的  P0口都能正常触发继电器
回复

使用道具 举报

18#
ID:724218 发表于 2020-4-26 12:29 | 只看该作者
wulin 发表于 2020-4-26 10:46
STC89C52RC单片机IO口只有弱上拉、开漏、高阻3种工作类型,没有强推挽模式。

我看了看是8050三极管 还有个光耦   是5V电源的继电器
请问换成低电平触发的继电器灌电流可以工作么

回复

使用道具 举报

19#
ID:724218 发表于 2020-4-26 12:56 | 只看该作者
wulin 发表于 2020-4-26 10:40
成品继电器模块有多种电源电压的,上照片。

我看了看  是5V电源的继电器模块  三极管是J3Y  还有个PC817的光耦
请问是不是换成8550的PNP三极管的低电平继电器模块  用低电平的灌电流触发就可以了
回复

使用道具 举报

20#
ID:578714 发表于 2020-4-26 14:00 | 只看该作者
上拉电阻换成200欧的
回复

使用道具 举报

21#
ID:578714 发表于 2020-4-26 14:00 | 只看该作者
还是不行的话,考虑使用二级放大
回复

使用道具 举报

22#
ID:724218 发表于 2020-4-26 19:12 | 只看该作者
houge123 发表于 2020-4-26 14:00
还是不行的话,考虑使用二级放大

直接买了两个低电平触发的 懒得弄了 家里又没有材料
回复

使用道具 举报

23#
ID:213173 发表于 2020-4-26 21:10 | 只看该作者
ToumaKazusa01 发表于 2020-4-26 12:29
我看了看是8050三极管 还有个光耦   是5V电源的继电器
请问换成低电平触发的继电器灌电流可以工作么

IN端输入高电平有效还是低电平有效从你的图片看不出来,但可以确定IO口是通过光耦隔离控制S8050驱动继电器的,楼主只要接通VCC和GND,再用导线把IN分别连VCC和GND看继电器动作来确定高电平有效还是低电平有效。与此相似的模块是高电平触发,IO口接1K上拉电阻直接连接模块IN,不需要接限流电阻。

回复

使用道具 举报

24#
ID:738987 发表于 2020-4-27 01:27 | 只看该作者
继电器直接VCC,另一端接一个三极管通过单片机控制三极管通断,就可以了
回复

使用道具 举报

25#
ID:724218 发表于 2020-4-27 10:06 | 只看该作者
wulin 发表于 2020-4-26 21:10
IN端输入高电平有效还是低电平有效从你的图片看不出来,但可以确定IO口是通过光耦隔离控制S8050驱动继电 ...

是高电平触发,P0口接上拉电阻后高电平可以触发这个模块,其他IO口就不行 应该是P123高电平输出能力不行, 我又买了两个低电平触发的,估计就能用了
回复

使用道具 举报

26#
ID:724218 发表于 2020-4-27 11:47 | 只看该作者
wulin 发表于 2020-4-26 21:10
IN端输入高电平有效还是低电平有效从你的图片看不出来,但可以确定IO口是通过光耦隔离控制S8050驱动继电 ...

P2.0输出高电平 接一个1K电阻到IN口之后  无法触发 应该就是P2高电平输出能力不行 没法导通三极管
估计换个低电平的模块就好了
回复

使用道具 举报

27#
ID:213173 发表于 2020-4-27 13:21 | 只看该作者
ToumaKazusa01 发表于 2020-4-27 11:47
P2.0输出高电平 接一个1K电阻到IN口之后  无法触发 应该就是P2高电平输出能力不行 没法导通三极管
估计 ...

你没有理解我上面的帖子最后一句“IO口接1K上拉电阻直接连接模块IN,不需要接限流电阻”。也就是P2.0分两路,一路接一个1K电阻到VCC,另一路直接连接模块IN端。
回复

使用道具 举报

28#
ID:360463 发表于 2020-4-27 13:52 | 只看该作者
加三极管或mos管

11.png (25.56 KB, 下载次数: 39)

加三极管或mos管

加三极管或mos管
回复

使用道具 举报

29#
ID:739063 发表于 2020-4-27 14:17 | 只看该作者
连接的问题 很简单
回复

使用道具 举报

30#
ID:724218 发表于 2020-4-27 19:17 | 只看该作者
wulin 发表于 2020-4-27 13:21
你没有理解我上面的帖子最后一句“IO口接1K上拉电阻直接连接模块IN,不需要接限流电阻”。也就是P2.0分两 ...

哦哦哦  明白了  我一会去试试
回复

使用道具 举报

31#
ID:723681 发表于 2020-4-27 22:01 | 只看该作者
IO口的驱动能力有限,平常只是给一个高低电平的信号,你想要驱动电机,需要加入对应阻值的上拉电阻
回复

使用道具 举报

32#
ID:327724 发表于 2020-4-27 22:42 | 只看该作者
驱动继电器得启动的一瞬间拉起来大电流,单片机有些IO输出能力不行,得用专门的信号继电器。
回复

使用道具 举报

33#
ID:739706 发表于 2020-4-27 23:10 | 只看该作者
外部电源加一个10k的上拉,硬上拉就可以解决。
回复

使用道具 举报

34#
ID:736132 发表于 2020-4-27 23:12 | 只看该作者
在P2对应输出端口接一个1-3K上拉电阻即可
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表