重写并扩展LED点阵屏程序框架 作者: 时间:2016-12-01 来源:网络 加入技术交流群 扫码加入和技术大咖面对面交流海量资料库查询 收藏 ////////////////////////////////////////////////////////////////////////////////void OUT16x16()//点阵屏输出16x16点阵字模缓冲区数据{uint y;//行扫数据控制uint x_H;//列高位数据控制uint x_L;//列低位数据控制for(y=1,x_H=0,x_L=1;y<=16;y++){sendbyte(ZMHCQ[x_L]);sendbyte(ZMHCQ[x_H]);HC595_GX();HC154_HS(y);x_H+=2;x_L+=2;delay(1); } }////////////////////////////////////////////////////////////////////////////////void ZMHCQ_GX(uchar code ZM[31])//以静态方式向字模缓冲区写入一个16x16点阵字模数据{uint x;for(x=0;x<32;x++){ZMHCQ[x]=ZM[x]; } }////////////////////////////////////////////////////////////////////////////////void ZMHCQ_YY()//字模缓冲区数据按行右移一位{uint x_H,x_L,y;uchar date;for(y=1,x_H=0,x_L=1;y<=16;y++){ZMHCQ[x_L]=ZMHCQ[x_L]>>1;//将x_L字节的低位移出空出高位date=ZMHCQ[x_H];if(date&0x01)//将最x_H字节的低位移入x_L字节的高位{ZMHCQ[x_L]=ZMHCQ[x_L]|0x80; }else{ ZMHCQ[x_L]=ZMHCQ[x_L]&0x7F;}ZMHCQ[x_H]=ZMHCQ[x_H]>>1;//x_H字节右移一位x_H+=2;x_L+=2; } }////////////////////////////////////////////////////////////////////////////////uint byte_b(uchar Rdate,uint x)//函数返回date字节数据倒数第x位的值{uchar date;date=Rdate;date=date>>(x-1); if(date&0x01) {return 1;}else {return 0;} }////////////////////////////////////////////////////////////////////////////////void ZMHCQ_GX_YY(uchar code ZM[31],uint s)//以右移方式向字模缓冲区写入数据s为移动速度{uint x,y,i,j;for(x=1;x<=8;x++){ZMHCQ_YY(); for(i=1,y=1,j=0;i<=16;i++){ if(byte_b(ZM[y],x)){ZMHCQ[j]=ZMHCQ[j]|0x80; }else{ZMHCQ[j]=ZMHCQ[j]&0x7F; }y+=2;j+=2;OUT16x16();delay(s); } }for(x=1;x<=8;x++){ZMHCQ_YY(); for(i=1,y=0,j=0;i<=16;i++){ if(byte_b(ZM[y],x)){ZMHCQ[j]=ZMHCQ[j]|0x80; }else{ZMHCQ[j]=ZMHCQ[j]&0x7F; }y+=2;j+=2;OUT16x16();delay(s); } } }////////////////////////////////////////////////////////////////////////////////void main() //主函数{uint x,y;chushihua();while(1){/////////////////////////////////////////////////////////////////////////// ZMHCQ_GX(ZM000);for(y=0;y<16;y++){ for(x=0;x<20;x++){OUT16x16();}ZMHCQ_YY();}///////////////////////////////////////////////////////////////////////////ZMHCQ_GX(ZM001);for(y=0;y<16;y++){for(x=0;x<20;x++){OUT16x16();}ZMHCQ_YY();}///////////////////////////////////////////////////////////////////////////ZMHCQ_GX_YY(ZM000,2);ZMHCQ_GX_YY(ZM001,2);} } 上一页 1 2 下一页
评论