蓝桥杯第一章LED灯的闪烁

蓝桥杯开发板驱动led灯,和51可是不一样,但是也是有些一样的地方。在学习的过程中,一定要去翻阅数据手册和原理图来编写代码。路还长,走的越稳,你走才能越长。

前沿:我们要有举一反三的思想。这里我给大家说说点亮led的思路,然后附上我写的代码。然后大家可以进行去开发,比如跑马灯,流水灯。红绿灯,等内容的进阶。如果大家想要这些进阶的话可以私信吗。如果我放在这个博客上,大家就没有思考的过程了,没有思考的过程就为 零。

首先点亮一个LED灯:

首先,点亮一个led灯,我们需要通过锁存器来进行互通。比如。M74HC573上有Y4C这个输入数据的端口,我们要将这个端口要与下面的或非门相同,然后进入74HC138锁存器中。这样才能实现点亮一个led灯。

其次,我们应该想怎么才能让他们串联,也就是让Y4C打通,我们会看到,P25,P26,P27。三个引脚,C B A。

Y4 :1 0 0;对应LED锁存器。

Y5 : 1 0 1;对应蜂鸣器继电器的锁存器。

Y6: 1  1  0;对应数码管段选。

Y7: 1 1 1;对应数码管位选。

当我们打通Y4的通道之后,就可以,将数据输入的单片机当中,来进行编写了

下面是74HC138的数据手册中的真值表

给大家解释解释怎么看这个真值表。首先我们看Y4的行与列,它对应这的字母是L也就是低电平。然后看前面的Select中的CBA,为H L L 。我们用二进制翻译过来就是1 0 0 。也就是上面说的打开Y4通道。

在看74HC573的锁存器

8为数据输入,输出,就是二进制转化为十六进制用bcd码来进行识别,然后点亮你所想点亮的灯。

#include <STC15F2K60S2.H>

sbit  A_HC_573 = P2^5;//定义引脚
sbit  B_HC_573 = P2^6;
sbit  C_HC_573 = P2^7;

#define uchar unsigned char
#define uint unsigned int

void delay_led(uint z)//延时函数
{
    uint x,y;
    for(x = z; x > 0; x--)
        for(y = 114; y > 0; y--);

}

uchar i;
void light_led()
{    
    C_HC_573 = 1;//Y4
    B_HC_573 = 0;
    A_HC_573 = 0;
    
    for(i = 0; i <= 4;i++ )
    {
        P0 = 0x00;
        delay_led(600);
        delay_led(600);
        
        P0 = 0xff;
        delay_led(600);
        delay_led(600);
        
        P0 = 0x66;//蜂鸣器继电器
        delay_led(600);
        delay_led(600);
        
        P0 = 0xff;
        delay_led(600);
        delay_led(600);
    }
    
    for(i = 1;i<=8;i++)
    {
        P0 = 0xff >> i;
        delay_led(600);
        delay_led(600);
    }
    for(i = 1;i<=8;i++)
    {
        P0 = (0xff >> i);
        delay_led(600);
        delay_led(600);
        
    }

}


void main()
{
    //light_led();
    //light();
    while(1)
    {
        light_led();
    //light();
    }


}

到最后了,希望大家细心看看,慢慢钻研,可能我也有错误,请大家指出,互相交流。 

  • 23
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值