点亮led灯的个数_16个LED灯循环点亮的小程序(代码)

本文介绍了一个使用移位函数实现16个LED灯循环点亮的C语言小程序。通过包含适当的头文件,定义数据类型和端口,以及使用内联移位函数,实现了LED灯的循环点亮。主要涉及了_irol_()和_iror_()函数的应用,并提供了延时函数和主函数的详细代码。此外,还提到了8个LED灯的对照程序和Proteus仿真工程,便于读者理解和验证效果。
摘要由CSDN通过智能技术生成

今天又小伙伴又来考我了。问我16个LED灯循环点亮怎么变成。我也动了下手,将手里的8个LED灯循环点亮的小程序进行了修改,就完成了16个LED灯循环点亮的小实验。那么下面给大家分享下吧!

其实16个LED灯循环点亮更8个LED灯循环点亮一个道理!我这里用到了移位函数,移位函数都在intrins.h文件里面。这里注意移位函数的选择,8位数据和16位数据要用到不同的移位函数。这里是最关键的,其他的地方也就大同小异了。

下面就看看代码吧!

代码:

#include "reg52.h" //此文件中定义了单片机的一些特殊功能寄存器

#include//因为要用到左右移函数,所以加入这个头文件

typedef unsigned int u16;  //对数据类型进行声明定义

typedef unsigned char u8;

#define led1 P0   //将P0口定义为led0 后面就可以使用led代替P0口

#define led2 P2   //将P2口定义为led2 后面就可以使用led代替P2口

/*******************************************************************************

* 函 数 名         : delay

* 函数功能   : 延时函数,i=1时,大约延时10us

*******************************************************************************/

void delay(u16 i)

{

while(i--);

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值