在单片机第一次作业中,老师运用的while语句循环与if语句的结合运用,实现了流水灯熄灭5秒,点亮1秒。
#include"delay.h"
int main(void)//ϨÃð5Ã룬ÁÁÒ»Ãë
{ while(1)
{ if(big >0)
{ delay(1000); big = big-1; }
else
{ big = 5;//重置 small = 1; }
if(small>0)
{ small = small-1; delay(1000); LED = 0; }
else
{ LED = 1; }
}
}
在先将熄灭时间定义为big,点亮时间定义为small,在将big = 5;small = 1。 开始运行在big>0的时候等待1秒,big-1,直到big=0,也就是5秒过完。然后,small开始计时1秒,并减1,进行重置。这样就实现了LED灯熄灭5秒,点亮1秒。
开始,个人并不是运用while语句与if语句,而是用for语句实现实验目的。两个for语句叠加在一起实现时间的计算,下面是一秒: for(i=1000;i>0;i–) for(j=110;j>0;j–);
先计算1000里面的1中,这个1并不是计算1次就行了,而是要计算110次,直到这个1中的110次计算完成之后,在计算1000中的下一个1。而第二个for语句的嵌套中的数值之所以为110,是因为110是晶振运算的1毫秒。
流水灯熄灭5秒,点亮1秒
最新推荐文章于 2024-07-09 17:18:04 发布