贵阳学院本科毕业论文(设计)
ES=0; while(1) {
clean();
display(20); for(i=0;i<1;i++){ //祝您旅途愉快!
pc[0]=&dh[0][0];pc[1]=&zhu[0][0];pc[2]=&nin[0][0];pc[3]=&lui[0][0];pc[4]=&tu[0][0];pc[5]=&yu[0][0];
pc[6]=&kuai[0][0];pc[7]=&well[0][0]; slogan(8); //slogan(8);
pc[0]=&zero[0][0]; for(i=0;i<5;i++) slogan(1); } }
void clean(void){ uchar i,j;
for(i=0;i<16;i++) for(j=0;j<8;j++)
buffer[i][j]=0x00; }
void slogan(uchar m){ uchar i;
for(i=0;i LeftMove(pc[i]); } void delay(uint t){ int i,j; for(i=0;i void display(uint t){ uint i; uchar j,k,a; uchar *disp; for(i=0;i outen=1; P0=0; P2=0; for(j=0;j<8;j++){ 20 贵阳学院本科毕业论文(设计) disp=buffer[j]+6; for(k=0;k<7;k++){ SBUF=*disp--; while(!TI){;} TI=0; } latch=1; latch=0; P0=a; outen=0; delay(6); a=a>>1; outen=1; } P0=0; a=0x80; for(j=0;j<8;j++){ disp=buffer[j+8]+6; for(k=0;k<7;k++){ SBUF=*disp--; while(!TI){;} TI=0; } latch=1; l P2=a; outen=0; delay(6); a=a>>1; outen=1; } } } void move(void){ uchar *m,i,j; for(i=0;i<16;i++){ for(j=0;j<7;j++){ m=&buffer[i][j]; *m=*m<<1; *m=*m|*(m+1)>>7; } buffer[i][7]=buffer[i][7]<<1; } } 21 贵阳学院本科毕业论文(设计) /*============== void carry(){ uchar i,j,*car=wc; for(i=0;i<16;i++) //16行 for(j=0;j<4;j++) //4 byte buffer[i][j+3]=*car++; } *//////////////////// void LeftMove(uchar *p){ uchar i; buffer[0][7]=buffer[1][7]=buffer[14][7]=buffer[15][7]=0x00; for(i=0;i<12;i++) buffer[i+2][7]=*(p+2*i); //装载高8位 for(i=0;i<8;i++){ //左移8次,并显示 move(); display(1); } for(i=0;i<12;i++) buffer[i+2][7]=*(p+1+2*i); //装载低4位 for(i=0;i<4;i++){ //左移4次,并显示 move(); display(1); } } void LoadNoSmoking(uchar *p){ uchar i; for(i=0;i<16;i++) buffer[i][7]=*(p+2*i); //装载高8位 for(i=0;i<8;i++){ //左移8次,并显示 move(); display(1); } for(i=0;i<16;i++) buffer[i][7]=*(p+1+2*i); //装载低4位 for(i=0;i<8;i++){ //左移8次,并显示 move(); display(1); } } void UpMove(void){ uchar i,j; for(i=0;i<15;i++){ 22 贵阳学院本科毕业论文(设计) for(j=0;j<7;j++) buffer[i][j]=buffer[i+1][j]; } for(i=0;i<7;i++) buffer[15][i]=0x00; } void WordUpMove(void){ uchar i,j; buffer[15][0]=*pc[0]; display(3); UpMove(); buffer[15][0]=*(pc[0]+1); display(3); UpMove(); for(i=0;i<12;i++){ buffer[15][0]=*(pc[0]+2+i); for(j=0;j<2;j++){ buffer[15][1+3*j]=*(pc[1+2*j]+2*i); buffer[15][2+3*j]=*(pc[1+2*j]+1+2*i)|(*(pc[2+2*j]+2*i)>>4); buffer[15][3+3*j]=(*(pc[2+2*j]+2*i)<<4)|(*(pc[2+2*j]+1+2*i)>>4); } display(3); UpMove(); } buffer[15][0]=*(pc[0]+14); display(3); UpMove(); buffer[15][0]=*(pc[0]+15); display(150); display(150); } 附2 系统原理图 23 贵阳学院本科毕业论文(设计) 附2-1 系统原理图 附3 所用到部分PCB图 附3-1 驱动器模块 24 贵阳学院本科毕业论文(设计) 附3-2 最小系统 25