求助。用三个LS165,将并行数据转为串行数据

2019-07-15 11:02发布

#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit SPL=P3^4;
void delay(uint ms)
{
uchar i;
while(ms--) for(i=0;i<120;i++);
}
void main()
{
        SCON=0x10;
        while(1)
        {
        SPL=0;
        SPL=1;
        while(RI==0);
        RI=0;
        P1=SBUF;
        while(RI==0);
        RI=0;
        P0=SBUF;
        while(RI==0);
        RI=0;
        P2=SBUF;
        delay(20);
   }
}

用三个LS165,将并行数据转为串行数据,为什么第一个芯片控制的,控制的第二部分LED,第二个165控制第三部分LED,求助,这是为什么
$U[TP4_0B6LTN56LIGFXULE.png
1PPPRIS8YBTO$TWARZ[IUTL.png
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
5条回答
浴沂咏归
2019-07-16 08:41
人中狼 发表于 2017-5-3 13:11
可以看看这个文档

发错图拉,现在对啦,多谢多谢前辈。
#include<reg51.h>
#define uchar unsigned char
#define uint unsigned int
sbit SPL=P3^4;
void delay(uint ms)
{
uchar i;
while(ms--) for(i=0;i<120;i++);
}
void main()
{
        while(1)
        {
        SPL=0;
        SPL=1;
                                SCON=0X10;
        while(RI==0);
        RI=0;
        P1=SBUF;
        while(RI==0);
        RI=0;
        P0=SBUF;
                                while(RI==0);
        RI=0;
        P2=SBUF;
        delay(20);
   }
}

@~}GK3A0BB5@4`7NWUDM[LS.png

一周热门 更多>