标题: 单片机驱动继电器 继电器驱动电铃的代码怎么写? [打印本页]

作者: QIANDUPDUO    时间: 2024-3-31 15:54
标题: 单片机驱动继电器 继电器驱动电铃的代码怎么写?
用52单片机的P2.0口去驱动继电器,然后用继电器去控制电铃
这部分代码不知道怎么写  求助大家

·······.png (43.91 KB, 下载次数: 52)

运行时正常显示 但是电铃不响

运行时正常显示  但是电铃不响

作者: linwanxiang    时间: 2024-3-31 17:33
不了解电铃,IO直接输出高低电平就可以了,如果需要PWM输出,IO口就输出PWM就可以。
作者: QIANDUPDUO    时间: 2024-3-31 17:55
linwanxiang 发表于 2024-3-31 17:33
不了解电铃,IO直接输出高低电平就可以了,如果需要PWM输出,IO口就输出PWM就可以。

之前做的时候是直接在这个IO口接蜂鸣器,是可以正常响铃。但是接了继电器后,不太了解继电器,代码不知道是否要进行修改、怎么修改
作者: cyf666    时间: 2024-3-31 21:20
仿真是理想电路,蜂鸣器应该是有源的,p2.0输出高电平控制继电器吸合供电就可以了
作者: cyf666    时间: 2024-3-31 21:23
sbit BUZ=P2^0
BUZ=1;
作者: xiaobendan001    时间: 2024-4-1 07:09
标准的51,这个驱动电路是不能用的,如果新的型号可以把那个IO设置推挽输出,这个是可以的。
之前我推荐这个驱动时忘记这个问题了。因为很久没有用AT89C51,实际上我只在多年前用过2051,后来就改成了AVR的,再后来就是STC的。
不知道仿真系统是不是支持推挽输出的IO,所以最好是在NPN前边增加一个PNP,这样程序也不需要改动。如果能推挽输出,就需要把逻辑反一下,如5楼。输出高电平时,继电器吸合。
作者: xiaobendan001    时间: 2024-4-1 07:21


作者: Hephaestus    时间: 2024-4-1 08:09
xiaobendan001 发表于 2024-4-1 07:09
标准的51,这个驱动电路是不能用的,如果新的型号可以把那个IO设置推挽输出,这个是可以的。
之前我推荐这 ...

并不是不能用,只要能忍上电后继电器短时导通就行。

而且不少应用场合,上电后蜂鸣器短时响一下不但不是bug,反而是个feature,证明蜂鸣器没坏。
作者: xiaobendan001    时间: 2024-4-1 08:18
Hephaestus 发表于 2024-4-1 08:09
并不是不能用,只要能忍上电后继电器短时导通就行。

而且不少应用场合,上电后蜂鸣器短时响一下不但不 ...

两个3K 串联,并且有一个是并联在发射结上面。这种没有推挽模式时,其高电平是无法让三极管导通的。
作者: yxtao    时间: 2024-4-1 08:26
电铃那侧这么没看到有供电?是不是接错了?
作者: QIANDUPDUO    时间: 2024-4-1 09:59
yxtao 发表于 2024-4-1 08:26
电铃那侧这么没看到有供电?是不是接错了?

噢是  这块接错了,没接电源
作者: QIANDUPDUO    时间: 2024-4-1 10:06
xiaobendan001 发表于 2024-4-1 07:21

添加了一个PNP,代码中设置电铃会响一分钟,但是仿真的时候继电器的开关一直在跳动,不是闭合,电铃没有什么声音,这是什么原因呢

··········.png (33.49 KB, 下载次数: 55)

改过的原理图在这

改过的原理图在这

作者: QIANDUPDUO    时间: 2024-4-2 19:27
cyf666 发表于 2024-3-31 21:23
sbit BUZ=P2^0
BUZ=1;

好嘞谢谢




欢迎光临 (http://www.51hei.com/bbs/) Powered by Discuz! X3.1