关于51单片机的一个亮灯程序

#include<reg52.h>
sbit csda=P3^2;
sbit wr=P3^6;

void main()
{
csda=0;
wr=0;
P0=0xff;
while(1);
}
(当P0=0x01或者其它时,为什么亮的是数码管而不是灯啊,求高手教)
就是六个数码管左边两个数码管下面的芯片再下面的D12

不知道你说的是啥板子,但是就现象而言,如果P0=0xff全灭而P0=0x01时只有数码管亮,那么很可能你送P0=0xfe就只有灯亮了,因当P0=0x01=0000 0001时恰好是前7位得电点亮一个8字。
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-08-27
你可以改一下sbit led=P0^7;看看是不是第8个灯亮,如果第八个灯亮了,第二个灯还是亮说明你的电路板有问题,但问题不大追问

呃~~什么意思???会不会是我没说清楚,我这个程序想让DAC芯片下面那个单一的灯亮,可是数码管老是亮,灯却没反应,P0换成0或者0xff就正常

第2个回答  2014-08-27
P0.1线联到数码管上了。追问

那咋整??

那咋整??

第3个回答  2014-08-27
你得把你的电路图给出来啊,哪个引脚连得灯啊?追问

不好意思,原理图来了,就是郭天祥51单片机系列的TX-1C

追答

OK,你是要做DA转换吧,那是一个转换指示灯,你用跳线帽把P5的2和3连起来了么?

第4个回答  2014-08-27
这个要看你硬件怎么接的,没原理图人家怎么看得出问题追问

不好意思,原理图来了,就是郭天祥51单片机系列的TX-1C

追答

跟74hc573的输入使能有关,11脚,通过控制2个74hc573的le引脚来片选573从而实现共用P0口也能实现即控制数码管也能控制其他外设

相似回答