單片機(jī)的LED點陣屏顯示學(xué)習(xí)資料_第1頁
單片機(jī)的LED點陣屏顯示學(xué)習(xí)資料_第2頁
單片機(jī)的LED點陣屏顯示學(xué)習(xí)資料_第3頁
已閱讀5頁,還剩20頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、51單片機(jī)的LED點陣屏設(shè)計1 引言點陣顯示是集微電子技術(shù)、 計算機(jī)技術(shù)、 信息處理于一體的新型顯示方式。 由于 其具有色彩鮮艷,動態(tài)范圍廣,亮度高,壽命長,工作穩(wěn)定可靠等優(yōu)點。目前大 多數(shù)的公交車招牌都是采用固定的板塊顯示, 顯示的信息量少, 內(nèi)容固定, 修改 站點信息比較麻煩,不能快速、便捷的更新站點信息。本文提出一種方案,采用 LED點陣顯示模塊,克服了上述缺點,不僅可以靜態(tài)的顯示公交車站點信息,而 且也可以通過動態(tài)滾動, 從而增加信息顯示的容量。 為了醒目, 還可以產(chǎn)生諸如 閃動、滾動等顯示效果。1.1 車內(nèi)顯示器的發(fā)展現(xiàn)狀 隨著電子技術(shù)和計算機(jī)控制技術(shù)在客車上的日益廣泛的應(yīng)用, 客車

2、內(nèi)的路牌顯示 器也經(jīng)歷了從燈光路牌、翻板式電子模塊路牌、CRTS示、LCD液晶顯示和LED點陣顯示等幾種發(fā)展類型; 顯示信息也從固定內(nèi)容發(fā)展到任意內(nèi)容的多種顯示方 式;對顯示信息的編輯、 修改,也由遙控鍵盤有線通訊模式發(fā)展到用計算機(jī)編輯 文字,在經(jīng)專用無線控制器將其發(fā)射到各站點的通訊模式。 以后的發(fā)展趨勢是衛(wèi) 星定位系統(tǒng)站點顯示器,客車內(nèi)站牌顯示器由天線、衛(wèi)星定位模塊、微處理器、 LED點陣驅(qū)動電路、LED點陣站牌和電可擦寫存儲器構(gòu)成。目前在客車內(nèi)廣泛的顯示器由LED點陣顯示器和LCD液晶顯示器,還有部分CRT 顯示器,由于CRT顯示器耗電量多、體積較大,且本質(zhì)量較重,與 LED點陣顯示 器和

3、LCD液晶顯示器相比,已處于下風(fēng),目前LED和LCD顯示器成為現(xiàn)代人們選 擇之一,它們各有優(yōu)缺點。LCD液晶顯示器具有圖像清晰、體積小、功耗低等優(yōu) 點,但它的成本高、亮度低、壽命短、可視距離和角度很有限。而 LED顯示屏具 有亮度高、 故障低、能耗少、使用壽命長、 顯示內(nèi)容多樣、 顯示方式豐富等優(yōu)點。1.2 LED 點陣顯示系統(tǒng)點陣顯示是集微電子技術(shù)、 計算機(jī)技術(shù)、 信息處理于一體的新型顯示方式。 由于 其具有色彩鮮艷,動態(tài)范圍廣,亮度高,壽命長,工作穩(wěn)定可靠等優(yōu)點。目前大 多數(shù)的公交車招牌都是采用固定的板塊顯示, 顯示的信息量少, 內(nèi)容固定, 修改 站點信息比較麻煩,不能快速、便捷的更新站點

4、信息。本文提出一種方案,采用 LED點陣顯示模塊,克服了上述缺點,不僅可以靜態(tài)的顯示公交車站點信息,而 且也可以通過動態(tài)滾動, 從而增加信息顯示的容量。 為了醒目, 還可以產(chǎn)生諸如 閃動、滾動等顯示效果。目前LED顯示屏的種類越來越多,從使用場合及亮度考慮可分為室內(nèi)與室外屏, 從掃描方式可分為動態(tài)掃描顯示屏和靜態(tài)掃描顯示屏。室外使用的交通誘導(dǎo)屏, 通常采用計算機(jī)同步控制的靜態(tài)掃描顯示,每個像素由幾個高亮LED發(fā)光管組成,可做成多色或全色。其優(yōu)點在于播放的內(nèi)容信息量大,實時性強(qiáng),且由于采 用靜態(tài)顯示,亮度高;其缺點是硬件電路復(fù)雜,成本高。室內(nèi)使用的由8X 8LED點陣拼成的顯示屏也有同步和異步之

5、分,同步控制顯示屏由計算機(jī)作為主控器, 異步控制顯示屏的主控器可采用單片機(jī)。單片機(jī)控制的單色顯示屏由于結(jié)構(gòu)簡 單,成本低廉,適合作為客車廣告屏。本文介紹的客車廣告屏屏系統(tǒng)是智能交通系統(tǒng)的一部分,它是利用先進(jìn)的顯示、 及通信等技術(shù)手段, 動態(tài)地、實時地顯示公交車的站點信息, 最大限度的提高公 交車站牌的信息顯示量。本系統(tǒng)采用的 STC89C516RD宏晶科技)單片機(jī)是新一 代增強(qiáng)型 8051 單片機(jī)標(biāo)準(zhǔn)的制定者,致力于提供滿足用戶需求的世界級高性能 單片機(jī)技術(shù),在業(yè)內(nèi)處于領(lǐng)先地位,銷售網(wǎng)絡(luò)覆蓋全國。在保證質(zhì)量的基礎(chǔ)上, 以極低的價格和完善的服務(wù)贏得了用戶的長期信賴。在廣受歡迎的STC89C5全系

6、列單片機(jī)的基礎(chǔ)上,現(xiàn)全力推出“1 個時鐘/ 機(jī)器周期”的單片機(jī) ,全面提升 8051單片機(jī)性能。用該單片機(jī)作為系統(tǒng)的中央控制單元,負(fù)責(zé)產(chǎn)生和控制掃描 信號、讀出顯示緩沖區(qū)的數(shù)據(jù)送給掃描驅(qū)動電路,使LED點陣屏按照一定的要求 顯示。根據(jù)設(shè)計要求,顯示方式要具有掉電存儲功能,因此,在單片機(jī)外圍電路 加上I2C總線的EEPROM利用單片機(jī)外部中斷功能檢測出來所需要的顯示方式, 并把它存儲在該EEPROI內(nèi),這樣,即使斷電顯示方式也仍然存儲在該 EEPROM 里面,單片機(jī)再重新讀取該 EEPRO里面的內(nèi)容,也就是斷電前的顯示方式。結(jié) 合KEIL軟件編程,實現(xiàn)了 PC機(jī)通信、控制界面以及安全措施,從而大

7、大豐富了 系統(tǒng)功能, 提高了系統(tǒng)的可操作性, 使達(dá)到交互式與智能化, 符合未來交通系統(tǒng) 智能化、網(wǎng)絡(luò)化的發(fā)展方向。 利用該系統(tǒng), 可以實現(xiàn)同一站牌不同方向客車站點 的靜態(tài)顯示、 動態(tài)顯示和定時顯示控制, 另外用來應(yīng)對交通突發(fā)事件, 作為應(yīng)急 告示,達(dá)到疏散交通,保護(hù)人們安全的目的。 設(shè)計時考慮到系統(tǒng)的擴(kuò)展加上升級模塊, 可以實現(xiàn)系統(tǒng)的遠(yuǎn)程升級; 加上公交車 到站時間預(yù)測模塊,可以預(yù)測到公交車到站的時間,方便行人;加上網(wǎng)絡(luò)模塊, 可以連接互聯(lián)網(wǎng),直接通過互聯(lián)網(wǎng)進(jìn)行控制,也為以后的智能交通打下基礎(chǔ)。2 LED 點陣顯示的理論基礎(chǔ)LED點陣顯示的基礎(chǔ)理論包括光電子學(xué)、半導(dǎo)體器件、數(shù)字電子電路、大規(guī)模

8、集 成電路、單片機(jī)及微機(jī)等各個方面, 既有硬件又有軟件。 上述各個領(lǐng)域都有自成 體系,本文無法一一盡述,只能以顯示屏為主線進(jìn)行討論,主要闡述了 LED器件 的應(yīng)用基礎(chǔ)和工作原理,以及 LED點陣模塊的構(gòu)成和工作原理。2.1 LED 器件的應(yīng)用基礎(chǔ)LED器件種類繁多。早期LED產(chǎn)品是單個的發(fā)光燈,隨著數(shù)字化設(shè)備的出現(xiàn),LED 數(shù)碼管和字符管得到了廣泛的應(yīng)用。LED發(fā)光燈可以分為單色發(fā)光燈、雙色發(fā)光燈、三色發(fā)光燈、面發(fā)光燈、閃爍發(fā) 光燈、電壓型發(fā)光燈等多種類型。按照發(fā)光燈強(qiáng)度又可以分為普通亮度發(fā)光燈、 高亮度發(fā)光燈等。LED發(fā)光燈的外形由PN結(jié)、陽極引腳、陰極引腳和環(huán)氧樹脂封裝外殼組成。其 核心部

9、分是具有注入復(fù)合發(fā)光功能的 PN結(jié)。環(huán)氧樹脂封裝外殼除具有保護(hù)芯片 的作用外,還具有透光聚光的能力,以增強(qiáng)顯示效果。LED器件通常用砷化傢(GaAS、磷化傢(GaP等半導(dǎo)體材料制成。當(dāng)向LED 器件施加正向電壓時, 器件內(nèi)部的電子與空穴直接復(fù)合而產(chǎn)生能量, 以光的形式 釋放出來,產(chǎn)生半導(dǎo)體發(fā)光。因此 LED的驅(qū)動就是如何使它的PN結(jié)處于正偏狀 態(tài),而且為了控制它的發(fā)光強(qiáng)度, 還要解決正向電流的調(diào)節(jié)問題。 具體的驅(qū)動方 法可以分為直流驅(qū)動、恒流驅(qū)動、脈沖驅(qū)動和掃描驅(qū)動等 2 。2.2 LED 點陣模塊 顯示單元( Display unit )由電路及安裝結(jié)構(gòu)確定的并具有顯示功能的器件組成LED顯

10、示屏的最小單元,也叫點陣顯示模塊。點陣顯示屏是由上萬個或幾十萬個 LED發(fā)光二極管組成,每個發(fā)光二極管稱為一 個像素。為了取得良好的顯示一致性并簡化器件結(jié)構(gòu), 八十年代以來出現(xiàn)了組合 型LED點陣顯示器,以發(fā)光二極管為像素,它用高亮度發(fā)光二極管芯陣列組合后, 環(huán)氧樹脂和塑模封裝而成,即所謂的點陣模塊。點陣模塊具有高亮度、功耗低、 引腳少、視角大、壽命長、耐濕、耐冷熱、耐腐蝕等特點。按照顏色的不同分為 單基色、雙基色和三基色三類,可顯示紅、黃、綠、藍(lán)、橙等顏色。按照點陣規(guī) 模大小分有 4X 4、4X 8、5X 7、5X 8、8X 8、16X 16、24X 24、32X 32、40X 40 等。按

11、照像素的直徑大小分有 © 3、© 3.75、© 5、© 10、© 20等。( a) 外部結(jié)構(gòu)( b) 內(nèi)部結(jié)構(gòu)圖1 8 X8點陣結(jié)構(gòu)圖1為8X8單基色點陣的結(jié)構(gòu)圖,從內(nèi)部結(jié)構(gòu)可以看出 8X8點陣共需要64個 發(fā)光二極管, 且每個發(fā)光二極管是放置在各行和列的交叉點上。 當(dāng)對應(yīng)的某一列 置高電平,另一列置低電平時,則在該行和列的交叉點上相應(yīng)的二極管就亮。LED顯示屏就是由若干個點陣模塊組成的,它通過一定的控制方式,就可以顯示 文字、文本、圖形、圖像、動畫等各種信息,以及電視、錄像信號。3 方案設(shè)計從前兩節(jié)的論述中可以看出LED點陣顯示技術(shù)已經(jīng)相當(dāng)成

12、熟。實現(xiàn)方案非常多。 本文要設(shè)計的是客車內(nèi)LED點陣顯示屏,根據(jù)客車內(nèi)的特殊環(huán)境,選擇方案時就 要考慮公交車的車身尺寸、 震動、 溫度等對顯示屏的影響, 以及客車內(nèi)電源的局 限性,為了節(jié)約電能,采用太陽能電池供電,就要使顯示屏功耗降到最低。3.1 顯示方案 根據(jù)論文的設(shè)計要求, 本文提出了以下幾種方案, 對比論證,選取較合適的方案。(1)CRT監(jiān)視器設(shè)計方案:在站牌出安裝一小型彩色監(jiān)視屏,將站點信息顯示在CRT監(jiān)視器上,供行人查閱。站點信息放在存儲器內(nèi),通過無線廣播的方式進(jìn) 行數(shù)據(jù)更新。 這種方案的優(yōu)點: 是成本比較低, 可以采用淘汰下來的電視機(jī)作為 監(jiān)視器;缺點是:耗電量巨大, CRT顯示器

13、在陽光下的顯示效果不理想。(2)LED點陣顯示屏設(shè)計方案:整個站牌由 LED顯示屏構(gòu)成,站點信息在點陣 屏幕上顯示,并且可以以靜態(tài)的方式固定顯示站點或者以動態(tài)的方式輪流顯示所 有的站點。系統(tǒng)通過RS485或者互聯(lián)網(wǎng)進(jìn)行更新、升級。這種方案的優(yōu)點是:成 本相對比較低廉, 能及時動態(tài)的顯示站點信息, 顯示的信息容量也比較大, 便于 遠(yuǎn)程控制和升級。缺點是:受目前LED顯示技術(shù)的限制,對于圖像和視頻顯示的 效果不是很理想。( 3)液晶顯示器(或者等離子)設(shè)計方案:由液晶(等離子)顯示器構(gòu)成站牌, 不但能顯示站點信息, 還可以顯示圖象或者視頻信息, 站點信息經(jīng)過專用電纜或 者互聯(lián)網(wǎng)絡(luò)傳送。 這種方案的

14、優(yōu)點是能在有限的站牌上顯示更多的信息, 尤其是 圖像和視頻信息,缺點是成本太高,數(shù)據(jù)傳輸量巨大,不適合推廣使用。通過比較上述三種方案,可以發(fā)現(xiàn)LED點陣顯示方案有很大的可行性,而且其系 統(tǒng)的升級也比較方便,便于推廣使用,適應(yīng)現(xiàn)代化建設(shè)的發(fā)展需求。3.2 控制電路方案控制電路有兩種選擇,數(shù)字電路控制和 CPLD控制。數(shù)字電路控制的原理是LED點陣顯示屏由單片機(jī)控制電路和顯示驅(qū)動電路兩大 部分組成,一般的單片機(jī)控制部分采用 ATME公司的51系列單片機(jī),考慮到它 的ROM目對較小,這里采用增強(qiáng)型的51單片機(jī)STC89C516RD宏晶科技)單片機(jī), 顯示驅(qū)動部分由16片8X 8 LED點陣模塊和相應(yīng)

15、的驅(qū)動電路組成, 位碼掃描信號 和段碼信號都有單片機(jī)提供。由CPLD器件組成的控制電路,具有很高的可靠性和設(shè)計靈活性,所實現(xiàn)的顯示 效果樣式較多,但采用可編程邏輯器件 CPLD的設(shè)計成本相對較高。由于采用由單片機(jī)組成的控制電路已能完成設(shè)計的要求,且其性價比要優(yōu)于采用由CPLD組成的控制電路。因此,本文采用前者作為控制電路。3.3系統(tǒng)框圖整個系統(tǒng)由兩大模塊組成:主控制單元和輔助控制單元模塊。其框圖如下所示圖2主控制單元結(jié)構(gòu)框圖圖2為主控制單元結(jié)構(gòu)框圖,它主要完成的功能是LED點陣的顯示和定時顯示控 制。DS1302為時鐘芯片,為顯示準(zhǔn)確的時間; DS18B02是溫度控制芯片,顯示 車內(nèi)的溫度;A

16、T24C256是容量為256Kbit的E2R0M用來保存掃描方式的數(shù)據(jù)的 信息,以及廣告信息和更新廣告信息等其它待顯示的信息。 RS232通信模塊用來 更新顯示信息和升級系統(tǒng)。4系統(tǒng)硬件設(shè)計4.1顯示屏驅(qū)動顯示電路顯示屏分成屏體和控制器兩部分,屏體的主要部分是顯示陣列以及有行列驅(qū)動電 路。根據(jù)安裝環(huán)境的空間以及考慮成本造價, 決定使用多大尺寸的顯示屏, 從而 決定了顯示模塊的數(shù)量,這里以8X8點陣為例,模塊單位為256點陣,即需要 16塊點陣模塊,如圖 4示。漢字一般是 256點陣,那么該屏可以一次顯示 4個 漢字。采用掃描方式進(jìn)行顯示時, 分成兩步, 對于每行有一個行驅(qū)動器, 各行的同名列

17、共用一個列驅(qū)動器, 由單片機(jī)給出行選通信號, 從第一行開始依次對各行進(jìn)行掃 描,對于列,根據(jù)各列所存數(shù)據(jù),確定相應(yīng)的列驅(qū)動器是否將該列與行接通,如 果接通,那么該行該列的LED將亮,以同樣方法進(jìn)行顯示全部各行都掃描一遍之 后(一個掃描周期 ) ,再從第一行開始, 進(jìn)行下一個周期的掃描。 只要一個掃描周 期的時間比人眼 1/25 秒的滯留時間短,就不會感覺出閃爍現(xiàn)象。 顯示數(shù)據(jù)從驅(qū)動芯片到顯示模塊是以并行方式傳輸?shù)模?但顯示數(shù)據(jù)從單片機(jī)到驅(qū) 動芯片是以串行方式傳輸?shù)模?由于串行傳輸?shù)目刂齐娐泛唵危?設(shè)計容易, 缺點是 串行數(shù)據(jù)傳輸需要很長的時間, 不過這可以由軟件來彌補(bǔ), 也可考慮單片機(jī)的控 制

18、速度。顯示驅(qū)動電路由74HC595組成。74HC595俞入端是8位串行移位寄存器,輸出端 是8位并行緩存器具有鎖存功能。由于 CLK LOAD端相連,而數(shù)據(jù)線分開,這樣 在同一脈沖下,行列的數(shù)據(jù)可以同時進(jìn)行傳入,行列數(shù)據(jù)準(zhǔn)備好后,啟動 LOAD 信號使所有數(shù)據(jù)同時輸出并鎖存,這樣的設(shè)計較之傳統(tǒng)方法提高了 4倍的速度, 占用I/O 口少,由于CLK LOAD引線較長,為避免線間干擾,在驅(qū)動6片74Ls595 之后再加驅(qū)動芯片74L5244以驅(qū)動下一級驅(qū)動電路。行列掃描驅(qū)動相當(dāng)于對發(fā)光管脈沖供電,要獲得與直流驅(qū)動方式相當(dāng)?shù)陌l(fā)光強(qiáng) 度,脈沖驅(qū)動電流的平均電流 I1 與直流電流 I2 相同,它們與脈沖

19、電流幅值 If 的關(guān)系為If=Ton/Th,X I1是掃描周期,Ton是導(dǎo)通時間,占空比是1/16,掃描 頻率應(yīng)大于24HZ I取8mA那么1=8 Xl6=128mA發(fā)光管壓降取2V,那么每個 發(fā)光管應(yīng)串接 50的電阻。行驅(qū)動最大瞬間電流能達(dá)到 1 28X 80=1 0.240A。 LED顯示屏驅(qū)動電路的設(shè)計,與所用控制系統(tǒng)相配合,通常分為動態(tài)掃描型驅(qū)動 及靜態(tài)鎖存型驅(qū)動二大類。以下就動態(tài)掃描型驅(qū)動電路的設(shè)計為例為進(jìn)行分析: 動態(tài)掃描型驅(qū)動方式是指顯示屏上的 4行、8行、16行等n行發(fā)光二極管共用一 組列驅(qū)動寄存器,通過行驅(qū)動管的分時工作,使得每行LED的點亮?xí)r間占總時間的1/n ,只要每行的

20、刷新速率大于50Hz利用人眼的視覺暫留效應(yīng),人們就可以 看到一幅完整的文字或畫面。常規(guī)型驅(qū)動電路的設(shè)計一般是用串入并出的通用集 成電路芯片如74HC595或MC14094等作為列數(shù)據(jù)鎖存,以8050等小功率NPN三 極管為行驅(qū)動,而以達(dá)林頓三極管如 TIP127等作為行掃描管。如動態(tài)掃描型驅(qū) 動方式是指顯示屏上的4行、8行、16行等n行發(fā)光二極管共用一組列驅(qū)動寄存 器,通過行驅(qū)動管的分時工作,使得每行 LED的點亮?xí)r間占總時間的1/n,只要 每行的刷新速率大于50Hz,利用人眼的視覺暫留效應(yīng),人們就可以看到一幅完 整的文字或畫面。常規(guī)型驅(qū)動電路的設(shè)計一般是用串入并出的通用集成電路芯片 如74H

21、C595或 MC14094等作為列數(shù)據(jù)鎖存,以8050等小功率NPN圖3顯示驅(qū)動電路三極管為列驅(qū)動,而以達(dá)林頓三極管如TIP127等作為行掃描管。如以單色點陣、 16行X 64列為一個基本單元,則需用8片74HC595 16個行掃描管,其工作原 理為:將八片74HC595級連,共用一個串行時鐘CLK及數(shù)據(jù)鎖存信號STR當(dāng)?shù)?一行需要顯示的數(shù)據(jù)經(jīng)過8X 8=64個CLK時鐘后將全部移入74HC595中,此時產(chǎn) 生一個數(shù)據(jù)鎖存信號STR使數(shù)據(jù)鎖存在74HC595的后級鎖存器中,同時由行掃 描控制電路產(chǎn)生信號使第一行掃描管導(dǎo)通,相當(dāng)于第一行LED的正端都接高平,顯然第一行LED管子的亮、滅取決于74

22、HC595中所鎖存的信號;在第一行LED管子點亮的同時,在74HC59沖移入第二行需要顯示的數(shù)據(jù),隨后將其鎖存,并 同時由行掃描控制電路將第一行掃描管關(guān)閉而接通第二行, 使第二行LED管子點 亮以此類推,當(dāng)?shù)谑袙呙柽^后再回到第一行,只要掃描速度足夠高,就 可形成一幅完整的文字或圖像,其工作時序見圖 4。cLK_rLRTLTLSTR jwin_LT圖4串行移位工作時序圖4.2顯示屏主控制電路在控制領(lǐng)域51系列、PIC系列以及AVF系列單片機(jī)是常用的微型控制器,每個 系列都有自己的優(yōu)缺點,在某些方面都有自己的長處。在具體的設(shè)計當(dāng)中要綜合 考慮,如單片機(jī)的資源是否滿足系統(tǒng)要求,系統(tǒng)是否有嚴(yán)格的速

23、度要求,系統(tǒng)對控制器的抗干擾能力,硬件的加密性,外圍電路是否簡單,是否有比較齊全的成 熟的開發(fā)、調(diào)試工具,如果要生產(chǎn)的話,則還要考慮價格和供貨渠道等因素。控制器的比較及選型PIC系列單片機(jī):PIC單片機(jī)采用精簡指令使其執(zhí)行效率大為提高。PIC系列8位CMO單片機(jī)具有獨特的RISC結(jié)構(gòu),數(shù)據(jù)總線和指令總線分離的哈佛總線(Harvard)結(jié)構(gòu),使指令具有單字長的特性,且允許指令碼的位數(shù)可多于8位的數(shù)據(jù)位數(shù),這與傳統(tǒng)的采用 CISC結(jié)構(gòu)的8位單片機(jī)相比,可以達(dá)到2:1的代 碼壓縮,速度提高4倍。PIC有優(yōu)越開發(fā)環(huán)境。PIC在推出一款新型號的同時推 出相應(yīng)的仿真芯片,所有的開發(fā)系統(tǒng)由專用的仿真芯片支持

24、,實時性非常好。其引腳具有防瞬態(tài)能力,通過限流電阻可以接至220V交流電源,可直接與繼電器 控制電路相連,無須光電耦合器隔離,給應(yīng)用帶來極大方便。 PIC 以保密熔絲來 保護(hù)代碼,用戶在燒入代碼后熔斷熔絲,別人再也無法讀出,除非恢復(fù)熔絲。目 前,PIC采用熔絲深埋工藝,恢復(fù)熔絲的可能性極小。自帶看門狗定時器,可以 用來提高程序運行的可靠性。AVR系列單片機(jī):是一種新型的單片機(jī)。運行速度快,一個時鐘周期執(zhí)行一條指 令。硬件應(yīng)用哈佛 (Harvard) 結(jié)構(gòu),具有預(yù)取指令功能,即在執(zhí)行一條指令時, 預(yù)先把下一條指令取進(jìn)來,使得指令可以在一個時鐘周期內(nèi)執(zhí)行。AVR單片機(jī)是多累加器型,數(shù)據(jù)處理速度快。

25、超功能精簡指令,具有 32 個通用工作寄存器, 相當(dāng)于有 32 條立交橋,可以快速通行。相當(dāng)多的單片機(jī)只有一個累加器,就像 一條獨木橋,所有事都要通過累加器,速度慢。AVF單片機(jī)系列中有128B4KB的SRAM!態(tài)隨機(jī)數(shù)據(jù)存儲器,可靈活使用指令運算、存放數(shù)據(jù),中斷響應(yīng)速度 快。AVR像 8051 一樣,有多個固定中斷向量入口地址,可快速響應(yīng)中斷。高級C語言編程效率高。從高級語言 C代碼完成同一任務(wù)實例來比較,8 MHz AVR單片 機(jī)的速度相當(dāng)于224 MHZ的80C51單片機(jī),AVR比80C51快28倍。AVR是低功耗 單片機(jī),具有休眠省電功能(Power Down及閑置(Idle)低功耗功

26、能。一般耗電在 12.5 mA;對于典型功耗情況, WD關(guān)閉時為100 nA,更適用于電池供電的應(yīng) 用設(shè)備。有的器件最低1.8 V即可工作。可多次燒寫的Flash,且具有多重密碼 保護(hù)鎖死(Lock)功能。I/O 口功能強(qiáng)、驅(qū)動能力大,具有輸入/輸出、三態(tài)高阻 輸入,也可設(shè)定內(nèi)部拉高電阻作輸入端的功能, 以便于應(yīng)用到各種所需的場合 (多 功能 I/O 口)。51系列單片機(jī): 51系列是指是兼容 Intel 公司51指令集的單片機(jī)系列的統(tǒng)名稱。 這種單片機(jī)所包括的硬件資源有:(1) 一個 8位的微處理器;(2) 片內(nèi)數(shù)據(jù)存儲器RAM用以存放可以讀/寫的數(shù)據(jù),如運算的中間結(jié)果、最 終結(jié)果以欲顯示的

27、數(shù)據(jù)等;(3) 片內(nèi)程序存儲器ROM/EPROM用以存放程序、一些原始數(shù)據(jù)和表格;(4) 四個8位并行I/O接口 P0P3,每個口可以用作輸入,也可以用作輸出;(5) 兩個(或三個)定時器 /計數(shù)器,每個定時器 /計數(shù)器都可以設(shè)置成計數(shù)方 式,用以對外部事件進(jìn)行計數(shù), 也可以設(shè)置成定時方式, 并可以根據(jù)計數(shù)或定時的結(jié)果實現(xiàn)計算機(jī)控制;(6) 五(或六個)個中斷源的中斷控制系統(tǒng);(7) 個全雙工UART接口(通用異步接收發(fā)送器)的串行I/O ,用于實現(xiàn)單片 機(jī)之間或單片機(jī)與微機(jī)之間的串行通信;( 8)片內(nèi)振蕩器和時鐘產(chǎn)生電路,但石英晶體和微調(diào)電容須要外接??梢钥闯?MCS-51系列單片機(jī)也是一款

28、功能強(qiáng)大的單片機(jī)。STC89C51RC/RD+列單片機(jī)是宏晶科技推出的新一代超強(qiáng)抗干擾 /高速/低功 耗的單片機(jī),指令代碼完全兼容傳統(tǒng) 8051 單片機(jī), 12 時鐘 / 機(jī)器周期和 6 時鐘/機(jī)器周期可任意選擇,最新的 D版本內(nèi)部集成MAX81C專用復(fù)位電路。 特點如下:(1) .增強(qiáng) 6時鐘/機(jī)器周期, 12時鐘/機(jī)器周期 8051CPU;(2) 工作電壓:5.5V3.4V( 5V單片機(jī))/3.8V2.0V ( 3V 單片機(jī));(3) 工作頻率范圍:040MHz相當(dāng)于普通8051的080MHz實際工作頻率可達(dá) 48MHz;(4) 用戶應(yīng)用程序空間 4K/8K/13K/16K/20K/32K

29、/64K 字節(jié);(5) 片上集成 1280字節(jié)/512 字節(jié) RAM;(6) 通用 I /O 口( 32/36 個)復(fù)位后為: P1/P2/P3/P4 是準(zhǔn)雙向口 /弱上拉(普 通8 051傳統(tǒng)I /O 口),P0 口是開漏輸出,作為總線擴(kuò)展用時,不用加上拉電 阻,作為 I /O 口用時,需加上拉電阻;(7) ISP (在系統(tǒng)可編程)/IAP (在應(yīng)用可編程),無需專用編程器/仿真,可 通過串口( P3.0/P3.1 )直接下載用戶程序,8K程序3秒即可完成一片;(8) EEPRO功能;( 9)看門狗;(10) 內(nèi)部集成MAX810專用復(fù)位電路(D版本才有),外部晶體20M以下時, 可省外部復(fù)

30、位電路;(11) 共3 個16位定時器/計數(shù)器,其中定時器 0還可以當(dāng)成2個8位定時器 使用;(12) 外部中斷4路,下降沿中斷或低電平觸發(fā)中斷,Power Down模式可由外部 中斷低電平觸發(fā)中斷方式喚醒;(13) 通用異步串行口( UART,還可用定時器軟件實現(xiàn)多個 UART(14) 工作溫度范圍:075C / 40+85C;( 15)封裝: PDIP-40, PLCC-44, PQFP-44。從以上幾種型號單片機(jī)的比較中可以看出,PIC單片機(jī)、AVR單片機(jī)雖然在很多方面都有其特點,如在運行速度上,內(nèi)部資源的配置等。但因其價格高,開發(fā)工 具不及使用51系列單片機(jī)齊全,再考慮本系統(tǒng)對 CPU

31、的要求并不是很高,綜合 考慮還是選用已經(jīng)普及的 51 內(nèi)核的單片機(jī)。4.2.2 EEPROM存儲器的選用為了能將系統(tǒng)所設(shè)定的常數(shù), 如更新的站點信息, 設(shè)定的定時顯示時間在系統(tǒng)掉 電之后仍能恢復(fù),在設(shè)計時必須考慮將常數(shù)保存起來。由于STC89C516RD+片機(jī)片內(nèi)沒有EEPRQM須采用外部擴(kuò)展方式。在系統(tǒng)的設(shè)計過程中,為了取得較 大的系統(tǒng)余量,常采取存儲芯片 AT24C256按照16X16的點陣來算,可以存儲 1000個字符,對于一個客車廣告屏屏來說容量已經(jīng)足夠。AT24C256接口采用I2C總線接口方式。I2C總線是一種用于IC器件之間連接的 二線制總線。 連接總線的器件的輸出必須是集電極或

32、漏極開路, 以具有線“與” 功能。 I2C 總線的數(shù)據(jù)傳送速率在標(biāo)準(zhǔn)工作方式下為 100kbit/s ,在快速方式下, 最高傳送速率可達(dá)400kbit/s。它通過SDA(串行數(shù)據(jù)線)及SCL(串行時鐘線) 兩根線和連在總線上的上位機(jī)進(jìn)行通信,并根據(jù)地址識別每個器件。采用 I2C 總線標(biāo)準(zhǔn)的單片機(jī)或 IC 器件,其內(nèi)部不僅有 I2C 接口電路,而且將內(nèi)部各單元 電路按功能劃分為若干相對獨立的模塊, 通過軟件尋址實現(xiàn)片選, 減少了器件片 選線的連接。CPU不僅能通過指令將某個功能單元電路掛靠或摘離總線,還可對 該單元的工作狀況進(jìn)行檢測,從而實現(xiàn)對硬件系統(tǒng)既簡單又靈活的擴(kuò)展與控制。表 1 24C25

33、6 的管腳介紹營腳名稱4功能心AO. AK宮2器件地址選擇卞串行數(shù)據(jù)f地址門&右串行時鐘農(nóng)WFQVCS+ 1.8V6.0V工作赳壓心GNDt423控制單元和存儲單元電路用PC機(jī)實現(xiàn)的主要功能包括單片機(jī)顯示子系統(tǒng)的(選擇顯示方式選擇,包括靜 態(tài)、閃動、滾動、打字等),滾動方向選擇(包括上下滾動和左右滾動),動態(tài) 顯示速度調(diào)節(jié)(即文字閃動頻率、滾動速度、打字 ),顯示速度等。顯示采用定 時器中斷方式進(jìn)行行掃描,每次中斷顯示一行,定時中斷時間為1.25ms,這樣整屏的刷新率為50Hz,因而無閃爍感。實現(xiàn)動態(tài)顯示速度調(diào)節(jié)的方法通常是改 變定時器的中斷時間,但是當(dāng)顯示速度很慢的時候,該方法容易使

34、整屏的刷新率 降低,從而使顯示內(nèi)容出現(xiàn)閃爍。因此,本設(shè)計采用一種“軟定時”方法,即在 程序中命名一個變量作為“軟定時器”,以用來設(shè)定兩次動態(tài)顯示的時間間隔。 在對定時中斷調(diào)用計數(shù)時,如果調(diào)用次數(shù)達(dá)到設(shè)定值,則改變顯示內(nèi)容。為保證 能夠正常顯示,“軟定時器”的設(shè)定值必須大于整屏顯示周期。由于顯示屏每行顯示1.25ms,整屏顯示周期為20ms考慮到余量的情況,可將軟定時器的設(shè)定 值定在大于30ms如此循環(huán)計數(shù),即可實現(xiàn)動態(tài)顯示。“軟定時器”的設(shè)定值 可以通過上位機(jī)PC機(jī)來改變,這樣既可實現(xiàn)LED動態(tài)顯示的速度調(diào)節(jié),又可保 持顯示內(nèi)容的流暢和無閃爍感。以上提到的靜態(tài)、閃動、滾動和打字等4種顯示方式,

35、實際上是單片機(jī)定時中斷 程序進(jìn)行行掃描處理的不同方法。下面將分別說明如何實現(xiàn)這4種顯示方式。靜 態(tài)顯示只需在定時中斷處理程序中從顯示緩沖區(qū)調(diào)入相應(yīng)的一行顯示數(shù)據(jù),然后選中該行即可實現(xiàn)該行的顯示,如此循環(huán),便可顯示整個內(nèi)容。閃動顯示與此類似,不同的是要間隔一個“軟定時器”的定時時間, 在行掃描時, 行移位寄存器的D端打入的數(shù)據(jù)全為0,可使得整屏不顯示,以確保黑屏的時間 與顯示當(dāng)然時間相等,從而實現(xiàn)漢字或圖符的閃動顯示。 滾動顯示要求需要顯示的內(nèi)容每隔一定時間向指定方向這里以從右向左為例移 動一列,這樣顯示屏可以顯示更多的內(nèi)容。 為此, 需要在下次移動顯示之前對顯 示緩沖區(qū)的內(nèi)容進(jìn)行更改, 從而完

36、成相應(yīng)點陣數(shù)據(jù)的移位操作。 具體操作方法是: 設(shè)置一個顯示緩沖區(qū),該區(qū)應(yīng)包括兩部分,一部分用來保存當(dāng)前LED顯示屏上顯 示的 4 個漢字點陣數(shù)據(jù);另一部分為點陣數(shù)據(jù)預(yù)裝載區(qū),用來保存即將進(jìn)入 LED 顯示屏的 1個漢字的點陣數(shù)據(jù)。 滾動指針始終指向顯示屏的最右邊原點。 當(dāng)滾動 指針移動到需要顯示的點陣數(shù)據(jù)存儲區(qū)的第 1 個漢字的首地址時, 內(nèi)容。需要注 意的是,要確保該操作能在1.25ms的中斷時間內(nèi)完成(這里STC89C516RD+用 24MHz晶振實驗證明可以實現(xiàn)該操作)。這樣,在一個掃描周期后,整個漢字將 左移一列, 而顯示緩沖區(qū)的內(nèi)容也同時更改。 由于預(yù)裝載區(qū)保存了 1 個漢字點陣 數(shù)

37、據(jù),即16X 16點陣,所以當(dāng)前顯示緩沖區(qū)的內(nèi)容只能移動 16列。當(dāng)下一個滾 動到來時, 滾動指針將移動到點陣數(shù)據(jù)存儲區(qū)的下一個漢字的首地址, 并在預(yù)裝 載區(qū)存入該漢字的點陣數(shù)據(jù)。 然后重復(fù)執(zhí)行上述操作便可實現(xiàn)滾動顯示。 特殊字 符或圖形的顯示與此類似, 這里不再贅述。 打字顯示要求漢字在顯示屏上按從左 到右的順序一個個的出現(xiàn),如同打字的效果。設(shè)計時可采用如下方法:首先將 LED顯示屏對應(yīng)的顯示緩沖區(qū)全部清零,即 LED顯示空白,然后每間隔一個“軟 定時器”設(shè)定的動態(tài)顯示時間, 顯示緩沖區(qū)依次加入一個漢字點陣數(shù)據(jù)并進(jìn)行掃 描顯示,這樣就可達(dá)到打字顯示的效果。DS1302慢速充電時鐘芯片包括實時

38、時鐘/日歷和31字節(jié)的靜態(tài)RAM它經(jīng)過一個 簡單的串行接口與微處理器通信。實時時鐘 /日歷提供秒、分、時、日、周、月 和年等信息。對于小于 31 天的月,月末的日期自動進(jìn)行調(diào)整,還包括了閏年校 正的功能。時鐘的運行可以采用 24小時或帶AM(上午)/PM (下午)的12小時 格式。使用同步串行通信,簡化了 DS1302與微處理器的通信。與時鐘/RAM通信 僅需三根線:(1) RST(復(fù)位)、(2) D0(數(shù)據(jù)線)和(3) SCLK(串行時鐘)。 數(shù)據(jù)可以以每次一個字節(jié)或多達(dá)31字節(jié)的多字節(jié)形式傳送至?xí)r鐘/RAM或從其中 送出。DS1302設(shè)計成能在非常低的功耗下工作,消耗小于 1微瓦的功率便能

39、保 存數(shù)據(jù)和時鐘信息。傳感器部分采用美國dallas半導(dǎo)體公司的DS18B20溫度測量范圍為-55C+125C, DS18B2C是一種繼DS182C之后新推出的一種改進(jìn)型智能溫度傳感器。 與傳統(tǒng)的熱敏電阻相比,它能夠直接讀出被測的溫度。DS18B2C是支持“一線總線”接口的溫度傳感器,對DS18B2C讀出或?qū)懭胄畔H需要一條線路,因此電路 連接簡單, 一條線上可同時擴(kuò)展多個傳感器, 以增加測量的準(zhǔn)確性, 該傳感器支 持3.0V5.5V的電壓范圍,可靠性高,體積小,更經(jīng)濟(jì),更靈活。4.2.4 遠(yuǎn)程通信電路 在串行通訊時,要求通訊雙方都采用一個標(biāo)準(zhǔn)接口,使不同 的設(shè)備可以方便地 連接起來進(jìn)行通訊。

40、 RS-232-C 接口(又稱 EIA RS-232-C )是目前最常用的一 種串行通訊接口。在RS-232-C中任何一條信號線的電壓均為負(fù)邏輯關(guān)系。即:邏輯“ 1”,-5 -15V;邏輯“ 0” +5 +15V。噪聲容限為2V。即要求接收器能識別低至+3V 的信號作為邏輯“ 0”,高到-3V的信號作為邏輯“ 1”。RS-232-C接口連接器一 般使用型號為DB-25的25芯插頭座,通常插頭在 DCE端,插座在DTE端。一些 設(shè)備與PC機(jī)連接的RS-232-C接口,因為不使用對方的傳送控制信號,只需三條 接口線,即“發(fā)送數(shù)據(jù)”、“接收數(shù)據(jù)”和“信號地”。所以采用 DB-9的9芯 插頭座,傳輸線

41、采用屏蔽雙絞線。由 RS-232C標(biāo)準(zhǔn)規(guī)定在碼元畸變小于4%的情 況下,傳輸電纜長度應(yīng)為 50英尺,其實這個 4%的碼元畸變是很保守的,在實際 應(yīng)用中,約有 99%的用戶是按碼元畸變 10-20%的范圍工作的, 所以實際使用中最 大距離會遠(yuǎn)超過50英尺。電路原理如圖11所示,使用RS-232C的4、6和1、7、 8分別進(jìn)行短接,將2、3腳引出通過MAX23電平轉(zhuǎn)換后連接到單片機(jī)的串口, 在通信的時候, 盡量要選用低的波特率, 這樣不容易出現(xiàn)錯誤, 單片機(jī)的晶振頻 率最好選用11.0592MHZ有利于正確傳輸數(shù)據(jù)12。匸11國T1IMT2IWiiorrt ucfcrt noin !3OTTC1+

42、a4L 1-:戶一Ldq mn gSwce oHlU_MTU_KXD9 T+-PC_L2m Cl 也 Cl AL JL Ji1 jIt#0'PG I 3DCJLACl BLEDly薛|_JUEE 0O"上上J3VCC 9 o-ou12E片1M圖5遠(yuǎn)程通信電路5系統(tǒng)軟件設(shè)計5.1顯示屏主體顯示本設(shè)計采用LED點陣顯示屏設(shè)計方案,初步實現(xiàn)了在同一公交站牌顯示不同公交 車次,以及動態(tài)和靜態(tài)的顯示。程序在初始化后將存儲在ROM內(nèi)部的站點信息讀出,送至單片機(jī)的 RAM初步的 進(jìn)行漢字點陣轉(zhuǎn)換,轉(zhuǎn)換后的數(shù)據(jù)再經(jīng)過顯示效果處理, 比如站點信息的左移顯 示、右移顯示、上下移動顯示、滾動顯示、

43、等等。最后送入數(shù)據(jù)緩沖區(qū),調(diào)用顯 示子程序,完成廣告信息的顯示。主程序的流程圖如圖12所示。顯示子程序的任務(wù)是將緩沖區(qū)的數(shù)據(jù)讀出,然后送到點陣屏顯示。點陣顯示的原理是按照列進(jìn)行選擇,然后通過串并轉(zhuǎn)換,將一列的顯示數(shù)據(jù)送至選擇的列排點 陣中,然后選擇下一列,重復(fù)這樣的步驟,就可以實現(xiàn)數(shù)據(jù)的顯示。顯示子程序 的流程圖如圖13所示。初始化判磐鍵謨?nèi)OMfe據(jù)送入顯示緩沖區(qū)-調(diào)用顯幣莽束口圖6主程序流程圖圖7顯示流程圖5.2顯示屏顯示效果顯示添加上效果處理后,增添了動態(tài)效果,能達(dá)到更好的顯示效果。主程序在開 始的時候設(shè)置要顯示的效果,在顯示效果子程序中,程序判斷需要顯示的效果后 調(diào)用不同的顯示效果處

44、理程序,對緩沖區(qū)內(nèi)的數(shù)據(jù)進(jìn)行效果處理, 最后再送入顯 示緩沖區(qū),等待顯示調(diào)用。其程序流程圖如圖 14所示。顯示效果選檸“圖8顯示效果流程圖5.3遠(yuǎn)程通信設(shè)計在遠(yuǎn)程通信程序中單片機(jī)主要完成接收 PC機(jī)通過串口發(fā)送過來的公交車站點數(shù) 據(jù)。采用中斷接收方式。在中斷服務(wù)子程序中,為了區(qū)別所接收的信號是聯(lián)絡(luò)信 號還是字節(jié)數(shù)、是數(shù)據(jù)還是校驗和,需要對接收到的數(shù)據(jù)進(jìn)行辨別。 首先在主程 序開始中進(jìn)行設(shè)定,若接受到的是01H,則判定為接收聯(lián)絡(luò)信號;接收到的是02H, 則判定為接收命令信號;若接收到的是 03H,則判定為接收數(shù)據(jù)信號;接收到的 是04H,判定為接收數(shù)據(jù)開始標(biāo)志信號;接收到 05H,判定為結(jié)束接收

45、數(shù)據(jù)標(biāo)志 信號13。程序在初始化后,首先調(diào)用單片機(jī)內(nèi)部ROh區(qū)存儲的站點信息,當(dāng)有遠(yuǎn)程通信的 數(shù)據(jù)到來時候,先將接收到的數(shù)據(jù)送到單片機(jī)內(nèi)部的數(shù)據(jù)緩沖區(qū),進(jìn)行數(shù)據(jù)辨別 和處理之后,再送到外部的E2 ROh中,將這些處理之后,再開始調(diào)用外部存儲 器的站點信息。單片機(jī)遠(yuǎn)程通信程序的流程圖如圖16所示。設(shè)置STC89C516RD+串行口工作于第3種方式:9位異步傳輸,波特率由定時器 1的溢出率決定。數(shù)據(jù)幀共12位,四個用于起停和命令標(biāo)志位,8位數(shù)據(jù)放在四 位標(biāo)志位之后,接收時存入 RB8發(fā)送時取TB8中的值,由硬件自動完成。波特 率設(shè)定為9600bps,串行口初始化后,需有一個時間延遲再接收數(shù)據(jù),數(shù)據(jù)接收 完后也需一個時間延遲后再轉(zhuǎn)入接收狀態(tài)。在串行通信RS232收發(fā)器控制方面,平時置P1.0為低,使串行口處于偵

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論