新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 重寫并擴(kuò)展LED點(diǎn)陣屏程序框架

重寫并擴(kuò)展LED點(diǎn)陣屏程序框架

作者: 時(shí)間:2016-12-01 來源:網(wǎng)絡(luò) 收藏
////////////////////////////////////////////////////////////////////////////////void OUT16x16()//點(diǎn)陣屏輸出16x16點(diǎn)陣字模緩沖區(qū)數(shù)據(jù){uint y;//行掃數(shù)據(jù)控制uint x_H;//列高位數(shù)據(jù)控制uint x_L;//列低位數(shù)據(jù)控制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])//以靜態(tài)方式向字模緩沖區(qū)寫入一個(gè)16x16點(diǎn)陣字模數(shù)據(jù){uint x;for(x=0;x<32;x++){ZMHCQ[x]=ZM[x]; } }////////////////////////////////////////////////////////////////////////////////void ZMHCQ_YY()//字模緩沖區(qū)數(shù)據(jù)按行右移一位{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字節(jié)的低位移出空出高位date=ZMHCQ[x_H];if(date&0x01)//將最x_H字節(jié)的低位移入x_L字節(jié)的高位{ZMHCQ[x_L]=ZMHCQ[x_L]|0x80; }else{ ZMHCQ[x_L]=ZMHCQ[x_L]&0x7F;}ZMHCQ[x_H]=ZMHCQ[x_H]>>1;//x_H字節(jié)右移一位x_H+=2;x_L+=2; } }////////////////////////////////////////////////////////////////////////////////uint byte_b(uchar Rdate,uint x)//函數(shù)返回date字節(jié)數(shù)據(jù)倒數(shù)第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)//以右移方式向字模緩沖區(qū)寫入數(shù)據(jù)s為移動(dòng)速度{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() //主函數(shù){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 下一頁

關(guān)鍵詞: LED點(diǎn)陣屏程序框

評(píng)論


技術(shù)專區(qū)

關(guān)閉