原创 【博客大赛】MCU之心路分享--继电器和蜂鸣器(四)

2013-11-7 23:24 2264 14 14 分类: MCU/ 嵌入式 文集: MCU之心路分享

本小节目录:

              4.1,继电器的工作原理及触点和线圈的检测

              4.2,继电器连接单片机原理图和程序

              4.3,有源蜂鸣器和无源蜂鸣器的区别

              4,4,蜂鸣器连接单片机原理图

4.1)继电器的工作原理及触点和线圈的检测

          4.1.1什么是继电器?(如图1)

           继电器实际上也就是一种以低电压,小电流去控制高电压,大电流的“自动开关”,具有自动调节,转换电路,安全保护等作用    

1.jpg

                                                          图 1 

       

2.jpg

                                                 图2  电磁继电器内部解剖图

          继电器的种类非常多,有:温度继电器,时间继电器,固态继电器,高频继电器,极化继电器,脉冲继电器,,,,等等。  

       以大多单片机开发板有的电磁继电器为例:(图2)

       电磁继电器一般由铁心,线圈,衔铁、触点簧片等组成,

       只需在线圈两端加上一定电压,线圈会流过一定电流,从而产生电磁效应,衔铁会在电磁力吸引下克服返回弹簧的拉力,吸向线圈,从而吸合到常开接点(常开触点);当线圈断电后,电磁力消失,衔铁又会在弹簧反作用力下返回原理的位置(常闭触点)。

        

4.1.2继电器触点和线圈的检测(如图2)

       1, 找出线圈引脚

        把万能表跳到X1K档两两引脚试,阻值在数百至1K欧姆作用的两引脚为线圈引脚,但注意,有些继电器线圈有正负极,反接不起作用。

       2,找出常开,常闭触点

        用万能表测剩下引脚,两触点阻值约为0(理想阻值为0),即有一触点为常闭触点,两触点阻值为无穷大,即有一常开触点,既与常开触点有关,又与常闭触点有关即为公共点(动力点)

4.1.3 继电器的选用  

  1.先了解必要的条件  

        ①控制电路的电源电压,能提供的最大电流;  

        ②被控制电路中的电压和电流;  

        ③被控电路需要几组、什么形式的触点。

           选用继电器时,一般控制电路的电源电压可作为选用的依据。

           控制电路应能给继电器提供足够的工作电流,否则继电器吸合是不稳定的。  

  2.查阅有关资料确定使用条件后,可查找相关资料,找出需要的继电器的型号和规格号。若手头已有继电器,可依据资料核对是否可以利用。最后考虑尺寸是否合适。    

  3.注意器具的容积。若是用于一般用电器,除考虑机箱容积外,小型继电器主要考虑电路板安装布局。对于小型电器,如玩具、遥控装置则应选用超小型继电器产品。

4.2)继电器连接单片机原理图和程序

    

3.1.jpg

                                                   图3  麦光电子继电器原理图

原理图解释:

          1) 2和5为线圈,一端通VCC,一端用三极管S8550驱动,接1K电阻后连接单片机D6(P1^6)端口

          2) 3,4分别为常开触点,常闭触点

          3) J2为连接座,继电器控制外部大电流,大电压的接口

          4) 显然可以看出,当D6为低电平时,衔铁会打到3处,连接常开触点,继而导通J2处的1,2

         同时,本人认为麦光电子这个电路设计是有点缺陷的,应在2,5端,反接一个二

极管,用于消耗反向电动势,因为,当继电器在断电的一瞬间,会产生一个很强的反向电动势,若无二极管消耗反向电动势,反向电动势会直接作用于驱动三极管,非常容易将三极管烧坏。 

继电器程序:

说明:让继电器连接到常开触点,延时1秒,然后让继电器回到常闭触点,再延时1秒,如此循环,,,,,,,,, 

#include

#define Uchar8 unsigned char

#define Uint16 unsigned int

sbit Relay = P1^5;  // 声明单片机P1^5连接继电器端口

sbit LED = P2^7;  // 声明单片机P2^7连接的一个LED端口 

// 延时函数

void Delayms(Uint16 xms) 

{

    Uint16 i, j;

    for(i=xms; i>0; i--)

       for(j=121; j>0; j--);

}

void main(void)

{

      while(1)

  {

        Relay = 0;  // 继电器处于常开触点

        LED = 0;  // 点亮LED

       Delayms(1000);  // 延时1秒

       Relay = 1;  // 继电器处于常闭触点

       LED = 1;  // 关闭LED

      Delayms(1000);

  }

}        

说明:程序中加入LED点亮或者关灭的原因是:使继电器伴随LED亮灭,更好体会实验现象而已。

          

 4.3)有源蜂鸣器和无源蜂鸣器的区别

4.jpg

                                         图4   a)为有源蜂鸣器;b)为无源蜂鸣器

        区别:细心可看出,1,有绿色电路板的是无源蜂鸣器,无电路板而用黑胶封闭的是有源蜂鸣器    2,有源蜂鸣器工作电流为直流,而无源蜂鸣器工作电流为方波;   3,有源蜂鸣器内部带振动源,而无源蜂鸣器内部没有振动源;    4,有源蜂鸣器直接额定电源可发音,而无源蜂鸣器需接在音频输出电路中才能发音。 

4.4)有源蜂鸣器连接单片机原理图

         

5.jpg

                          图5 麦光电子开发板中,蜂鸣器连接图

原理图分析:

      因单片机端口驱动电流只有100uA--200uA,故需三极管S8550来扩流,所以易知,当D5口(连接单片机P1^4)端出现低电平时,三极管导通,电流由VCC经蜂鸣器到GND,则蜂鸣器就会发声,而反之,D5为高电平时,三极管截止,蜂鸣器无电流,则不会发声。 

蜂鸣器程序1:

让蜂鸣器响1秒,再让蜂鸣器不响1秒,如此循环,,,,,,

#include

#define Uint16 unsigned int

sbit beep = P1^4;  //  声明蜂鸣器连接单片机端口 

void Delayms(Uint16 xms) //  延时函数

{

     Uint16 i, j;

     for(i=xms; i>0; i--)

          for(j=121; j>0; j--);

}

void main(void)

{

    while(1)

     beep = 0; //  蜂鸣器响

     Delayms(1000); //  延时1秒

     beep = 1; //  蜂鸣器不响

     Delayms(1000);

}

蜂鸣器程序2:国际求救信号SOS的程序 

#include 

#define Uchar8 unsigned char

#define Uint16 unsigned int 

sbit Beep = P1^4;

void Delayms(Uint16 xms) //  延时函数

{

     Uint16 i, j;

     for(i=xms; i>0; i--)

         for(j=121; j>0; j--);

}

void main(void)

{

while(1)

    {

     /* **** 三短 **** */

      Beep = 0;Delayms(100);

      Beep = 1;Delayms(50);

      Beep = 0;Delayms(100);

      Beep = 1;Delayms(50);

      Beep = 0;Delayms(100);

      Beep = 1;Delayms(50);

/* **** 三长 **** */

  Beep = 0;Delayms(300);

Beep = 1;Delayms(50);

  Beep = 0;Delayms(300);

Beep = 1;Delayms(50);

  Beep = 0;Delayms(300);

Beep = 1;Delayms(50);

/* **** 三短 **** */

  Beep = 0;Delayms(100);

Beep = 1;Delayms(50);

  Beep = 0;Delayms(100);

Beep = 1;Delayms(50);

  Beep = 0;Delayms(100);

Beep = 1;Delayms(50);

/* **** 便于区分 **** */

Delayms(1000);

}

}

       (说明:所用开发板为:麦光电子单片机开发板)

        

        本系列《MCU之心路分享》博文,本人将尽自己所能,以菜鸟的身份,谱写初学者最详细,最具体的入门博客,同时分享DIY的乐趣,如有误之处,欢迎拍砖,本人也很乐意接受各位大神的批评和指点,在此谢谢!

 

                                                                                      于2013年11月06日 夜

 

 

 

PARTNER CONTENT

文章评论0条评论)

登录后参与讨论
EE直播间
更多
我要评论
0
14
关闭 站长推荐上一条 /1 下一条