51_蓝桥杯_蜂鸣器与继电器

一 电路

二 蜂鸣器与继电器工作原理

2.1蜂鸣器与继电器

2.2 十六进制与二进制

|----------|------|------|------|------|------|------|------|------|------|------|------|------|------|------|------|------|
| 二进制 | 0000 | 0001 | 0010 | 0011 | 0100 | 0101 | 0110 | 0111 | 1000 | 1001 | 1010 | 1011 | 1100 | 1101 | 1110 | 1111 |
| 十六进制 | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | A | B | C | D | E | F |

2.3非门

二 代码

工程目标:实现8路led灯闪烁3遍后熄灭,依次点亮led灯,继电器吸合,led灯依次熄灭,蜂鸣器鸣叫一会儿后关闭,循环进行。

代码1

复制代码
#include "reg52.h"
 
sbit HC138_A = P2^5;
sbit HC138_B = P2^6;
sbit HC138_C = P2^7;
 
void Delay(unsignde int t)
{
  while(t--);
  while(t--);
}//实现延时功能的函数
 
void jidianqiyufengmingqi()
{
  unsigned char i;//定义char型变量
  HC138_C = 1;
  HC138_B = 0;
  HC138_A = 0;//输出Y4
  
  for(i=0;i<3;i++)
  {
   P0 = 0x00;//实现了全亮
   Delay(60000);
   Delay(60000);//延时
   P0 = 0xff;//实现了全灭
   Delay(60000);
   Delay(60000);//延时
  }由全灭到全亮,循环3次
 
   for(i=0;i<=8;i++)
  {
   P0 = 0xff<<i;//实现了由全灭到全亮
   Delay(60000);
   Delay(60000);//延时
  }实现了由全灭,再逐个点亮
  
  HC138_C = 1;
  HC138_B = 0;
  HC138_A = 1;//输出Y5
  P0 = 0x10;
  Delay(60000);//继电器吸合
  Delay(60000);//延时
  P0 = 0x00;//继电器关闭
 
   for(i=0;i<=8;i++)
  {
   P0 = 0x00<<i;//实现了由全亮到全灭
   Delay(60000);
   Delay(60000);//延时
  }实现了由全亮,再逐个灭

  HC138_C = 1;
  HC138_B = 0;
  HC138_A = 1;//输出Y5
  P0 = 0x40;//蜂鸣器鸣叫
  Delay(60000);
  Delay(60000);//延时
  P0 = 0x00;//蜂鸣器关闭
 
}//实现了又全亮到全灭,再逐个亮起,继电器工作,led灯再逐个灭掉,蜂鸣器又工作的函数功能

void InitSystem()
{
  HC138_C = 1;
  HC138_B = 0;
  HC138_A = 1;//输出Y5

  P0 =0x00;
}

void main()
{
 InitSystem()

 while(1)
{
  jidianqiyufengmingqi();
}

代码2

复制代码
#include "reg52.h"
 
sbit HC138_A = P2^5;
sbit HC138_B = P2^6;
sbit HC138_C = P2^7;
 
void Delay(unsignde int t)
{
  while(t--);
  while(t--);
}//实现延时功能的函数
 
void InitHC138(unsigned char n)
{
 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;
 }
}

void jidianqiyufengmingqi()
{
  unsigned char i;//定义char型变量
  InitHC138(4);
  
  for(i=0;i<3;i++)
  {
   P0 = 0x00;//实现了全亮
   Delay(60000);
   Delay(60000);//延时
   P0 = 0xff;//实现了全灭
   Delay(60000);
   Delay(60000);//延时
  }由全灭到全亮,循环3次
 
   for(i=0;i<=8;i++)
  {
   P0 = 0xff<<i;//实现了由全灭到全亮
   Delay(60000);
   Delay(60000);//延时
  }实现了由全灭,再逐个点亮
  
  InitHC138(5);
  P0 = 0x10;
  Delay(60000);//继电器吸合
  Delay(60000);//延时
  P0 = 0x00;//继电器关闭

  InitHC138(4);
   for(i=0;i<=8;i++)
  {
   P0 = 0x00<<i;//实现了由全亮到全灭
   Delay(60000);
   Delay(60000);//延时
  }实现了由全亮,再逐个灭

  InitHC138(5);
  P0 = 0x40;//蜂鸣器鸣叫
  Delay(60000);
  Delay(60000);//延时
  P0 = 0x00;//蜂鸣器关闭
 
}//实现了又全亮到全灭,再逐个亮起,继电器工作,led灯再逐个灭掉,蜂鸣器又工作的函数功能

void InitSystem()
{
  HC138_C = 1;
  HC138_B = 0;
  HC138_A = 1;//输出Y5

  P0 =0x00;
}

void main()
{
 InitSystem()

 while(1)
{
  jidianqiyufengmingqi();
}
相关推荐
Nil2083 小时前
leetcode 300最长递增子序列
算法·leetcode·职场和发展
考研保研资料分享4 小时前
通信工程保研经验合辑:北航、北理工申请与夏令营、预推免面试(2025)
面试·职场和发展
熊猫钓鱼>_>4 小时前
大学图论第 6 讲:网络流与二分图匹配——对偶性让瓶颈自己现形
开发语言·算法·面试·职场和发展·图论·校招·面经
杨逢昌工厂6S管理5 小时前
116——杨逢昌:归位三定闭环法的旺季轻量化执行方案与工具清单
经验分享·笔记·职场和发展·学习方法
xuxigifxfh5 小时前
面试记录2026
java·mysql·面试·职场和发展
Aurorar0rua6 小时前
CS50 x 2024 Notes Data structures - 08
c语言·开发语言·学习方法
HRTOS6 小时前
HRTOS 内核 BUG 修复:任务等待对象未初始化导致的异常唤醒问题
单片机·嵌入式硬件·算法·51单片机
aqiu1111116 小时前
蓝桥杯省一学习计划:每天 2 小时,12 周高效备赛
学习·职场和发展·蓝桥杯
小米里的大麦6 小时前
19 C、C++ 操作 MySQL
c语言·c++·mysql
Logic1016 小时前
C语言/数据结构位运算题解:异或XOR找出套碗游戏中的“幸运碗“——只出现一次的数字
c语言·数据结构·算法·数组·位运算·时间复杂度·空间复杂度