蜂鸣器,继电器的控制

与led一样 蜂鸣器继电器的输出都有M74HC573锁存器的控制。
先放上原理图:

与其不同的是在锁存器与输出引脚之间有一个ULN2003
ULN2003

ULN2003是高耐压、大电流复合晶体管阵列,由七个硅NPN 复合晶体管组成,每一对达林顿都串联一个2.7K 的基极电阻,在5V 的工作电压下它能与TTL 和CMOS 电路直接相连,可以直接处理原先需要标准逻辑缓冲器来处理的数据。

ULN2003不仅有驱动作用,而且有非门的作用;
从原理图上可知蜂鸣器的一个引脚接vcc一个引脚接到了ULN2003的第10引脚,对应着单片机的P06口;
继电器而言引脚接到了ULN2003的12引脚,与输入io引脚P04;
故用P06和P04能控制蜂鸣器和继电器,控制的蜂鸣器的引脚若是高电平1,蜂鸣器就不鸣响,反之低电平0就会鸣响。控制继电器引脚若是高电平1则继电器不吸合led灯不亮,反之引脚低电平继电器吸合led灯亮;结合到ULN2003有非门的作用可知。

PO4,P06送入0即低电平蜂鸣器和继电器不发挥作用
P04,P06送人高电平则发挥作用

与led一样都是先打开锁存器再向PO口送数。

这次我们优化了程序,我们建一个子程序来选择Y4,Y5,Y6,Y7的输出
只有当他们都为高电平是锁存器才打通
程序如下:

void hc138init(char n)
{switch(n){case(4):P2=(P2&0x1f)|0x80; break;case(5):P2=(P2&0x1f)|0xa0; break;case(6):P2=(P2&0x1f)|0xc0; break;case(7):P2=(P2&0x1f)|0xe0; break;}
}

为何这样写,大家可以思考一下,也可以用位定义。
再放上总程序:

#include<reg52.h>  //头文件
#define uchar unsigned char
#define uint  unsigned int
#define led P0  //宏定义
uchar a;
void delay(uint i)  //延时
{while(i--);
}void hc138init(char n)  //选控制端
{switch(n){case(4):P2=(P2&0x1f)|0x80; break;case(5):P2=(P2&0x1f)|0xa0; break;case(6):P2=(P2&0x1f)|0xc0; break;case(7):P2=(P2&0x1f)|0xe0; break;}
}void init()  //初始化 关闭蜂鸣器,继电器
{hc138init(5);P0=0x00;
}
void ledrun()  //小灯亮灭两次再依次流水点亮 继电器吸合蜂鸣器响
{hc138init(4);P0=0x00;delay(50000);P0=0xff;delay(50000);P0=0x00;delay(50000);P0=0xff;delay(50000);for(a=0;a<8;a++){P0=0X01;P0=~(P0<<a);delay(50000);}hc138init(5);P0=0x10;delay(50000);P0=0x00;delay(5000);P0=0x40;delay(50000);P0=0x00;delay(5000);
}
void main()
{init();while(1){ledrun();}
}

【ct107d】蜂鸣器,继电器控制相关推荐

  1. 【蓝桥杯】单片机学习(6)——蜂鸣器+继电器

    蜂鸣器+继电器 1.蜂鸣器简介 2.蜂鸣器工作过程(CT107D开发板). 3.以普中科技开发板为例 1.蜂鸣器简介 蜂鸣器按照驱动方式可分为有源蜂鸣器和无源蜂鸣器.有源蜂鸣器内部带有振荡器,只要给B ...

  2. 蓝桥杯单片机学习日记1-LED 蜂鸣器 继电器 数码管的简单驱动

    此片文章用于记录蓝桥杯单片机的学习. LED 蜂鸣器 继电器 数码管 这些都是比赛时常用的外设,如下原理图:  LED部分:  蜂鸣器和继电器部分(图中还有步进电机部分):  数码管部分: 可见,上述 ...

  3. 智能家居 (3) ——智能家居工厂模式介绍实现继电器控制灯

    目录 智能家居工厂模式整体设计框架 继电器控制灯代码 contrlEquipments.h 文件(设备类) mainPro.c 文件(主函数) bathroomLight.c 文件(浴室灯) seco ...

  4. 微型计算机继电器控制,可编程控制器与微机及继电器控制的区别 -解决方案-华强电子网...

    1. PC与MC控制的区别 简而言之,MC是通用的专用机,而PC则是专用的通用机. 从微型计算机的应用范围来说,MC是通用机,而PC是专用机.微型计算机是在以往计算机与大规模集成电路的基础上发展起来的 ...

  5. ardruino控制继电器_Arduino基础入门篇24—继电器控制

    继电器是一种电子控制器件,是用较小的电流去控制较大电流的一种"自动开关",通常应用于自动控制电路中起着自动调节.安全保护.转换电路等作用. 本篇介绍继电器的使用,通过串口发送命令来 ...

  6. esp-01s接入天猫精灵与relay继电器控制电灯

    esp-01s接入天猫精灵与relay继电器控制电灯 学习arduino已经两个多月了,第一次动手做了一个天猫精灵控制的台灯,并且记录和分享一下学习的过程,做的不好,有什么不对的地方还请多多指正 这两 ...

  7. arduino声音传感器与二极管_如何将声音传感器与Arduino连接 并实现继电器控制项目...

    简介 我前段时间已经实现了声音相关项目,称为 如何制作简单的CLAP SWITCH .该项目基于着名的555定时器IC. 在这个项目中,我将使用不同的声音传感器(虽然想法是一样的),它对声音如大声,拍 ...

  8. 【单片机】继电器控制

    [单片机]继电器控制 一.操作目的 二.操作内容 三.预备知识 四.操作接线图 五.程序清单 六.代码详解 一.操作目的 掌握用继电器的基本方法和编程. 二.操作内容 利用P1口输出高低电平,控制继电 ...

  9. STM32——继电器控制灯的开关

    STM32--继电器控制灯的开关 文章目录 STM32--继电器控制灯的开关 继电器控制灯的开关 项目概述: 环境概述: 项目的开始: 第一步: 第二步: 1.配置GPIOA时钟 2.GPIOA3的结 ...

最新文章

  1. 高考带给了我们什么..........
  2. 1159: 零起点学算法66——反话连篇
  3. 长挺丑,Go 最新的泛型类型约束语法介绍
  4. linux关于权限、目录、重要的指令以及如何使用包管理器
  5. 阿里云携手印度电信巨头 网络互连覆盖150个国家地区
  6. 千万千万不要运行的Linux命令
  7. 华为HCNA好考吗?
  8. AES加密算法|密码学|网络空间安全
  9. 基础摄影测量学_光束区域网平差法列加密区内第一次迭代的全部原始误差方程式
  10. 小郡肝火锅点餐系统代码实现(部分)
  11. 层次化局域网模型 - 核心层、汇聚层、接入层
  12. 【C++】getchar()有什么用
  13. 2D转换综合写法(13)
  14. dialog 弹出框,遮罩层覆盖内容
  15. 【GTK4】又快年底了,100行代码教你做一款简单的年会抽奖软件
  16. 用while实现一个简单的猜数字小游戏
  17. 子曾经曰过,当心累了的时候,身体也会垮台。
  18. 3dmax 视图切换
  19. [N1盒子] 非官方深度os deepin 镜像体验版
  20. 上海人才引进居住证转户口的经验(收藏)

热门文章

  1. oracle11g登录企业管理器,Oracle11g RAC常用操作 (维护及管理)
  2. 4 Pics 1 Word,穷举答题
  3. 电子邮件链接格式html主题,HTML的电子邮件链接标签mailto用法详解
  4. 史蒂夫·乔布斯(简介)
  5. html,css笔记
  6. 计算机修图教程,电脑修图太复杂 3步教你学会用手机做肤色后期
  7. mysql8.0 1064_MySQL 8.0.x 用户授权报错 1064 (42000)
  8. vscode新建文件夹
  9. React Loadable中文文档
  10. Arduino DRV8825驱动两相步进电机