蓝桥杯模块三:蜂鸣器和继电器的基本控制

模块训练题目:

一、蜂鸣器电路图

1.电路图

2.电路分析

138译码器控制Y5,Y5控制Y5C,Y5C低电平控制芯片开启P0口控制ULN2003继而控制蜂鸣器端口和继电器端口

二、程序代码

1.138译码器控制端口函数

建立初始化函数选择锁存器

2.实现题目功能

在LED代码的基础上写整个代码

cpp 复制代码
void InitHC138(unsigned char n)
{
	switch(n)
	{
		case 4:
			HC138_C=1;
			HC138_A=0;
			HC138_B=0;  //Y4输出低电平
		break;
		case 5:
			HC138_C=1;
			HC138_A=0;
			HC138_B=1;
		break;
		case 6:
			HC138_C=1;
			HC138_A=1;
			HC138_B=0;
		break;
		case 7:
			HC138_C=1;
			HC138_A=1;
			HC138_B=1;
		break;
	}
}

void Delay(unsigned int t)
{
	while(t--);
	while(t--);
}

void LEDRunning()
{
	unsigned char i;
	InitHC138(4);
	for(i=0;i<3;i++)
	{
		P0=0x00;
		Delay(60000);
		Delay(60000);
		P0=0XFF;
		Delay(60000);
		Delay(60000);
	}
	for(i=0;i<=7;i++)
	{
		P0=0xFE<<i;
		Delay(60000);
		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);
		Delay(60000);
	}
	InitHC138(5);
	P0=0X40;
	Delay(60000);
	Delay(60000);
	P0=0x00;
}


void main()
{
	while(1)
	{
		LEDRunning();
	}
}

3.优化代码

初始化138译码器函数的优化

三、运行结果

相关推荐
夏鹏今天学习了吗9 小时前
【LeetCode热题100(100/100)】数据流的中位数
算法·leetcode·职场和发展
元亓亓亓12 小时前
LeetCode热题100--42. 接雨水--困难
算法·leetcode·职场和发展
Tracy老板翻译官13 小时前
【团队管理问题篇】别让“凉粉冤案”毁了你的团队
网络·职场和发展·团队开发·创业创新·职场晋升
regon16 小时前
第十章 叁年10 测试岗位面试复盘
面试·职场和发展·《打造卓越团队》
zheshiyangyang16 小时前
前端面试基础知识整理【Day-2】
前端·面试·职场和发展
努力学算法的蒟蒻19 小时前
day83(2.11)——leetcode面试经典150
面试·职场和发展
软考通20 小时前
软考改革再提速!工信教考再招 2 人,2026 年软考会有哪些动作?
大数据·人工智能·职场和发展·职场发展·软考
想吃火锅100521 小时前
【leetcode】136.只出现一次的数字
算法·leetcode·职场和发展
_OP_CHEN1 天前
【算法基础篇】(六十)Nim 博弈超全解析:从基础原理到经典变种,玩转多堆取石子问题
算法·蓝桥杯·c/c++·博弈论·算法竞赛·acm、icpc·nim博弈
想吃火锅10051 天前
【leetcode】169.多数元素
算法·leetcode·职场和发展