POV led”一詞(POV即persistancd of vision),LED旋轉(zhuǎn)屏。那些搖晃出的空中圖案,漂浮在車輪上的動畫,以及形態(tài)各異的時鐘,一定給你留下深刻印象。你是否想過自己親自動手做一個LED旋轉(zhuǎn)屏呢?其實說白了就是一個晃動的流水燈。
?
在51單片機最簡系統(tǒng)的其中的一個端口P0接上8個LED,就是一個典型的流水燈實驗電路。由于沒有幾個元件,說干就干,把所有元件焊在萬能板上,不需花費多長時間,就可完成整個制作。
?
下面是隨便找一個流水燈的C51程序
#include
void main(void)
{
unsigned int i,ch;
ch=0x01;
while(1)
{
for(i=500;i>0;i--);
if(ch==0x00) ch=0x01; else ch=ch<<1;
P0=~ch;
}
}
將這程序編譯下載到系統(tǒng)的單片機上,待LED燈光開始正常開跑后,我們拿著它在手上來回晃動,你發(fā)現(xiàn)這光已經(jīng)不是一條豎直線了,它已經(jīng)變成了一條條斜線。你可以適當(dāng)修改程序中的延時,讓這一連串的斜線更漂亮些(寬和高基本一致),怎么樣,我們的最簡LED旋轉(zhuǎn)屏就這樣做成了。
?
高興之余,發(fā)現(xiàn)這與我們的目標好象還有點遙遠,我們并不需要這些斜線,怎樣才能做出網(wǎng)上的那些大蝦那樣顯示的各種各樣的文字圖案呢?接下來,我們還得想其它辦法,換一下思路,將需要的圖案數(shù)據(jù)一串存在數(shù)組中,運行時又將數(shù)據(jù)一串串讀出來,驅(qū)動LED,這樣就能看到我們想看到的圖案了。