资讯详情

蓝桥杯(2)——蜂鸣器与继电器的使用

蜂鸣器与继电器的使用-toc" style="margin-left:0px;">使用蜂鸣器和继电器

一、原理

二、代码控制

三、与LED例如连接控制


使用蜂鸣器和继电器

一、原理

首先,如何控制蜂鸣器和继电器,必须知道蜂鸣器和继电器的引脚图(如下):

来源于CT107D单片机综合训练平台原理图

1.(1)蜂鸣器BUZZER(低电平有效)N BUZZ,然后找到相应的端口

(2).找到对应的M74HC573MIR它控制的定器Q7连接ULN2003(达林顿管

引脚图下,实际内部为非门;即输入1,输出0)

OUT7口再连接N BUZZ,然后找到控制锁存器Y5C的端口

(3)对应找到74HC02或非门对应第一节LED里的芯片Y5

(4)即找到74HC138译码器

2.(1)继电器DIODE(低电平有效):

(2)接下来找N RELAY,同样在上面的第二个图锁存器OUT5引脚。下一步操作同上;

从上图可以看出,继电器的开关是关闭的LED显示出来

二、代码控制

【注】ULN2003是非门;

(1)打开蜂鸣器:P0=0100 0000;或者P0=0x40;

关闭蜂鸣器:P0=1011 1111;或者P0&=0xb0

(2)打开继电器:P0=0001 0000;或者P0=0x10;

关闭继电器:P0=1110 1111;或者P0=0xe8;

三、与LED例如连接控制

首先让8路LED指示灯闪烁3次后熄灭,然后依次点亮LED,继电器吸合一会儿断开,然后依次熄灭LED,蜂鸣器鸣叫一次后关闭,程序循环实现上述功能。UP主小蜜蜂老师的干货店)

#include<reg51.h>  sbit HC138_A=P2^5;   sbit HC138_B=P2^6; sbit HC138_C=P2^7; //定义引脚  void Delay(unsigned int t)   //定义延迟函数 {  while(t--);  while(t--);  }  void InitHC138(unsigned char n)//使用Switch便于重复使用以下句子 {  switch (n)  {  case 4:     HC138_C=1;  HC138_B=0;  HC138_A=0;   //让Y4输出低电平  break;  case 5:     HC138_C=1;  HC138_B=0;  HC138_A=1;   //让Y5输出低电平  break;  case 6:     HC138_C=1;  HC138_B=1;  HC138_A=0;   //让Y6输出低电平  break;  case 7:     HC138_C=1;  HC138_B=1;  HC138_A=1;   //让Y7输出低电平  break;  } }    void LEDRunning() //运行LED函数 {     unsigned char i;  InitHC138(4);   for(i=0;i<3;i  ) ///闪烁三次  {  P0=0x00; //led亮,低电平有效  Delay(60000)  ;//延时  Delay(60000)  ;   P0=0xff;  Delay(60000)  ;  Delay(60000)  ;  }   InitHC138(4);   for(i=0; i<8;i  )依次点亮8个LED  {  P0 = 0xff <<i;  Delay(60000)  ;  }    InitHC138(5) ;   P0 = 0x10;   //继电器 吸合  Delay(60000)  ;  Delay(60000)  ;  P0 = 0x00;     InitHC138(4)   ;     for(i=0; i<8;i  )  {  P0 =~ 0xff <<i;  Delay(60000) ;   }   依次点亮8个LED      InitHC138(5) ;     P0 = 0x40;  //打开蜂鸣器  Delay(60000)  ;  Delay(60000)  ;  P0 = 0x00;   }  void InitSystem() {  InitHC138(5) ;       P0 = 0x00;  } void main() {  InitSystem();  while(1)  {   LEDRunning();  } }

标签: 里面的继电器继电器882n低电平使继电器吸合的原因0925d继电器64m继电器2101m继电器

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台