c51单片机led奇数偶数亮_单片机LED灯花式闪烁电路图及程序

本文介绍了如何使用C51单片机实现LED灯的花式闪烁,包括全部LED灯的亮灭闪烁、间隔一个LED交替闪烁以及从低位到高位依次点亮的流水灯效果。通过程序示例和电路原理图,详细解析了单片机控制LED灯的基本方法。
摘要由CSDN通过智能技术生成

单片机LED灯花式闪烁电路图及程序

在点亮LED灯的程序中我们知道开发板上的LED灯是接到高电平的,如果单片机引脚输出电平,LED导通发亮。如果单片机引脚输出高电平,LED截止熄灭。知道这个原理后我们把单片机的P0端口的8个引脚都按照同样的方法接上8个LED灯,这样我们就能玩出更多的花样啦。

流水灯电路原理图

1、所有LED灯亮灭闪烁

先来一个简单的,先全部点亮和全部熄灭,间隔500ms,上次我们点亮LED灯的程序中我们只操作了P0端口的一位P0.0,现在只需要将原来操作一个端口的一位更改为操作操作整个端口即可。

将P0口定义为一个宏定义,方便后续理解。

#define LED P0

将原来的LED操作函数

void LedDisplay(unsigned char num)

{

Led0 = num;

}

更改为:

void LedDisplay(unsigned char num)

{

LED = num;

}

该函数传入的形参刚好是8bit的无符号整型数据,对应P0口的8个bit,P0.0为最低位。也就是说我们只需要改变LED操作函数传入的形参,P0口对应的8个LED灯状态就能对应改变。所以,我们需要实现全部LED灯的亮灭操作,全都LED点亮,形参传入16进制的0X00,P0口所有引脚置为低电平,延时后熄灭所有的LED灯,LED灯操作函数传入形参0XFF,P0端口所有引脚置为高电平。需要将主函

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值