• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于51單片機的流水燈的設(shè)計與實現(xiàn)

      2016-07-10 09:09:12吳文兵脫建智
      電子技術(shù)與軟件工程 2016年8期
      關(guān)鍵詞:單片機

      吳文兵 脫建智

      摘 要:本文基于STC89C52單片機應(yīng)用為核心,從系統(tǒng)的硬件電路入手,將8位發(fā)光二極管通過共陰極接法接到單片機的P0端口,并通過控制P0口的電平高低以達到控制發(fā)光二極管,從而實現(xiàn)循環(huán)流水燈的設(shè)計。

      【關(guān)鍵詞】發(fā)光二極管 單片機 流水燈

      在我們的日常生活中,隨處可見各種美麗的霓虹燈,這些美麗的霓虹燈將我們的城市裝扮的絢麗多彩,霓虹燈廣告牌也已經(jīng)成為各大商家爭相競爭的手段。其實這些霓虹燈是由發(fā)光二極管組合而成的,而這些發(fā)光二極管的組合多數(shù)也是基于單片機設(shè)計和制作出來的。而這些霓虹燈大多電路結(jié)構(gòu)復(fù)雜,不容易實現(xiàn)。我們就以制作一臺簡易循環(huán)流水燈為例來介紹一下它基于51單片機的設(shè)計方案。

      1 功能需求約定

      本次設(shè)計主要實現(xiàn)8個發(fā)光管間隔200ms由上至下,再由下至上,一個輪回后再重復(fù)上個輪回,即用單片機來設(shè)計循環(huán)流水燈,就是實現(xiàn)這十五種狀態(tài)的循環(huán)切換控制。

      2 開發(fā)方案的設(shè)計

      本文分別從硬件設(shè)計方案和軟件設(shè)計方案兩個方面進行分析。

      2.1 硬件設(shè)計方案

      根據(jù)循環(huán)流水燈的十五種運行狀態(tài),可以看出,每盞燈的每種狀態(tài)我們可以做同樣的處理,因此在電路設(shè)計中,可以在每種狀態(tài)下,對單片機的對應(yīng)引腳做同樣的輸出,這樣我們就可以實現(xiàn)基于51單片機最小系統(tǒng)電路(如圖1a所示)流水燈模型的硬件設(shè)計了,值得說明的是我們這里采用的是共陰極連接方式(如圖1b所示),所謂共陰極連接方式即發(fā)光二極管的陰極連接在一起形成一個公共端。如圖1b中的D0-D7八個發(fā)光二極管就為共陰極連接方式。在這里每個發(fā)光二極管上還串聯(lián)了一個限流電阻,那此限流電阻的阻值又該如何選取呢?由于單片機上提供的電壓一般為+5V,發(fā)光二極管的導(dǎo)通壓降一般為1.7V左右,需要的電流一般為3mA,所以限流電阻阻值的計算公式為

      2.2 軟件設(shè)計方案

      狀態(tài)控制碼的確定

      所謂狀態(tài)控制碼,就是要使流水燈工作在某一種狀態(tài),我們應(yīng)該向單片機的控制口所輸出的編碼,由前面的硬件設(shè)計可知,在某一個狀態(tài)下,當(dāng)P0口的某一引腳輸出為1時,對應(yīng)的發(fā)光二極管點亮,當(dāng)P0口某一引腳輸出為0時,對應(yīng)發(fā)光二極管熄滅,因此我們前方十五種狀態(tài)所對應(yīng)的P0口控制碼可以依次寫出,以狀態(tài)1D0燈亮為例,我們可以得到00000001的一個狀態(tài)碼,也就是01(十六進制),因此我們只需要為01通過P0口輸出就可以實現(xiàn)狀態(tài)1的顯示了。

      在確定了控制碼之后就可以進行程序流程的設(shè)計了,上電后,取狀態(tài)1的控制碼,并且通過P0口輸出實現(xiàn)D0燈亮,延遲一定時間后,取狀態(tài)2的控制碼實現(xiàn)D1燈亮,按照這個流程直到取狀態(tài)15的控制碼,實現(xiàn)對應(yīng)燈點亮,再從狀態(tài)一開始執(zhí)行,實現(xiàn)這十五種狀態(tài)的循環(huán)切換控制。

      3 系統(tǒng)模型的實現(xiàn)

      3.1 實現(xiàn)方法

      對于單片機而言,一般編程完畢后先基于Proteus等平臺進行仿真測試,然后再進行電路的實現(xiàn)和產(chǎn)品的形成。

      3.1.1 軟件實現(xiàn)

      本次設(shè)計采用了C51語言,并基于keilC51開發(fā)環(huán)境進行實現(xiàn),在main主程序當(dāng)中,完成主循環(huán)任務(wù),對于15種狀態(tài)的控制,其實是一樣的,都是將操作碼送給P0口,而且延時時間也是相同的,所以可以用一個延時子函數(shù)來編寫。

      3.1.2 硬件實現(xiàn)

      本次設(shè)計所需要的元器件是8個發(fā)光二極管、8只限流電阻、一塊STC89C52單片機、一個USB下載裝置以及若干個杜邦線。

      3.2 實現(xiàn)操作

      任務(wù):本次設(shè)計主要實現(xiàn)8個發(fā)光管間隔200ms由上至下,再由下至上,一個輪回后再重復(fù)上個輪回。

      我們將程序編寫為如圖2所示。

      程序中用到了intrins.h庫函數(shù)中的_crol_和_cror_指令,如在main主程序中的大循環(huán)內(nèi),將i=0x01的值給P0,則D0燈點亮,延時一定時間后,循環(huán)左移一位,此時i的值變?yōu)?x02,再將i的值給P0,則D1燈亮,延時一定時間,按照這種方式直到i的值變?yōu)?x80,將此值再賦給P0,實現(xiàn)D7燈亮。接下來開始循環(huán)右移一位,此時i的中變?yōu)?x40,再將i的值給P0,則D6燈亮,延時一定時間,由此實現(xiàn)八個發(fā)光二極管從上而下,再從下到上依次點亮的任務(wù)。

      4 結(jié)語

      經(jīng)過上面的設(shè)計,我們完成了循環(huán)流水燈的設(shè)計,循環(huán)流水燈相對于其他的設(shè)計,已經(jīng)相當(dāng)簡單,即沒有中斷也沒有定時/計數(shù)部分。但是這次設(shè)計,難點還是有的,比如發(fā)光二極管中高低電平的選擇,以及保護電阻的選取??傊ㄟ^設(shè)計該循環(huán)流水燈我們掌握了它基于51單片機的設(shè)計方法,同時可以將該方法推廣到我們其他基于51單片機的小制作中。

      參考文獻

      [1]張燦.單片機花樣流水燈設(shè)計.信息通信,2013(6).

      [2]王莉莉,宋冬萍.基于單片機的花式流水燈的設(shè)計[J],廣西輕工業(yè),2011(11).

      作者簡介

      吳文兵(1985-),女,河北省人?,F(xiàn)就職于濰坊工程職業(yè)學(xué)院。主要研究方向是機電一體化、單片機設(shè)計方面的研究。

      脫建智(1981-),男,回族,山東省人?,F(xiàn)就職于濰坊工程職業(yè)學(xué)院。主要研究方向是單片機設(shè)計方面的研究。

      作者單位

      濰坊工程職業(yè)學(xué)院山工機電工程學(xué)院 山東省濰坊市 262500

      猜你喜歡
      單片機
      基于單片機的SPWM控制逆變器的設(shè)計與實現(xiàn)
      電子制作(2019年13期)2020-01-14 03:15:28
      基于單片機的層次漸變暖燈的研究
      電子制作(2019年15期)2019-08-27 01:12:10
      基于單片機的多功能智能插排
      電子制作(2019年11期)2019-07-04 00:34:48
      基于單片機的便捷式LCF測量儀
      電子制作(2019年9期)2019-05-30 09:42:02
      小議PLC與單片機之間的串行通信及應(yīng)用
      電子制作(2018年12期)2018-08-01 00:48:04
      MSP430單片機在仿真中要注意的幾點問題
      電子制作(2017年9期)2017-04-17 03:00:53
      基于單片機的平衡控制系統(tǒng)設(shè)計
      電子制作(2017年19期)2017-02-02 07:08:27
      基于單片機的三維LED點陣設(shè)計
      電子制作(2016年21期)2016-05-17 03:52:51
      Microchip推出兩個全新PIC單片機系列
      基于Proteus的單片機控制系統(tǒng)的仿真設(shè)計
      东方市| 陇南市| 阿巴嘎旗| 东乡县| 光山县| 新泰市| 靖江市| 龙川县| 巩义市| 东海县| 改则县| 兴安盟| 镇平县| 甘洛县| 华容县| 临漳县| 漯河市| 甘泉县| 湾仔区| 大荔县| 水城县| 桂林市| 鸡泽县| 金川县| 长顺县| 宝鸡市| 建水县| 荥经县| 汉寿县| 天津市| 教育| 临城县| 林甸县| 涡阳县| 张家港市| 诸城市| 辰溪县| 南召县| 成都市| 昔阳县| 长白|