第7課 數(shù)碼管動態(tài)顯示
void delay(uint z)
{
uint x,y;
for(x=z;x>0;x--)
for(y=110;y>0;y--);
}
main函數(shù)內(nèi)的意思num從1開始,一直加到6,然后不斷的循環(huán) (程序為for(num=1;num<7;num++),當num=1時,先打開第一位數(shù)碼管,再讓第一位數(shù)碼管顯示1(程序P0=table[num],即P0=table[1]),然后進行1s的延時(程序為delay(1000);)。緊接著當num=2時,打開第二位數(shù)碼管,并讓其顯示2,延時1s……,一直到num=6時,打開第六位數(shù)碼管,并讓其顯示6,延時1s,再重復(fù)前的的程序。這個我們就可以在實驗板上看到數(shù)碼管從第一位開始依次以1s的時間間隔依次顯示123456.
下面的程序下載到實驗板現(xiàn)象如圖4所示。
圖4數(shù)碼管依次顯示123456
現(xiàn)在我們把延時程序縮短(注意上面是延時1s,依次100ms 10ms 1ms ….一直到10us,然后把每次改后的程序下載到實驗板,.當短到10us時,可看到如下現(xiàn)象:
也就是此時我們看到的現(xiàn)象是6個數(shù)碼管在同一時刻按位依次顯示123456,可能大家馬上要提出疑問了,在上面不是說過利用靜態(tài)的寫法不是實現(xiàn)不了這種效果嗎?這里就是數(shù)碼管的動態(tài)顯示。
看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人
(function(){
var bp = document.createElement('script');
var curProtocol = window.location.protocol.split(':')[0];
if (curProtocol === 'https') {
bp.src = 'https://zz.bdstatic.com/linksubmit/push.js';
}
else {
bp.src = 'http://push.zhanzhang.baidu.com/push.js';
}
var s = document.getElementsByTagName("script")[0];
s.parentNode.insertBefore(bp, s);
})();
所謂動態(tài)顯示,就是依次向每位位數(shù)碼管同時送出字形碼和相應(yīng)的位選,位與位之間利用延時程序進行延時,當延時程序非常短時,由于發(fā)光管的余輝和人眼視覺暫留作用,此時我們的人眼就分辨不出位與位之間有延時存在,此時就感覺各位數(shù)碼管同時都在顯示,這樣我們實現(xiàn)在靜態(tài)不能實現(xiàn)的功能。
關(guān)鍵詞:
數(shù)碼管動態(tài)顯示單片
評論