电路图如图所示。 程序为: #include <reg51.h> #define dataout P1 sbit LE=P3^0; sbit OE=P3^1; void int_1() interrupt 0 using 2 {dataout=~dataout; } main() {dataout=0xff; LE=0; OE=1; EA=1; EX0=1; IT0=1; while(1); }
功能:每进一次中断(中断0),输出数据就翻转一次,发光管交替亮灭。 问题是:从第一次进入中断后,led0和led1就始终是亮的,其他六个led按照程序交替亮灭。这是为什么?实际搭接电路没有问题。 |