|
新手為學(xué)習(xí)大佬們的知識(shí)發(fā)帖賺積分
8X8點(diǎn)陣屏滾動(dòng)顯示仿真原理圖如下(proteus仿真工程文件可到本帖附件中下載)
0.png (12.37 KB, 下載次數(shù): 102)
下載附件
2018-10-2 16:39 上傳
單片機(jī)源程序如下(帶詳細(xì)注釋):
- #include<reg51.h>
- #include<intrins.h>
- unsigned char ldis[16] = {0xFF,0xF3,0xE1,0xC1,0x83,0xC1,0xE1,0xF3};//圖片點(diǎn)陣,陽(yáng)碼(0亮)、按列取字模、低位在前
- unsigned char hdis[8] = {0x66,0xFF,0xFF,0xFF,0xFF,0x7E,0x3C,0x18};//{0x00,0x6c,0xfe,0xfe,0x7c,0x38,0x10,0x00};//圖片點(diǎn)陣,陰碼(1亮)、按行取字模、低位在前
- void delay(unsigned char i) // 延時(shí)函數(shù)
- {
- unsigned char j,k;
- for(j=i;j>0;j--)
- for(k=110;k>0;k--);
- }
- void main() //主函數(shù)
- {
- unsigned char i,j,k,temp;
- for (i = 8; i < 16; i++) //補(bǔ)8列不顯示的列編碼
- ldis[i]=0xff;
- //for (i = 8; i < 16; i++) //補(bǔ)8行不顯示的行編碼
- //hdis[i]=0x00;
- while(1)
- {
- /* //按列掃描,左右滾動(dòng)
- for(j=0;j<17;j++) //9幀,要循環(huán)顯示就有17幀
- {
- for(k=0;k<50;k++)//重復(fù)顯示一幀數(shù)據(jù)50次
- { temp=1;
- for (i = 0; i < 8; i++)
- {
- P3 = temp;//列選
- P2 = ldis[(i+j)%16];//圖片點(diǎn)陣列編碼,要循環(huán)顯示ldis[(i+j)%16];
- temp=temp<<1;
- delay(2);
- }
- }
- }*/
-
- //按行掃描,上下滾動(dòng)
- for(j=0;j<8;j++) //9幀,要循環(huán)顯示就有17幀
- {
- for(k=0;k<50;k++)//重復(fù)顯示一幀數(shù)據(jù)50次
- { temp=0xfe;
- for (i = 0; i < 8; i++)
- {
- P2 = temp;//行選
- P3 = hdis[(i+j)%8];//圖片點(diǎn)陣行編碼,要循環(huán)顯示hdis[(i+j)%16];
- temp=_crol_(temp,1);
- delay(2);
- }
- }
- }
- }
- }
復(fù)制代碼
所有資料51hei提供下載:
8X8點(diǎn)陣屏滾動(dòng)顯示.zip
(20.05 KB, 下載次數(shù): 267)
2018-10-2 15:35 上傳
點(diǎn)擊文件名下載附件
下載積分: 黑幣 -5
|
評(píng)分
-
查看全部評(píng)分
|