蓝桥杯单片机----LED指示灯的基本控制

   日期:2021-04-09     浏览:122    评论:0    
核心提示:大家拿到国信长天这块开发板的时候先不要着急下手编程,一定要先看一下这块板子都有哪些外设,然后再简单分析一下原理图,先大概了解一下各个外设是跟哪些IO口连接,这样也方便我们后续的编程。 这次我们要做的是如何利用这块开发板上的LED灯做一个跑马灯设计,咱们先用最简单直白的方式写,然后再逐渐精炼代码,这样有助于我们了解原理并且找到适合自己的编程方法,也有助于我们形成自己的编程风格。设计内容: 1、让八只LED灯整体闪烁三次,间隔为1秒钟; ...

        大家拿到国信长天这块开发板的时候先不要着急下手编程,一定要先看一下这块板子都有哪些外设,然后再简单分析一下原理图,先大概了解一下各个外设是跟哪些IO口连接,这样也方便我们后续的编程。

        这次我们要做的是如何利用这块开发板上的LED灯做一个跑马灯设计,咱们从易到难,逐个讲解板子上的外设。

设计内容:

        1、让八只LED灯整体闪烁三次,间隔为1秒钟;
        2、LED灯从左到右逐渐点亮,间隔为0.5秒;
        3、LED灯从左到右逐渐熄灭,间隔为0.5秒。

        相信大家都已经看过这个电路图了,板子上的LED灯与一个74HC573锁存器相连接,74HC573锁存器又与一个74HC02或非门连接,最后又和74HC138译码器相连接,所以我们如果想驱动LED灯的话,需要先驱动74HC138译码器,继而驱动74HC02和74HC573锁存器对LED进行操作。

74HC138译码器真值表

        想要控制Y4我们需要怎样,肯定是通过输入端A、B、C来控制,通过真值表我们发现,要想选中Y4的话我们只需要让C为高电平,B为低电平,A为低电平,即C=1;B=0;A=0;此时Y4为低电平,74HC02是一个而输入或非门,通过电路图我们可以发现WR实际上是与GND相连接,因为咱们选择的是IO模式编程,所以用了一个跳线帽把WR与GND连在了一起,那就是低电平嘛,这样的话那Y4=0,WR=0,Y4C=1;此时74HC573导通,咱们就可以通过单片机P0口来控制LED灯了,总结一下,想要驱动LED灯、继电器、蜂鸣器等外设的话,咱们只需要通过A、B、C让74HC138译码器的对应输出端为低电平就行了。

        参照上面知识和电路咱们就可以着手写代码了。

#include<stc15f2k60s2.h>

sbit HC138_A=P2^5;
sbit HC138_B=P2^6;
sbit HC138_C=P2^7;

void LED_Run();
void delayms(int ms);

void main()
{
	while(1)
	{
	    LED_Run();
	}
}
void LED_Run()
{
	int i;
	HC138_C=1;
	HC138_B=0;
	HC138_A=0;
	
	for(i=0;i<3;i++)
	{
		P0=0x00;
		delayms(1000);
		P0=0xFF;
		delayms(1000);
	}
	for(i=0;i<8;i++)
	{
		P0=(0xFF<<i);
		delayms(500);
	}
	for(i=0;i<8;i++)
	{
		P0=~(0xFF<<i);
		delayms(500);
	}
}
void delayms(int ms)
{
	int i,j;
	for(i=ms;i>0;i--)
	for(j=845;j>0;j--);
}

 
打赏
 本文转载自:网络 
所有权利归属于原作者,如文章来源标示错误或侵犯了您的权利请联系微信13520258486
更多>最近资讯中心
更多>最新资讯中心
更多>相关资讯中心
0相关评论

推荐图文
推荐资讯中心
点击排行
最新信息
新手指南
采购商服务
供应商服务
交易安全
关注我们
手机网站:
新浪微博:
微信关注:

13520258486

周一至周五 9:00-18:00
(其他时间联系在线客服)

24小时在线客服