c语言流水灯程序 求具体代码
发布网友
发布时间:2022-04-26 07:21
我来回答
共2个回答
热心网友
时间:2022-06-25 05:18
1灭)。编译器keil
C代码如下:
#include
#include
//包含循环左移函数
_cro_l头文件
unsigned
char
tmp;
//中间变量
//////////////////////////////////////////////////////////////////////////////////////////////////
//
延时子程序
////////////////////////////////////////////////////////////////////////////////////////////////
void
delay(unsigned
int
cnt)
{
while(--cnt);
}
//////////////////////////////////////////////////////////////////////////////////////////////////
//
主函数
////////////////////////////////////////////////////////////////////////////////////////////////
main()
{
while(1)
//外层循环
{
tmp
=
0xfe;
P1
=
tmp;
while(1)
//内层循环,执行1、3、5、7亮灯循环
{
delay(30000);
//延时以便能观察到灯亮移动,自己可以调整时间,由晶振和实参决定
tmp
=
_crol_(tmp,2);
P1
=
tmp;
if(tmp
==
0xbf)
//判断是否已经点亮到第7灯。是,则退出进入2、4、6、8循环
{
break;
}
}
tmp
=
0xfd;
P1
=
tmp;
while(1)
//内层循环,执行2、4、6、8亮灯循环
{
delay(30000);
//延时以便能观察到灯亮移动,自己可以调整时间,由晶振和实参决定
tmp
=
_crol_(tmp,2);
P1
=
tmp;
if(tmp
==
0x7f)
//判断是否已经点亮到第8灯。是,则退出进入1、3、5、7循环
{
break;
}
}
}
}
热心网友
时间:2022-06-25 05:18
#include
//C51头文件
#include
//移位函数所在库文件
#define
n
uchar//宏定义无符号字符变量n
sbit
ledlk=P1^0;//定义位变量ledlk为P1^0
sbit
smglk=P1^1;//定义位变量smglk为P1^1
sbit
smgbitlk=P1^2;//定义位变量smgbitlk为P1^2
void
delay(n)//延时函数
{
int
i
,
j;
for(i=0;i
评论
0
0
0
加载更多