【蓝桥杯—单片机】LED的基本控制 | 备赛 | 笔记

前言

学习资料参考

【【小蜜蜂笔记】蓝桥杯大赛-单片机设计与开发基础技能与进阶强化教程】https://www.bilibili.com/video/BV1Bt41187hw?p=2&vd_source=c7e5b42e6c1438daf4523dc34387738c

本节训练重点

  1. 74HC138 三八译码器
  2. 74HC573 锁存器
  3. 74HC02 或非门
  4. LED跑马灯

LED的基本控制

1.原理图


LED灯与锁存器相连,而锁存器的选中情况受到或非门的影响,而或非门又受到138译码器的控制。

或非门:
这里是引用

138译码器:
在这里插入图片描述

138译码器

在这里插入图片描述
三八译码器通过三路输入(A0,A1,A2)控制八路输出(Y0-Y6)。

管脚图如下:这里是引用

真值表如下:
在这里插入图片描述
输出为低电平有效,且不同的输入情况只能控制一个管脚进行有效输出。

A2(C)A1(B)A0(A)有效管脚
000Y0
001Y1
010Y2
011Y3
100Y4
101Y5
110Y6
111Y7

74HC573锁存器

在这里插入图片描述
当锁存器LE为高电平时,输入输出同步;当锁存器LE为低电平时,数据被锁存,即输入的值不会影响到输出的值。

2. 编程思路

先控制138译码器输出Y4为低电平,再控制锁存器的输出LED进行控制。
Y4有效代码可以参考下方:

/*头文件声明*/
#include <REGX52.H>

/*变量声明区域*/
sbit HC138_A0_A = P2^5;
sbit HC138_A1_B = P2^6;
sbit HC138_A2_C = P2^7;


void LEDRun()
{
	/*选中锁存器*/
	HC138_A0_A=0;
	HC138_A1_B=0;
	HC138_A2_C=1;
}

项目实现:LED跑马灯

/*头文件声明*/
#include <REGX52.H>

/*变量声明区域*/
sbit HC138_A0_A = P2^5;
sbit HC138_A1_B = P2^6;
sbit HC138_A2_C = P2^7;

/*延时函数*/
void Delay(unsigned int xms)
{
	while(xms--);
	while(xms--);
}

/*LED点亮函数*/
void LEDRun()
{
	/*变量声明*/
	unsigned char i;
	
	/*选中锁存器*/
	HC138_A0_A=0;
	HC138_A1_B=0;
	HC138_A2_C=1;
	
	/*闪烁三下*/
	for(i=0;i<3;i++)
	{
		P0=0x00;
		Delay(1000);
		P0=0xff;
		Delay(1000);
	}
	
	/*逐个点亮*/
	for(i=0;i<8;i++)
	{
		P0=0xff>>i;
		Delay(1000);
	}
	
	/*逐个熄灭*/
	for(i=0;i<8;i++)
	{
		P0=~(0xff>>i);
		Delay(1000);
	}
	
}

/*主函数*/
void main()
{
	
	while(1)
	{
		LEDRun();
	}
}
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
蓝桥杯单片机第十一届省赛题目要求参赛选手使用单片机实现一个特定的功能,具体要求可能会随着每一届比赛的不同而有所变化。在回答此问题时,需要明确具体的题目要求和实现功能,并进行详细的说明。 由于没有提供具体的第十一届省赛题目的信息,我无法给出具体的答案。不过,可以给出一个示例性的回答来说明如何回答此类问题。 示例回答: 根据蓝桥杯单片机第十一届省赛题目要求,我们的任务是设计一个智能家居控制系统。该系统需要能够实现以下功能: 1. 控制家中的照明系统:可以通过单片机控制灯的开关,调节灯的亮度和颜色。 2. 控制家中的窗帘系统:可以通过单片机控制窗帘的升降和角度。 3. 监测室内温湿度:单片机需要连接温湿度传感器,实时获取室内的温度和湿度数据,并可以进行显示或记录。 4. 天气预报功能:通过网络模块连接互联网,获取实时的天气数据,并在单片机上进行显示或语音输出。 5. 安全警报系统:单片机需要能够检测门窗是否关闭,若有异常情况,比如门窗未关闭或有人非法进入,则触发警报。 6. 远程控制功能:通过手机APP或网页,可以远程控制智能家居系统。 根据以上的题目要求,我们可以先设计硬件部分,选择合适的传感器和执行器,并将其与单片机进行连接。然后,编写相应的代码,实现上述功能。最后,进行调试和测试,确保系统的正常运行和功能完备。 这仅为一个示例回答,具体的第十一届省赛题目要求可能与此不同。如需了解具体题目要求,请参考官方的赛题公告。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值