单片机与继电器的问题

2020-02-05 09:09发布

本帖最后由 onbluesun 于 2012-6-3 16:22 编辑

1.png (18.1 KB, 下载次数: 1) 下载附件 2012-6-3 16:12 上传
  1. #include<reg51.h>
  2. sbit l1=P2^0;
  3. void main()
  4. {
  5. l1=1;
  6. }
复制代码以上是单片机与继电器的接线图和单片机的程序。现在有个问题,接上电源,单片机开始运行,按理继电器应该会启动,但是有时候继电器会无法启动,没有听到“啪”的一声(继电器工作声音),那盏灯也没有亮,可我的单片机程序是让单片机一开机P2.0口就为高电平,那么继电器肯定要运行,不知道这是怎么回事。继电器用的12V的,和单片机共用一个电源,单片机通过电压转换电路将12V转为5V。

解决方法有了,就是在l1=1前面加一句l1=0代码如下:
  1. #include<reg51.h>
  2. sbit l1=P2^0;
  3. void main()
  4. {
  5. l1=0;
  6. l1=1;
  7. }
复制代码不过我确实不知道为什么要加一句l1=0?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
15条回答
huaxin
1楼-- · 2020-02-06 01:01
r2的4.7K电阻换小点, 几百欧姆就够了,防止三极管工作在放大区
onbluesun
2楼-- · 2020-02-06 04:27
huaxin 发表于 2012-6-3 20:30
r2的4.7K电阻换小点, 几百欧姆就够了,防止三极管工作在放大区

几百太小了吧
huaxin
3楼-- · 2020-02-06 08:48
不小啊, 直接接上都可以的啊, 你用万用表测下单片机的管脚是不是高电平,就知道问题出在哪里了
onbluesun
4楼-- · 2020-02-06 08:55
huaxin 发表于 2012-6-3 21:45
不小啊, 直接接上都可以的啊, 你用万用表测下单片机的管脚是不是高电平,就知道问题出在哪里了 ...

0.7V,不是高电平也不是低电平。。。
a13736925316
5楼-- · 2020-02-06 14:33
 精彩回答 2  元偷偷看……
tomtone
6楼-- · 2020-02-06 17:24

Image00004.jpg (98.59 KB, 下载次数: 0)

下载附件

2012-6-3 22:05 上传



如上图加个电阻试试,10K左右.
R2需要改小,改1K的话Q1基极电电流不到5ma,几百欧是可以的

一周热门 更多>