0
点赞
收藏
分享

微信扫一扫

02-51单片机之流水灯

1、顺序法,流程图如下:

02-51单片机之流水灯_单片机

程序如下:

#include <reg52.h>//头文件
#define LED1 P20//宏定义
#define LED2 P21
#define LED3 P22
#define LED4 P23
#define LED5 P24
void delay_100ms()//延时函数
{
    unsigned char i, j;

    i = 195;
    j = 138;

    do
    {
        while (--j);
    } while (--i);
}
int main()//main是程序入口
{
    P2=0xff;//熄灭所有LED灯
    while (1)
    {
        LED1=0;
        delay_100ms();
        LED1=1;LED2=0;
        delay_100ms();
        LED2=1;LED3=0;
        delay_100ms();
        LED3=1;LED4=0;
        delay_100ms();
        LED4=1;LED5=0;
        delay_100ms();
        LED5=1;
    }
    
    return 0;//返回值为0
}//5个led灯

现象如下:

开发板使用普中51单片机A2型

02-51单片机之流水灯_流水灯_02

2、使用左移

程序如下:

#include <reg52.h>//头文件
void delay_100ms()//延时函数
{
    unsigned char i, j;

    i = 195;
    j = 138;

    do
    {
        while (--j);
    } while (--i);
}
int main(){
    P2=0XFF;
    int i=0;
    while (1)
    {
        P2=~(0x01<<i++);//左移,<<;~位取反。
        
        if(i==8){
            i=0;
        }
        delay_100ms();
    }
    
    return 0;
}//8个led灯

现象如上。

代码在gitee上,使用git下载,链接如下:

https://gitee.com/autumn-wind-painting-fan/c51-microcontroller.git

举报

相关推荐

0 条评论