那些小灯泡是亮的,是因为上面有个5V供电,下面的DEFAULT端子(连接单片机是低电平),所以会亮。
74HC373是一款高速CMOS器件,74HC373引脚兼容低功耗肖特基TTL(LSTTL)系列。74HC373遵循JEDEC标准no7A。74HC373是八路D 型锁存器,每个锁存器具有独立的D 型输入,以及适用于面向总线的应用的三态输出。所有锁存器共用一个锁存使能(LE)端和一个输出使能(OE)端。
当OE为低时,8个锁存器的内容可被正常输出;当OE为高时,输出进入高阻态。OE端的 *** 作不会影响锁存器的状态。
当LE为高时,数据从输入端Dn输入到锁存器,在此条件下,锁存器进入透明模式,也就是说,锁存器的输出与对应的输入端D变化相同。当LE为低时,输入端的数据就被锁存在锁存器中,数据输入端D的变化不再影响输出端输出。
你可以去看芯片的数据手册
探头存在故障。
proteus声光控开关灯一直亮,可能是探头存在故障把探头修一下就可以了。
声光控开关是由声音量和光照度来控制的墙壁开关,当环境的亮度达到某个设定值以下,同时环境的噪音超过某个值,这种开关就会开启。
把MIAN: MOV A, #0FFH
改MIAN : MOV A, #01H
请注意74LS240有 "非"的功能
所以,P1=A=0FFH, 再"非"后为 00了, 所以全亮了
1、用普通的照明开关代替用于控制LED灯的声音控制开关。
2、拆卸声控LED灯,拆下内部LED灯盘和LED驱动器并保留,其他控制电路板拆除。将LED灯盘连接到LED驱动器,然后将其连接到电路。仅在电源开关的控制下,声光控制复制功能才被取消。
void delay(unsigned int ms)
{
while(ms--);
}
void main(void)
{
unsigned char debounce = 0; //定义变量
//这里应该还有一个反向寄存器要配置,你查一下芯片资料;
PORTD=0x80; //初始化PD
debounce=PORTD; //把PD赋给debounce
while (1)
{
debounce=debounce >> 1; // 1000 0000 左移位
if(debounce== 0) // debounce == 0
debounce = 0x80; //重新赋值
PORTD = debounce; //debounce 赋值给PD
delay(1000); //延时
}
}
这样改试一下,不要直接复制,但是标点符号不要漏了
还有PIC单片机我没用过,
既然有PORTx 输出状态寄存器,那么应该会有一个IO方向寄存器;
例如AVR的方向寄存器是DDRD = 0x10;这样赋值,1为输出,0为输入;
还有确认一下你的头文件对不对;
以上就是关于proteus 图中运行后小灯泡为什么一直亮,跟开关没关系全部的内容,包括:proteus 图中运行后小灯泡为什么一直亮,跟开关没关系、proteus声光控开关灯一直亮、流水灯程序keil4与proteus联调时怎么灯不闪烁,程序是抄的书上的应该不错,图我自己画的,错在哪里等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)