74HC595驱动点阵显示一行
时间:10-02
整理:3721RD
点击:
大神帮我看看,点阵显示一行的程序,下载进去不亮
#include<reg52.h>
#include<intrins.h>
#define NOP() _nop_()
sbit SER=P3^4;
sbit R_CLK=P3^5;
sbit SRCLK=P3^6;
void DianZhen595(unsigned char sendval)
{ unsigned char k;
SRCLK=1;
for(k=0;k<8;k++)
{
if(sendval&0X80)
{
SER=1;
}
else
{
SER=0;
}
sendval<<=1;
SRCLK=0;
NOP();
NOP();
SRCLK=1;
}
R_CLK=0;
NOP();
NOP();
R_CLK=1;
}
void mian()
{
while(1)
{
P0=0X00;
DianZhen595(0X02);
while(1);
}
}
#include<reg52.h>
#include<intrins.h>
#define NOP() _nop_()
sbit SER=P3^4;
sbit R_CLK=P3^5;
sbit SRCLK=P3^6;
void DianZhen595(unsigned char sendval)
{ unsigned char k;
SRCLK=1;
for(k=0;k<8;k++)
{
if(sendval&0X80)
{
SER=1;
}
else
{
SER=0;
}
sendval<<=1;
SRCLK=0;
NOP();
NOP();
SRCLK=1;
}
R_CLK=0;
NOP();
NOP();
R_CLK=1;
}
void mian()
{
while(1)
{
P0=0X00;
DianZhen595(0X02);
while(1);
}
}
点阵都是动态扫描的 ,你程序就执行一次能亮吗?
检查级联引脚有没有信号输出,串行信号在时钟信号的驱动下会在级联引脚输出
没事加个while(1);干做什么呢!
小编只是贴出了代码,小编想要的目的是什么呢?