新闻中心

EEPW首页>嵌入式系统>设计应用> AT89C51串并转换驱动数码管实验指导

AT89C51串并转换驱动数码管实验指导

作者: 时间:2011-11-30 来源:网络 收藏

内容:

按下图连接器件:

程序如下所示:

C程序

#includereg52.h>

#includeintrins.h>

#defineucharunsignedchar

#defineuintunsignedint

sbitSDA=P1^1;

sbitSHIFT = P1^2;

sbitST = P1^0;

#defineNOP _nop_()

uchar led[] = {0x5b,0x3f,0x3f,0x6f};

uchar select[] = {0x0fe,0xfd,0xfb,0xf7};

uchar i=0;

voidInit()

{

SDA = 0;

SHIFT = 0;

ST = 0;

}

voiddelay()

{

uchar jj;

for(jj=0;jj200;jj++);

while(jj--);

}

voiddisplay(uchar dat)

{

uchar ii;

uchar sdata=dat;

for(ii=0;ii8;ii++)

{

if(sdata0x80)

SDA=1;

else

SDA = 0;

sdata=1;

SHIFT =0;

NOP;

NOP;

SHIFT = 1;

NOP;

NOP;

}

ST = 1;

NOP;

NOP;

ST = 0;

}

voidmain()

{

Init();

while(1)

{

delay();

delay();

P2 = select[i];

display(led[i]);

i=(i+1)%4;

}

}


上一页 1 2 下一页

评论


相关推荐

技术专区

关闭