【51单片机系列】继电器使用

文章来源:《零起点学Proteus单片机仿真技术》。

本文是关于继电器使用相关内容。

继电器广泛应用在工业控制中,通过继电器对其他大电流的电器进行控制。

继电器控制原理图如下。继电器部分包括控制线圈和3个引脚,A引脚接电源,B引脚是常开节点,C引脚是常闭节点。继电器没有通电时,常闭节点C构成通路,灯泡2点亮;继电器通电时,线圈吸合,常开节点B闭合,常闭节点C打开,灯泡1点亮,灯泡2关闭。

【51单片机系列】继电器使用_第1张图片

由于继电器通电的电流很大,不能用单片机直接控制,需要用晶体管驱动,与控制蜂鸣器相同,用晶体管做开关电路,用单片机控制晶体管的基极控制晶体管的导通和截止,从而控制继电器的通电和关闭。

为搞清楚继电器的工作原理,先用继电器构成一个控制电路,用开关控制继电器。原理图如下所示:

【51单片机系列】继电器使用_第2张图片

需要注意:控制电路的电压值必须配对。即供电与元件的电压值必须一致,否则就会出问题,要么不能驱动(电压太低),要么是电器烧毁(电压太高)。

设置继电器的电压值,由12V改成5V,以符合VCC的电压。电池和灯泡的电压都改成250V。这样,就有两种电压的电路,继电器工作在5V电压,灯泡则工作在250V电压。开关控制继电器,继电器线圈吸合会控制250V的电路导通,使灯泡点亮。

下面,接上单片机,用单片机控制继电器,用继电器控制灯泡。在原来开关的位置,换上NPN晶体管,再用单片机的P0.0引脚控制晶体管的基极,从而控制灯泡电路的导通与关闭。要注意,连接晶体管的电阻值要改为500Ω,否则电流太小,不能驱动晶体管导通。proteus设计原理图如下:

【51单片机系列】继电器使用_第3张图片

另外还需要加上两个按钮,用以控制继电器的导通和截止,在P3.2和P3.3引脚分别接一个按钮。

软件设计,当P0.0引脚为高电平时,NPN晶体管导通,继电器导通,灯泡点亮。

/*
	实现功能:继电器使用,单片机引脚P0.0通过晶体管控制继电器,两个按键(连接到P3.2和P3.3)控制继电器的导通与关闭
	
	[2024-01-16] zoya
*/

#include 

sbit LIGHT_ON=P3^2;
sbit LIGHT_OFF=P3^3;
sbit SWITCH=P0^0;

// 延时函数
void delay(unsigned int i)
{
	unsigned char j;
	for(;i>0;i--)
	{
		for(j=0;j<125;j++);
	}
}
void main()
{
	SWITCH=0;
	while(1)
	{
		// 开灯
		if(LIGHT_ON==0)
		{
			delay(10);
			if(LIGHT_ON==0)
			{
				SWITCH=1;
			}
			while(!LIGHT_ON);
		}
		
		// 关灯
		if(LIGHT_OFF==0)
		{
			delay(10);
			if(LIGHT_OFF==0)
			{
				SWITCH=0;
			}
			while(!LIGHT_OFF);
		}
	}
}

你可能感兴趣的:(51单片机,51单片机,嵌入式硬件,单片机)