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 char led[8]={0xfe,0xfc,0xf8,0xf0,0xe0,0xc0,0x80,0x00}; 15 while(1) 16 { 17 for(i=0;i<4;i++) 18 { 19 P3=led[i]; 20 delay(); 21 } 22 //点亮第一盏灯 23 P2=0xfe; 24 //调用延时函数 25 delay(); 26 //for循环来做向做位移8位 27 for(i=0;i<8;i++) 28 { 29 //备份P2值 30 p=P2; 31 //p的值向左移一位,与0x01或运算就是在结果后面补1 32 P2=p<<1; 33 //调用延时函数 34 delay(); 35 } 36 for(i=0;i<8;i++) 37 { 38 P1=led[i]; 39 delay(); 40 } 41 P1=0xff; 42 delay(); 43 P2=0xff; 44 delay(); 45 P3=0xff; 46 delay(); 47 } 48 }
时间: 2024-10-12 18:26:52