1、详细电路图连接蔡龇呶挞关系如下图。通过取模软件,分别取得下面需要的字模数组(8X8行扫描,下移显示如果是逐行取字模时,第一次从字码数组中取出第1斡酽嗫旆~8个数据置于列上,行扫描顺序为1~8行,显示一帧,第二次取第2~9个数据,行扫描顺序仍为1~8行,显示第二帧,……如此便是向上移动。如果将上述的行扫描顺序改为8~1行,就是向下移动,但显示的图像是倒立的了,为了使得它不倒立,详细请看程序。另外取模方式不同,就有不同的编程方式。显示图下移效果的程序如下:):uchar code TAB[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, //空屏 0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,0xC1,0xFF, //L 0xE3,0xDD,0xDD,0xDD,0xDD,0xDD,0xE3,0xFF, //O 0xDD,0xDD,0xDD,0xDD,0xDD,0xEB,0xF7,0xFF, //V 0xC1,0xFD,0xFD,0xC1,0xFD,0xFD,0xC1,0xFF, //E 0xff,0xc9,0xb6,0xbe,0xdd,0xeb,0xf7,0xff, //心号 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, //空屏 };
2、代码的规整版本图片:
3、//效果截图,详细代码:#include<reg52.h>#define uchar unsigned char#define uint unsign髫潋啜缅ed intuchar code TAB[]={0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, //空屏 0xFD,0xFD,0xFD,0xFD,0xFD,0xFD,0xC1,0xFF, //L 0xE3,0xDD,0xDD,0xDD,0xDD,0xDD,0xE3,0xFF, //O 0xDD,0xDD,0xDD,0xDD,0xDD,0xEB,0xF7,0xFF, //V 0xC1,0xFD,0xFD,0xC1,0xFD,0xFD,0xC1,0xFF, //E 0xff,0xc9,0xb6,0xbe,0xdd,0xeb,0xf7,0xff, //心号 0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF, //空屏 };uchar idata Buffer[48]={0}; //缓存显示单元uchar i,t,d;delay(uchar t){ while (t--) { ; }}void main(void){ uchar N,T,m,n; P2=0x75; for (m=0;m<6;m++) for (n=0;n<8;n++) Buffer[8*m+n]=TAB[7-n+m*8]; //将TAB数组中的数据重新排列//使得下移字母顺序不变 while (1) { for (N=0;N<40;N++) //循环扫描一遍6帧 for (T=0;T<70;T++) //速度 { d=0x80; out164(d); for (i=0;i<8;i++) { P0=Buffer[i+N]; delay(100); d=d>>1|d<<7; //扫描起始行为第一行 P0=0xff; // 消隐,很重要,不加要红一片 out164(d); } } }}