点亮流水灯--位移法

点亮流水灯之位移法

 1 #include <reg51.h>
 2 #include <stdio.h>
 3 //延时函数
 4 void delay(){
 5     int i=10000;
 6     //用while循环来做兜底循环
 7     while(i--);
 8 }
 9 //主函数
10 void main(void)
11  { 
12      int i;
13      char p;
14      while(1)
15     {
16         //点亮第一盏灯
17         P2=0xfe;
18         //调用延时函数
19         delay();
20         //for循环来做向做位移8位
21         for(i=0;i<8;i++)
22        {
23            //备份P2值
24             p=P2;
25            //p的值向左移一位,与0x01或运算就是在结果后面补1
26             P2=p<<1|0x01;
27            //调用延时函数
28             delay();
29         }
30      }  
31  }

 

posted on 2017-05-08 19:17  梁锦杰  阅读(1223)  评论(0编辑  收藏  举报

导航

欢迎进入我的博客!