<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應用 > 基于單片機的LED搖搖棒的設(shè)計應用

          基于單片機的LED搖搖棒的設(shè)計應用

          作者: 時間:2013-09-02 來源:網(wǎng)絡 收藏

            0 引言

            隨著現(xiàn)代科技的發(fā)展,高科技產(chǎn)品以其簡潔化、便攜等,給人們帶來了很大的方便。而“搖搖棒”以其更加簡捷與新穎的信息傳遞方式給人們帶來耳目一新的感受,也必將會給人們帶來一種新的方便的文化傳遞方式,常用在晚會及大型的娛樂節(jié)目場合。

            本文通過研究和設(shè)計一個利用事先編好程序來控制16 個LED 發(fā)光二極管,并配合左右手的搖晃來顯示字符和簡易圖形的電子裝置(簡稱為“搖搖棒”),來傳遞有趣的信息。此裝置利用AT89C51 對發(fā)光二極管陣列進行控制。用滾珠開關(guān)檢測當前搖動狀態(tài),控制16 個發(fā)光二極管進行不同頻率的亮滅刷新,則只要搖動就可以可顯示輸出文字及圖案等信息,從而達到在該視覺平面上傳達信息的作用。

            1 硬件系統(tǒng)的組成

            本設(shè)計的簡單有趣的LED 搖搖棒,它是基于控制的電子裝置。具有按鍵進行畫面切換和消除重影等功能,能使畫面清晰顯示出來。它主要由單片機控制部分,LED 驅(qū)動部分,LED 顯示部分組成,其硬件組成框圖如圖1 所示。

            

            1.1 按鍵模塊

            本設(shè)計中通過一個畫面切換開關(guān)對顯示的內(nèi)容進行切換。在設(shè)計中通過滾珠開關(guān)來控制搖搖棒只能向一邊搖動時顯示信息,否則會出現(xiàn)鏡像字或鏡像畫面,也就是重影的現(xiàn)象??蛇x的搖動控制開關(guān)有水銀開關(guān)和滾珠開關(guān)兩種。水銀開關(guān)穩(wěn)定性較高,但安全性較差。滾珠開關(guān)雖然穩(wěn)定性稍差,但不容易被打破,安全度很高??紤]到實際應用環(huán)境,故選用滾珠開關(guān)作為系統(tǒng)的搖動控制,由滾珠開關(guān)帶來的不穩(wěn)定性可以通過軟件進行彌補。手動復位開關(guān)的功能是控制系統(tǒng)的啟停。

            1.2 控制部分

            單片機最小系統(tǒng)作為整個系統(tǒng)的控制核心,它主要負責控制二極管的亮滅及顯示狀態(tài)。通過單片機的軟件編程及外部中斷,來控制搖搖棒的顯示效果。

            1.3 LED 顯示模塊

            此設(shè)計中根據(jù)LED 點陣的顯示原理來設(shè)計顯示部分。點陣的顯示分為行掃描與列掃描兩種,列掃描是將字模數(shù)組通過點陣屏的行驅(qū)動進行輸入,然后通過列對每一行進行掃描,當列為低(高)電平、行為高(低)電平時則表示該點為圖案的一部分,將其讀出、顯示。而本次設(shè)計的LED 顯示棒數(shù)據(jù)傳輸原理與LED 點陣屏相似??梢园袻ED 顯示棒看成是LED 點陣屏中的一列。為了使顯示的圖案清晰,在設(shè)計中使用了16 個高亮度LED 管將它們排成一列,整個屏在靜止時也就相當于16 行×1 列。數(shù)據(jù)傳輸時同樣使用行送數(shù)據(jù)、列掃描。在擺動過程中,應用人眼的視覺暫留原理,被點亮的列不會很快的消失,而是隨著擺動的方向繼續(xù)向前移動,只要移動的速度高于視覺暫留的最短時間顯示內(nèi)容就不會熄滅,這樣,一幅圖案也就可以這樣被“擺動”出來了。


          上一頁 1 2 下一頁

          關(guān)鍵詞: 單片機 LED搖搖棒

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁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); })();