单片机控制流水灯,

流水灯他有使能端吗?使能端又是什么呢?为什么有些要定义sbit led_bit=p1^6.本人菜鸟希望得到的是真确答案,谢谢
#define led_move_1() p0 <<=1, 他是什么意思啊

这样打个比喻吧,Pn^n,就类似于一个四层小楼,P1^1就是一楼一房间,现在你惊醒 sbit操作就是把本来的 房间号1-1改成一个你比较容易记的标记如led_bit。
使能一般用于芯片,在多芯片复用单片机相同IO口时,需要对这些外围芯片进行片选,也就是使能,使在一个时间内,只有一个芯片工作。
所以呢,一、你的流水灯不是芯片。二、如果你想去使能的话呢, 可以在单片机和流水灯之间加一个74LS573(锁存器),锁存器有使能端口。

你补充的问题应该是,一个宏定义的函数吧,如果p0前有空格的话,应该是当写led_move_1() 就是写p0<<=1(IO口数据左移)。IO口数据左移,相当于房间号左移。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-08-05
晕,什么是使能端啊,使能端应该是对芯片而言的
流水灯只是利用单片机端口的电平来控制的
sbit led_bit=P1^6;就是用led_bit来代替P1^6这个端口
来控制接在这个位上的灯,如果灯的一段接底,那么
led_bit=1;能使灯亮,led_bit=0;则使灯灭。
第2个回答  2010-08-05
流水灯主要就是电压的极性别反了,还有就是注意限流,注意这两点!
Sbit 是个位定义语句,sbit led_bit=p1^6.意思是把P1口的第六个引脚定义为LED_bit,看下板子上的LED灯,接的是这个引脚!
希望给你好的建议!