单片机流水灯c语言程序代码_C语言编程软件

(5) 2024-06-06 20:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说单片机流水灯c语言程序代码_C语言编程软件,希望能够帮助你!!!。

最近自学51单片机编程,看大神http://home.eeworld.com.cn/home.php?mod=space&uid=&do=blog&classid=988&view=me 的文章,看了前几个,迫不及待的上手,写了一个流水灯的小程序,开始也看了一些算法,看不懂,所以自己研究,写了个算法,算法不好,但好在好理解。
我的第一个单片机程序,让八个灯循环闪烁。
单片机流水灯c语言程序代码_C语言编程软件_https://bianchenghao6.com/blog__第1张

    #include<reg51.h>
#define TIME 5
void delay(int time){               //延时代码
    int i,j;
    for(i=1000; i>0; i--)
    for(j=time; j>0; j--);
}

int diff(int count){                //算2的i次方
    int i,rs = 1;
    for (i = 0; i < count; i++) {
        rs *= 2;
    }
    return rs;
}

void flicker(int time){             //闪烁算法
    int i,j = -1;
    for(i = 254; i>0; i = (i - diff(j))){
        P1 = i;
        delay(time);
        P1 = 0xff;
        delay(time);
        j++;
    }
}

void main(void)                     //主程序,无限循环
{
    while(1){
        flicker(TIME);
    }
}

延时算法解释
单片机流水灯c语言程序代码_C语言编程软件_https://bianchenghao6.com/blog__第2张
254-2^i即为要亮的灯。

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

上一篇

已是最后文章

下一篇

已是最新文章

发表回复