新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 基于FPGA控制的LED漢字滾動顯示器設(shè)計(jì)

基于FPGA控制的LED漢字滾動顯示器設(shè)計(jì)

作者: 時間:2010-09-23 來源:網(wǎng)絡(luò) 收藏

O 引言
現(xiàn)代文明的一個顯著特征是城市中隨處可見的五顏六色的廣告宣傳,其中大多都是由點(diǎn)陣制作的或圖形廣告,廣泛應(yīng)用在銀行、醫(yī)院、酒店、火車站、體育場館等各種公共場所。
器的傳統(tǒng)設(shè)計(jì)方法是用單片機(jī)來控制的,雖然單片機(jī)方案具有價(jià)格低廉,程序編程靈活等特點(diǎn),但由于單片機(jī)硬件資源的限制,未來對設(shè)計(jì)的變更和升級,總是要付出較多研發(fā)經(jīng)費(fèi)和較長投放市場周期的代價(jià),甚至有可能需要重新設(shè)計(jì)。況且,在以顯示為主的系統(tǒng)中,單片機(jī)的運(yùn)算和控制等主要功能的利用率很低,單片機(jī)的優(yōu)勢得不到發(fā)揮,相當(dāng)于很大的資源浪費(fèi)。
采用EDA技術(shù)的自頂向下的模塊化設(shè)計(jì)方法,借助相關(guān)開發(fā)軟件,例如QualtusⅡ軟件,將硬件描述語言——VHDL程序固化于具有豐富I/O口、內(nèi)部邏輯和連線資源的(現(xiàn)場可編程門陣列)中。該技術(shù)具有系統(tǒng)設(shè)計(jì)效率高、集成度好、保密性強(qiáng)、易于修改、易于實(shí)現(xiàn)等優(yōu)點(diǎn),成為當(dāng)今數(shù)字系統(tǒng)設(shè)計(jì)主流技術(shù)。此方式所制作的點(diǎn)陣控制器,由于是純硬件行為,具有速度快、可靠性高、抗干擾能力強(qiáng)、開發(fā)周期短等顯著優(yōu)點(diǎn)。

1 EDA點(diǎn)陣顯示原理
以8×8的點(diǎn)陣為例,8×8的LED點(diǎn)陣是由64個發(fā)光二極管按矩陣形式排列而成,每一行上的發(fā)光管有一個公共的陽極(或陰極),每一列上的發(fā)光管有一個公共的陰極(或陽極),一般按動態(tài)掃描方式顯示漢字或圖形。掃描分為點(diǎn)掃描、行掃描和列掃描三種方式。行掃描需要按行抽取字型碼,列掃描則需要按列抽取字型碼。為滿足視覺暫留要求,若使用點(diǎn)掃描方式,其掃描頻率必須大于16×64=1 024Hz,周期小于1ms。若使用行或列掃描,則頻率必須大于16×8=128Hz,周期小于7.8ms。由于所用實(shí)驗(yàn)板上提供有1 kHz的時鐘,本例設(shè)計(jì)中利用該時鐘進(jìn)行掃描,使每行掃描時間為1 ms,實(shí)驗(yàn)結(jié)果顯示亮度合適?,F(xiàn)以行掃描為例簡單說明動態(tài)掃描顯示的原理。圖1給出漢字“熱”在點(diǎn)陣為列共陽時的行字模。工作時先將要掃描行的點(diǎn)陣字模從各列上輸出,再讓譯碼器選中(掃描)該行,使本行得以顯示,接著再送下一行數(shù)據(jù),再使下一行有效,直到8行全被掃描一遍。至此,一幅完整的文字信息就顯現(xiàn)出來,然后再反復(fù)掃描這8行直至顯示新的信息。以下設(shè)計(jì)采用行掃描方式實(shí)現(xiàn)

本文引用地址:http://m.butianyuan.cn/article/191568.htm



2 硬件原理圖
整個電路由五大部分組成:時鐘計(jì)數(shù)模塊GEL_CLK,存儲漢字字模的ROM模塊ROMZI,數(shù)據(jù)分配器模塊MUX,移位模塊YW及顯示模塊XIANSH-I。時鐘計(jì)數(shù)模塊用于產(chǎn)生整個電路所需要的時鐘及其對時鐘的計(jì)數(shù)值,例如:移位時鐘CLK YW,移位計(jì)數(shù)器CNT YW,字計(jì)數(shù)器CNT WORD,顯示掃描計(jì)數(shù)器CNT SM。ROMZI模塊是由QualtusⅡ中的LPM 1PORT ROM定制成,用來存儲8個待顯示的漢字。MUX模塊用于在掃描時鐘及掃描計(jì)數(shù)器的作用下,從ROM中讀出一個漢字的8個行字模信息,送給移位模塊YW,YW模塊在移位時鐘及移位計(jì)數(shù)器作用下,根據(jù)SELECT信號選擇對讀出的字模信息,進(jìn)行相應(yīng)的移位(左移、右移、上移、下移)后,最后送顯示模塊DISP驅(qū)動LED點(diǎn)陣顯示漢字。原理圖如圖2所示。



3 模塊設(shè)計(jì)及時序仿真
3.1 時鐘計(jì)數(shù)產(chǎn)生模塊

時鐘計(jì)數(shù)產(chǎn)生模塊由1 kHz的輸人時鐘為基準(zhǔn),進(jìn)行17位的循環(huán)計(jì)數(shù)CNT[16..O]。該時鐘,既是動態(tài)掃描顯示的時鐘,也是從ROM中取一個字8個字模的時鐘,對之進(jìn)行的3位循環(huán)計(jì)數(shù)作為掃描顯示計(jì)數(shù)器和取一個字的字型碼計(jì)數(shù)器。CNT[16..O]中的CNT[9]是對該時鐘的1 024分頻,將其作為移位時鐘CNT_YW,周期約為l s。CNT[13…lO]作為4位的移位計(jì)數(shù)器,是對移位時鐘CLK_YW的計(jì)數(shù),也是對移位位數(shù)的統(tǒng)計(jì)。16個狀態(tài)使一個漢字逐列移進(jìn)點(diǎn)陣,又逐列移出。每經(jīng)過16個移位時鐘,將會顯示完一個漢字。CNT[16..14]作為3位的取字計(jì)數(shù)器。
CNT[16…14]&CNT[2..O]作為ROM地址發(fā)生器。


上一頁 1 2 3 下一頁

關(guān)鍵詞: FPGA LED 漢字 滾動顯示

評論


相關(guān)推薦

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

關(guān)閉