32*32点阵LED显示汉字-STC单片机

时间:2012-08-14来源:网络

i++;

}

}

}

/*************第2个16*16点阵显示*********************/

//

void dis2()

{

//第二个16*16点阵开始显示

uchar i,j;

for(i=16;i24;i++)

{/*****我在修改的时候,总是字显示不完整,一开始还以为是哪里有错,后来改延时程序也不行,最后每行连续扫描几次,可以了******/

for(j=0;j8;j++)//特别注意这里每组点阵的每行扫描8遍,人眼看起来才完整,否则会有残缺不亮

{

P2=hang[i%16];

CS1=1;

P0=tab[i*2];

L3=1;

delay(1);

P0=0x00;

L3=0;

P0=tab[i*2+1];

L4=1;

delay(1);

P0=0x00;//这句才是真正关闭阳极正电的

L4=0; //关闭列,这句是使以后的操作不再影响本列状态

P2=0xff;//这句才是关闭阴极正电的语句

CS1=0; //关闭行低,使以后的操作部影响本行状态

i++;

}

}

for(i=24;i32;i++)

{

/*****我在修改的时候,总是字显示不完整,一开始还以为是哪里有错,后来改延时程序也不行,最后每行连续扫描几次,可以了******/

for(j=0;j8;j++)//特别注意这里每组点阵的每行扫描8遍,人眼看起来才完整,否则会有残缺不亮

{

P2=hang[i%24];

CS2=1;

P0=tab[i*2];

L3=1;

delay(1);

P0=0x00;

L3=0;

P0=tab[i*2+1];

L4=1;

delay(1);

P0=0x00;//这句才是真正关闭阳极正电的

L4=0; //关闭列,这句是使以后的操作不再影响本列状态

P2=0xff;//这句才是关闭阴极正电的语句

CS2=0; //关闭行低,使以后的操作部影响本行状态

i++;

}

}

//第二个16*16点阵显示完毕

}

/***********第3个16*16点阵显示**************************/

//

void dis3()

{

//第三个16*16点阵开始显示

uchar i,j;

for(i=32;i40;i++)

{ /*****我在修改的时候,总是字显示不完整,一开始还以为是哪里有错,后来改延时程序也不行,最后每行连续扫描几次,可以了******/

for(j=0;j8;j++)//特别注意这里每组点阵的每行扫描8遍,人眼看起来才完整,否则会有残缺不亮

{

P2=hang[i%32];

CS3=1;

P0=tab[i*2];

L1=1;

delay(1);

P0=0x00;

L1=0;

P0=tab[i*2+1];

L2=1;

delay(1);

P0=0x00;//这句才是真正关闭阳极正电的

L2=0; //关闭列,这句是使以后的操作不再影响本列状态

P2=0xff;//这句才是关闭阴极正电的语句

CS3=0; //关闭行低,使以后的操作部影响本行状态

i++;

}

}

for(i=40;i48;i++)

{

for(j=0;j8;j++)//特别注意这里每组点阵的每行扫描8遍,人眼看起来才完整,否则会有残缺不亮

{

P2=hang[i%40];

CS4=1;

P0=tab[i*2];

L1=1;

delay(1);

P0=0x00;

L1=0;

P0=tab[i*2+1];

L2=1;

delay(1);

P0=0x00;//这句才是真正关闭阳极正电的

L2=0; //关闭列,这句是使以后的操作不再影响本列状态

P2=0xff;//这句才是关闭阴极正电的语句

CS4=0; //关闭行低,使以后的操作部影响本行状态

i++;

}

}

//第三个16*16点阵显示完毕

}

/********第4个16*16点阵显示*********************/

//

void dis4()

{

/************第4个16*16点阵显示***********************/

//第四个16*16点阵开始显示

uchar i,j;

for(i=48;i56;i++)

{

for(j=0;j8;j++)//特别注意这里每组点阵的每行扫描8遍,人眼看起来才完整,否则会有残缺不亮

{

P2=hang[i%48];

CS3=1;

P0=tab[i*2];

L3=1;

delay(1);

P0=0x00;

L3=0;

P0=tab[i*2+1];

L4=1;

delay(1);

P0=0x00;//这句才是真正关闭阳极正电的

L4=0; //关闭列,这句是使以后的操作不再影响本列状态

P2=0xff;//这句才是关闭阴极正电的语句

CS3=0; //关闭行低,使以后的操作部影响本行状态

i++;

}

}

for(i=56;i64;i++)

{

for(j=0;j8;j++)//特别注意这里每组点阵的每行扫描8遍,人眼看起来才完整,否则会有残缺不亮

{

P2=hang[i%56];

CS4=1;

P0=tab[i*2];

L3=1;

delay(1);

P0=0x00;

L3=0;

P0=tab[i*2+1];

L4=1;

delay(1);

P0=0x00;//这句才是真正关闭阳极正电的

L4=0; //关闭列,这句是使以后的操作不再影响本列状态

P2=0xff;//这句才是关闭阴极正电的语句

CS4=0; //关闭行低,使以后的操作部影响本行状态

i++;

}

}

//第四个16*16点阵显示完毕

}

//

void delayus()

{

uchar i=3;

while(i--);

}

void delay(uint k)

{

uint data i,j;

for(i=0;i

{

for(j=0;j155;j++)

{;}

}

}

1 2

关键词: -STC 单片机 汉字 显示 LED 32点阵

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版