51单片机:流水灯每循环一次,都让一个灯常亮

2024-12-02 20:36:07
推荐回答(2个)
回答1:

while(1){
P1=0xfe; //第一位
for(k=0;k<8;k++){
delay(2000); //延时
P1=_crol_(P1,1);//左移1位
}
}

改为

unsigned char m; 
while(1){ 

    m=0xff;
            for(j=0;j<8;j++){
                m<<=1;    
                P1=m; //第一位
for(k=j;k<8;k++){
delay(2000); //延时
P1=_crol_(P1,1);//左移1位

            } 
            while(1);  // 如果要周而复始变化,就注释掉本行 
}

回答2:

把P1=0xfe;放到while()上面去,你试试