首页 > 代码库 > 【004】AVR单片机控制继电器

【004】AVR单片机控制继电器

继电器结构图

1、12为线圈的两端,1为正端,12为负端。(线圈实质是个电磁铁)

3、4、5为一个单刀双掷开关,8、9、10为一个单刀双掷开关

在电磁铁没吸合的时候,开关的公共端4、9分别连接的是3和10

在电磁铁吸合的时候,开关的公共端4、9分别连接的是5和8

 

继电器的保护:

一般都在线圈两端反向加一个二极管做为保护,减小感应电流对磁感线圈的损害。因为在继电器工作结束后磁感线圈上会产生逆向的感应电流。加一个二极管能消除感应电流

继电器连接原理图

图中的1 <--->1、2 <--->3、3 <--->4、4 <--->5、5 <--->8、6 <--->9、7 <--->10、8 <--->12。

3和6就是结构图中的单刀双掷的开关。

 

这里如果给单片机的PC6端口一个高电平,那么就会在VCC1和VCC2之间有一个5V的电势差,这样就会有电流通过1和8之间的线圈,同时线圈就会有磁性。吸合3、6这两个单刀双掷的开关到OTNER1和OTHER2两端。

同时3端连接一个LED灯,4端是VCC高电势,这就二极管就会被点亮。

程序

/*********************************************************************************功能:*     通过继电器控制LED灯的闪烁**********************************************************************************/#include <iom16v.h>#include <macros.h>#define uint unsigned int#define uchar unsigned charvoid delay(uint ms);void main(void){    DDRC |= BIT(6);    while(1)    {        PORTC |= BIT(6);        delay(500);         PORTC &= ~BIT(6);        delay(500);    }}void delay(uint ms){    uint x,y;    for (x = 0; x < ms; x++ )    {        for(y = 0; y < 1141; y++);    }}

实体举例

型号是SRS 12VDC SL 六个引脚,引脚图片如图:

把万能表跳到电阻X1K档,有一定值的是线圈,等于0的是常闭,无穷大的是常开,一试就知道了。

3、4为线圈,5、1为常闭,5、2为常开,5、6为直通。

既与常开点有关系,又与常闭点有关系的引脚,就是公共端,也就是图中的5。

【004】AVR单片机控制继电器