这样打个比喻吧,Pn^n,就类似于一个四层小楼,P1^1就是一楼一房间,现在你惊醒 sbit操作就是把本来的 房间号1-1改成一个你比较容易记的标记如led_bit。
使能一般用于芯片,在多芯片复用单片机相同IO口时,需要对这些外围芯片进行片选,也就是使能,使在一个时间内,只有一个芯片工作。
所以呢,一、你的流水灯不是芯片。二、如果你想去使能的话呢, 可以在单片机和流水灯之间加一个74LS573(锁存器),锁存器有使能端口。
你补充的问题应该是,一个宏定义的函数吧,如果p0前有空格的话,应该是当写led_move_1() 就是写p0<<=1(IO口数据左移)。IO口数据左移,相当于房间号左移。
晕,什么是使能端啊,使能端应该是对芯片而言的
流水灯只是利用单片机端口的电平来控制的
sbit led_bit=P1^6;就是用led_bit来代替P1^6这个端口
来控制接在这个位上的灯,如果灯的一段接底,那么
led_bit=1;能使灯亮,led_bit=0;则使灯灭。
流水灯主要就是电压的极性别反了,还有就是注意限流,注意这两点!
Sbit 是个位定义语句,sbit led_bit=p1^6.意思是把P1口的第六个引脚定义为LED_bit,看下板子上的LED灯,接的是这个引脚!
希望给你好的建议!