用Proteus學(xué)習(xí)51單片機(jī)之?dāng)?shù)碼管
今天學(xué)的是數(shù)碼管和鎖存器的使用。用鎖存器的目的,是為了減小IO口的使用,本來(lái)至少得用15根IO口的,用了鎖存器后,只需要用10根IO口,若是繼續(xù)增加數(shù)碼管,IO口的增加也是一根根增加了。
本文引用地址:http://2s4d.com/article/201701/342824.htm鎖存器的作用,是把當(dāng)然IO口的狀態(tài)保存下來(lái),具體由鎖存器的LE腳控制,當(dāng)LE腳為高電平時(shí),鎖存器的輸出和輸入一樣,若LE腳為低電平時(shí),則把LE腳電平改變前的輸入腳的狀態(tài)保存下來(lái)作為輸出,此時(shí)不管輸入怎么變,它的輸出也不會(huì)變了。這樣,就做到了單片機(jī)的1組輸出腳,可以控制多個(gè)設(shè)備的目的。
原理圖請(qǐng)見(jiàn)上圖,在圖中,可以看到導(dǎo)線很少,這是因?yàn)橐B接的導(dǎo)線很多,如果直接用導(dǎo)線連接的話,會(huì)導(dǎo)致整個(gè)設(shè)計(jì)圖亂成一片,根本看不清楚,所以,這里使用標(biāo)號(hào)來(lái)連接,即線的標(biāo)號(hào)名字一樣的,會(huì)自動(dòng)連接在一起,如D0會(huì)自動(dòng)和所有名字叫D0的線連起來(lái),這要整個(gè)界面就看起來(lái)清爽了很多。
在這里再說(shuō)個(gè)小技巧,為導(dǎo)線設(shè)計(jì)屬性時(shí),在Proteus里面,有一個(gè)挺方便的工具,叫“屬性設(shè)置工具”,在工具菜單中間,可以用來(lái)批量給導(dǎo)線設(shè)置屬性,比如給導(dǎo)線取標(biāo)號(hào)是D0到D7,可以這樣設(shè)置:
在字符串那里,填寫(xiě)NET=D#,表示標(biāo)號(hào)的類型是D#這樣的類型,而#會(huì)自動(dòng)從下面的計(jì)數(shù)值開(kāi)始,每次增加1.設(shè)置好以后,只要在要設(shè)置的線上面點(diǎn)擊一下,就會(huì)自動(dòng)把標(biāo)號(hào)設(shè)置為D0,D1…。至于字符串中可以使用的屬性,可以看右邊的幫助,如給元件設(shè)置的話,可以是REF,VALUE,DEVICE,PINSWAP可以使用。
數(shù)碼管的連續(xù)顯示,原理是先在第一個(gè)數(shù)碼管顯示一個(gè)數(shù)字,然后在很快的時(shí)候里設(shè)置第二個(gè),第三個(gè)數(shù)碼管的數(shù)字。由于切換的時(shí)間非常的短,這樣利用了人眼的視頻暫留原理,看起來(lái)就是完整的顯示了。這個(gè)其實(shí)和以前的電視機(jī)原理差不多。不過(guò)在Proteus上,由于顯示及計(jì)算等原因,并不能看到完全顯示的效果.(經(jīng)高手指導(dǎo),我知道自己搞錯(cuò)了,Proteus是完全可以完美的顯示的,修改了一下代碼就好了,主要是延時(shí)要小,并且要把數(shù)碼管在顯示后關(guān)閉)
評(píng)論