天天做天天爱天天爽综合网-在线永久免费观看黄网站-国产69久久精品成人看-久久久久久久久无码精品亚洲日韩

產(chǎn)品 求購 供應(yīng) 文章 問題

0431-81702023
LED
基于STC89C54RD+單片機的點陣LED顯示屏的設(shè)計

摘要:以單片機系統(tǒng)組成的點陣LED顯示屏開發(fā)過程.系統(tǒng)采用上一下位機的結(jié)構(gòu)構(gòu)建,上位機PC可 通過串行通信接口實現(xiàn)對下位機LED顯示系統(tǒng)顯示參數(shù)的設(shè)定.下位機以LED屏的顯示電路和單片機控 制電路為核心,實現(xiàn)點陣LED屏以多樣化的方式顯示各種信息的功能,同時可實現(xiàn)本地溫度采集、顯示和 本地時間實時顯示的功能.

關(guān)鍵詞:點陣LED;串行移位;12C;單片機;上位機.

LED電子顯示屏是近年來得到廣泛應(yīng)用的 重要信息設(shè)備.這種顯示屏具有耗電省、成本低、 清晰度高、壽命長、顯示內(nèi)容的信息量大,外形美 觀大方,操作使用方便靈活,用戶可隨時任意自行 編輯修改顯示內(nèi)容,顯示方式圖文并茂等優(yōu)點,因 此被廣泛應(yīng)用于商場、學(xué)校、銀行、郵局….

1系統(tǒng)的總體結(jié)構(gòu)

系統(tǒng)采用上位機——下位機的結(jié)構(gòu)搭建,上 位機為PC機,通過串行通信接口與下位機顯示 系統(tǒng)實現(xiàn)交互,能夠?qū)崿F(xiàn)字符串的修改、顯示方式 的設(shè)定、時間的設(shè)置等功能;下位機系統(tǒng)由核心 板、顯示板兩個模塊組成.下位機系統(tǒng)由單片機控 制LED點陣顯示屏的顯示,漢字顯示采用16×16 點陣模式,并能夠?qū)崿F(xiàn)屏幕顯示內(nèi)容的實時更改; 采用動態(tài)顯示,實現(xiàn)字符從下往上、從右往左滾動 等動態(tài)顯示效果;實時采集并顯示周圍環(huán)境的溫 度;顯示當(dāng)前的時間與13期.

2點陣LED顯示屏系統(tǒng)的硬件結(jié)構(gòu)

2.1微控制器選型

MCU是整個顯示系統(tǒng)的核心部件,系統(tǒng)的整體性能很大程度上取決于MCU的先進(jìn)性和靈活 性.本系統(tǒng)選用STC公司的s1℃89C54RD+增強 型51單片機.

STC89C54RD+單片機具有提高MCU的運 行速度,運行穩(wěn)定,價格便宜,良好的性價比等特 點.其支持的最高時鐘為80M,這樣能最大限度地 提高MCU的運行速度;具有雙倍速的功能,支持 6時鐘周期模式運行;具有ISP在線系統(tǒng)編程功 能,大大縮短開發(fā)復(fù)雜度,同時可節(jié)省購買編程器 的額外投人;STC89C54RD+單片機內(nèi)部包括 16KBFlash程序存儲器ROM、lKB的數(shù)據(jù)存儲 器RAM,與普通的8051單片機完全兼容,而51 單片機的開發(fā)環(huán)境也很成熟:如Keil C語言被廣 .泛地應(yīng)用于新產(chǎn)品的開發(fā),這對于縮短系統(tǒng)開發(fā) 周期有著很重要的意義.

22外擴數(shù)據(jù)存儲器

在系統(tǒng)中需要板載漢字字庫.STC89C54RD +單片機內(nèi)部只有lKBRAM,最多只能暫存 32個漢字的點陣數(shù)據(jù),一定程度上限制了程序?qū)? 硬件資源的利用,所以必須外擴RAM,擴展系統(tǒng) 的可應(yīng)用性.

單片機與外擴存儲器連接的電路如圖I所示.系統(tǒng)巾選用256KBFlash ROM—— W29C020來存儲一個標(biāo)準(zhǔn)的16×16點陣漢字 霹.弱時選弱32KBHN62256來擴愛努部數(shù)據(jù) 存儲器,用于存儲顯示緩沖區(qū)的數(shù)據(jù)和程序運行 對存儲資源的開銷.用一個74LS373作為地址鎖 森器錟存地址,霹以實溪單片楓約數(shù)據(jù)縫址總線 的分離.HM62256的片選信號由單片機IO管腳 P34控制,當(dāng)HM62256不被系統(tǒng)訪問時,要求程 穿控制HM62256豹片選無效,以減少功耗. W29C02018根地址線,而MCU的地址總線只 有16根,因此必須用兩個單片機的IO(P1 6、P17)侔為高兩位地址線。

23串行通信

系統(tǒng)上位機——下位機是通過串行通信接口 聯(lián)系。STC89C54RD÷單片撬內(nèi)部含有一個霹編程 全雙工串行通信接口(RXD、TXD),具有UART的 全部功能,該接口電路能同時進(jìn)行數(shù)據(jù)發(fā)送和接 救.一般情魏下只要通過TXDRXDGND三條 線連接就可以實現(xiàn)與PC上位機的串行通信.但本 系統(tǒng)為了實現(xiàn)單片機與PC機的串行通信功能,還 囂要將單片槐戇事行接蠢酶毫平轉(zhuǎn)換成RS232 電平標(biāo)準(zhǔn).電平轉(zhuǎn)換選用單片機應(yīng)用系統(tǒng)中最常 用的RS232電平轉(zhuǎn)換芯片,此芯片具有集成度 離,內(nèi)置了電壓倍增電路及負(fù)電源電路,單+5 V 電源工作,只需外接5個容量為O1l心的小 電容即可完成兩路RS232與朋:L電平之間轉(zhuǎn) 換,連接圖如圖2所示.

24驅(qū)動電路的設(shè)計

系統(tǒng)所選用的點陣強D是佳光電子生產(chǎn)的8 ×8點陣LED一一KWM30881.系統(tǒng)中所顯示的 漢字點陣為16×16點陣,顯示一個漢字要用4 8×8的點陣LED8×8的點籜LED8條行線、8 條列線,共16個管腳.則每個16×16顯示屏共需 用16條行線、16條列線.

24。1行驅(qū)番電路

采用16 x 16點陣顯示需要16個行驅(qū)動信 號.單片機的IO有限,所以系統(tǒng)采用74HCl38譯 碼器來擴震IO瑟,將兩片。138譯碼器連接在一 起形成一個416線譯碼器,通過改變譯碼器4 個輸入信號,來輪流驅(qū)動16行,由于單片機的 m輸淺瑟的驅(qū)動髓力菲常有限,所以在每個輸 出口都加一個三極管,增加I0口的驅(qū)動電流,用 來驅(qū)動LED顯示屏的行信號。

242列驅(qū)動電路

由于本系統(tǒng)中的LED顯示屏是可以拼接的, 所以乖J髑串行轉(zhuǎn)并行技術(shù),只要一個單片機的I0 口,通過串行轉(zhuǎn)并行,就能得剄所需數(shù)爨的輸擊蕊 線來驅(qū)動列信號,很好地解決單片機I0口資源 有限豹闋題.系統(tǒng)巾一個LED(顯示416×16的漢字)由八片的74HC595芯片級聯(lián)組成串行 轉(zhuǎn)并行輸出來驅(qū)動列信號.

3點陣LED顯示屏系統(tǒng)的軟件組成

本系統(tǒng)采用模仿多任務(wù)的操作系統(tǒng)運行方式 與體系結(jié)構(gòu)來編程的.

下位機軟件設(shè)計分為五個模塊:(1)、系統(tǒng)初 始佬設(shè)置模塊;(2)、串墨通信模塊;

<3)、時聞、溫 度采集處理模塊;(4)、強D驅(qū)動顯示模塊;(5)、 按鍵處理模塊. >

把每個程序模塊都寫成一個獨立的任務(wù)模 塊,任務(wù)冀任務(wù)之閩的資源通過緩沖區(qū)來傳遞,并 且通過信號投放機從信號緩沖區(qū)中取信號來實現(xiàn) 任務(wù)的諼度。

31漢字的顯示

漢字一般是以點陣式存儲的,對于16點陣字 模,就是把漢字寫在一個16×16的網(wǎng)格內(nèi),漢字 的筆畫通過某網(wǎng)格時該網(wǎng)格就對應(yīng)l,否則該網(wǎng)格 對應(yīng)0,這樣每一網(wǎng)格均對應(yīng)10,把對應(yīng)1的網(wǎng) 格連起來餐,就是邀拿漢字。實璦點陣技術(shù)在LCD 屏幕顯示的關(guān)鍵是,如何通過漢字的機內(nèi)碼檢索 到該點陣位置.ASCII字符表從第161個歪255個 字符(即舛個字符)之闋為非常蔫字符,將其作力 漢字標(biāo)識符.并規(guī)定每兩個字節(jié)組成一個漢字,即 可組成94×94=8 836個漢字.161255的字符 被分成94個區(qū),每個區(qū)懿數(shù)篇就是區(qū)褥,每個區(qū) 又分成94位,每個位的數(shù)值就是位碼.同時,我們 將組成字符的兩個字節(jié)的數(shù)值稱為漢字的機內(nèi) 碼,分舅l稱為高字節(jié)內(nèi)碼和低字節(jié)內(nèi)碼?;眱?nèi)碼與 區(qū)位碼之間的聯(lián)系在于:區(qū)碼=高字節(jié)內(nèi)碼一 160,位碼=低字節(jié)內(nèi)碼一160.因為漢字是按94 個囂、位越分的,新以記錄號(漢字在字庫中的位 置)=(區(qū)碼一1)×94+(位碼一1).在16點陣字 中,漢字的實際位置為記錄號×32L.因此可以得 酲漢字撬內(nèi)碼與W29C02016點陣漢字的地址 空間之間的數(shù)學(xué)關(guān)系如下:漢字點陣起始位置= [(高字節(jié)內(nèi)碼一0xal)×94+(低字節(jié)內(nèi)碼一 Oxal)×32L.從該起始位置的連續(xù)32字節(jié)單元 即為該漢字機內(nèi)碼對應(yīng)的漢字點陣庫.

當(dāng)系統(tǒng)啟動之后,配合P16、P1。7的工作時 序完成對就9O嵩位地址的鎖存,并采用外部RAM尋址方式,根據(jù)需要讀取漢字機內(nèi)碼,按照 上述的邏輯關(guān)系,從W29∞20中讀取漢字點陣, 送至濺D點陣屏幕上顯示.總共可實現(xiàn)16點陣的 漢字顯示.

32對聞、溫度采集處理模塊

時聞與溫度的采集都是通過12C總線來實現(xiàn) 的,所以此模塊主要是通過12C總線來實現(xiàn)時間 的讀取,以及時閹的讀寫操償.并把讀趣來的數(shù)據(jù) 存放于數(shù)據(jù)緩沖區(qū)中,以便顯示時闡或溫度時顯 示狀態(tài)機調(diào)用.

33按鍵處理模塊

本系統(tǒng)采取中斷來響應(yīng)按鍵.所以在外中斷0 的中斷服務(wù)子程序中要完成兩個事情:(1)、讀取 鍵值;(2)、往信號緩沖區(qū)發(fā)送信號(憊括信號鮑類 型按鍵信號、信號的數(shù)據(jù)一按鍵值).然后再通 過信號投放機,根據(jù)不同的鍵值執(zhí)行相應(yīng)的操作. 假如按下按鍵s2,疆D屏劂顯示酵閼;按下按鍵 S3LED屏則顯示實時周圍環(huán)境的溫度;按下按 鍵S4,LED屏則晟示英文;按下按鍵S1,LED屏 掰顯示漢字.

34 LED驅(qū)動囂示模塊

此模塊是整個系統(tǒng)的程序中最為關(guān)鍵的模 塊。在它只有一個子翟穿一顯示程穿,在程序?qū)?定義一個全局變量一結(jié)構(gòu)體,這個結(jié)構(gòu)體用來表 示字符滾動顯示的六個參數(shù),而這個結(jié)構(gòu)體也只 有在囊示狀態(tài)機巾改變,從褥實褒字符在強D燕 示屏上滾動顯示的效果.而各個狀態(tài)中的任務(wù)以 及各個狀態(tài)間的轉(zhuǎn)換過程如圖3所示.

狀態(tài)說臻:

0lDLE空閑;ITEMP—MODE讀取溫度并進(jìn) 行處理;

2:骶ME—MODE狀態(tài)讀取日期醛間并進(jìn)行處理;

3SWITCH—STRING—INIT初次切屏;

4SHOW—STRING字符串顯示等待;

5SWITCH—STRING字符串切換;

6READ—STRING讀下一字符串并存字模到 緩沖區(qū).

4結(jié)論

設(shè)計的點陣LED顯示屏系統(tǒng)采用上位 機——下位機的結(jié)構(gòu)搭建,上位機為PC機,通過 串行通信接口與下位機顯示系統(tǒng)進(jìn)行通信,能夠 實現(xiàn)所要顯示的字符串的修改、顯示方式的設(shè)定、 時間的設(shè)置等功能;下位機系統(tǒng)由單片機控制 LED點陣顯示屏的顯示.漢字顯示采用16×16點 陣模式,并能夠?qū)崿F(xiàn)屏幕顯示內(nèi)容的實時更改;顯 示方式采用動態(tài)顯示,實現(xiàn)字符從下往上、從右往 左滾動等動態(tài)顯示效果;系統(tǒng)同時實時采集并顯 示周圍環(huán)境的溫度;并具有顯示當(dāng)前的時間與日 期的功能.所設(shè)計的系統(tǒng)具備顯示穩(wěn)定、功耗低、 壽命長、顯示內(nèi)容易改、顯示方式豐富等優(yōu)點.