595+138驱动88点阵不稳定

2019-07-16 00:48发布

本帖最后由 374363700 于 2013-5-8 23:50 编辑

  我用实物74HC595 74HC38这样连接后,接电脑USB插口电源点阵只能正常亮一半, 而节手机充电的那种usb电源,点阵能全亮 ,可是亮度不够 ,而且会随机变暗变亮  
  


#include<reg52.h>
sbit R=P3^4;  //数据输入端口
sbit CLK=P3^6;      //时钟信号
      
sbit STB=P3^5;    //锁存端
char code table[]={0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff};
void delay(int z)
  {
int x,y;
for(x=0;x<z;x++)
for(y=0;y<110;y++);
  }

void WriteByte(char dat) //写一个字节的数据
{
char i;
for(i=0;i<8;i++)     //循环8次把编码传给锁存器
    {
dat=dat>>1;      //右移一位,取出该字节的

R=CY; //       将该字节的最低位

CLK=0;   //      将数据移入595,上升
CLK=1;
    }
}

void main()
{
int num;
while(1)
{
for(num=0;num<8;num++)
{
WriteByte(table[num]); //送出一个字节
P1=num;   
STB=1; //     输出锁存器

STB=0;
delay(1) ;
}
}
}
1.jpg
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。