感悟网 导航

单片机流水灯C语言程序(8个灯,依次点亮每个灯,延时500MS)

作者&投稿:应苑 (若有异议请与网页底部的电邮联系)
~

单片机流水灯C语言程序的源代码如下:

#include //51系列单片机定义文件

#define uchar unsigned char //定义无符号字符

#define uint unsigned int //定义无符号整数

void delay(uint); //声明延时函数

void main(void)

{

uint i;

uchar temp;

while(1)

{

temp=0x01;

for(i=0;i<8;i++) //8个流水灯逐个闪动

{

P1=~temp;

delay(100); //调用延时函数

temp<<=1;

}

temp=0x80;

for(i=0;i<8;i++) //8个流水灯反向逐个闪动

{

P1=~temp;

delay(100); //调用延时函数

temp>>=1;

}

temp=0xFE;

for(i=0;i<8;i++) //8个流水灯依次全部点亮

{

P1=temp;

delay(100); //调用延时函数

temp<<=1;

}

temp=0x7F;

for(i=0;i<8;i++) //8个流水灯依次反向全部点亮

{

P1=temp;

delay(100); //调用延时函数

temp>>=1;

}

void delay(uint t) //定义延时函数

{

register uint bt;

for(;t;t--)

for(bt=0;bt<255;bt++);

}

扩展资料

51单片机流水灯的源代码如下

#include<reg51.h>

#include<intrins.h>

void delay(int a)

{

int i;

while(a--)for(i=0;i<110;i++);

}

main()

{

int i;

while(1)

{

P0=0xfe;

for(i=0;i<8;i++)

{

P0=_crol_(P0,1);

delay(500);

}

}

}



《单片机 亮灯:8个灯左右来回亮。既先按流水灯从左到右亮,再从右到左灭...》
答:用移位操作,首先把P1口赋值,然后向右移位,判断是否移到最后移位,如果不是,一直移位,如果是,则反向移位,判断是否移位到第一位,如果是则循环到右移,具体代码就自己写了。代码不难,我只是记不清楚具体定义了。

《...两盏流水一次(01,23,45,67) 闪亮一次(8盏灯亮灭》
答:include<reg51> define uchar unsigned char define uint unsigned int void delay(uchar t){ uchar x;for(x=0;x<t;x++){ TH0=0x3c;TL0=0xb0;TR0=1;while(!TF0);TF0=0;} } uchar code display[]={0x03,0x06,0x60};uchar k,m;void main(){ while(1){ TMOD=0x01;for(m=0;...

《51单片机八个灯的流水灯代码》
答:51单片机八个灯的流水灯代码:1、用精确定时的方法,设置流水灯运行时的时间间隔,延时时间为500MS。2、#include "reg51.h"首先写出单片机的头函数。3、#include "intrins.h"输入位移函数。4、unsigned int count=0,led;定义函数。5、输入主函数,定义单片机的端口,写入延时函数。编辑推荐 对于刚接触...

《很简的51单片机C语言流水灯程序》
答:1、51单片机C语言实现循环8个流水灯左移三次,后右移三次。例程:include<reg51.h> //51单片机头文件#include <intrins.h> //包含有左右循环移位子函数的库#define uint unsigned int //宏定义#define uchar unsigned char //宏定义sbit beep=P2^3;void delay(uint z) //延时函数,z...

《单片机实验利用定时器控制八个LED灯每隔1S每四个为一组轮流点亮_百度知 ...》
答://主程序 void main(){ uchari;P2=0x01;while(1){ for(i=0;i<7;i++){ P2=_crol_(P2,1);//P2的值向左循环移动 DelayMS(150);} for(i=0;i<7;i++){ P2=_cror_(P2,1);//P2的值向右循环移动 DelayMS(150);} } } 04 花样流水灯 /* 名称:花样流水灯 说明:16只LED...

《单片机C语言编程:让8个LED流水灯以0.2s时间间隔从左到右依次点亮然后重...》
答:include<reg52.h> include<intrins.h> void delay(unsigned int z );void main(){ unsigned int a;unsigned char b=0xfe;for(a=0;a<8;a++){ P1=b;//P1口接8个LED灯 delay(200);b=_crol_ (b,1);} } void delay(unsigned int z){ unsigned int i;for(;z>0;z--) //延...

《用AT89C51单片机的P2口控制8个Led的流水灯的C程序看不懂?》
答:include <REGX52.H> void Delay1ms(unsigned int count) /*延时函数,延迟时间为count×1ms)*/ { unsigned int i,j;for(i=0;i<count;i++)for(j=0;j<120;j++);} main(){ unsigned char LEDIndex = 0; /*声明8位变量LEDIndex,用来指示8个LED中哪个被点亮,初始值为00000000*/ bit ...

《八个流水灯隔灯闪烁,程序怎么写?》
答:unsigned int a,i,m;void yiwei();void delay(unsigned int b);void main()TMOD=0x01; //T0为方式1 TH0=(65536-50000)/256;TL0=(65536-50000)%256; //初值 EA=1; //允许中断 ET0=1;while(1)P2=0x00;delay(2000);LED = 0x7f;m =0;for (i = 0 ;i < 8 ; i++){...

《51单片机C语言如何实现8个流水灯左移三次,后右移三次;如此循环》
答:51单片机C语言实现循环8个流水灯左移三次,后右移三次。例程:include<reg51.h> //51单片机头文件#include <intrins.h> //包含有左右循环移位子函数的库#define uint unsigned int //宏定义#define uchar unsigned char //宏定义sbit beep=P2^3;void delay(uint z) //延时函数,z的取...

《单片机C语言如何实现8个LED流水灯来回流动?》
答:1、可以通过左移函数_crol_()和右移函数_cror_()来实现LED等的来回流动。2、具体实现方法可以参考如下程序:

   

返回顶部
本页内容来自于网友发表,若有相关事宜请照下面的电邮联系
感悟网