新聞中心

EEPW首頁(yè) > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 用EDA設(shè)計(jì)LED漢字滾動(dòng)顯示器

用EDA設(shè)計(jì)LED漢字滾動(dòng)顯示器

作者:哈爾濱工程大學(xué)電子工程系 付永慶,水聲工程系 張林 時(shí)間:2001-07-04 來(lái)源: 收藏

采用傳統(tǒng)方法設(shè)計(jì)的漢字滾動(dòng)顯示器,通常需要使用單片機(jī)、存儲(chǔ)器和制約邏輯電路來(lái)進(jìn)行PCB(印制電路板)板級(jí)的系統(tǒng)集成。盡管這種方案有單片機(jī)軟件的支持較為靈活,但是由于受硬件資源的限制,未來(lái)對(duì)設(shè)計(jì)的變更和升級(jí),總是難以避免要付出較多研發(fā)經(jīng)費(fèi)和較長(zhǎng)投放市場(chǎng)周期的代價(jià)。

本文引用地址:http://2s4d.com/article/3036.htm

隨著電子設(shè)計(jì)自動(dòng)化()技術(shù)的進(jìn)展,基于可編程ASIC器件的數(shù)字電子系統(tǒng)設(shè)計(jì)的完整方案越來(lái)越受到人們的重視,并且以技術(shù)為核心、的能在可編程ASIC器件上進(jìn)行系統(tǒng)芯片集成的新設(shè)計(jì)方法,也正在快速地取代基于PCB板的傳統(tǒng)設(shè)計(jì)方式。

如何使用工具設(shè)計(jì)電子系統(tǒng)是人們普遍關(guān)心的問(wèn)題。在EDA工具軟件MAX+PLUSⅡ的支持下,本設(shè)計(jì)通過(guò)了編譯、適配和軟件仿真驗(yàn)證。最后用載入真實(shí)實(shí)驗(yàn)系統(tǒng)的硬件實(shí)驗(yàn)證明了它的正確性。

為了簡(jiǎn)化討論,本文只研究在單個(gè)8×8 LED 發(fā)光二極管點(diǎn)陣上滾動(dòng)顯示多漢字信息的問(wèn)題。

1給出的就是一個(gè)使用美國(guó)ALTERA公司10K系列FPGA設(shè)計(jì)的可支持滾動(dòng)顯示多漢字信息的通用硬件電路。

在圖中,標(biāo)準(zhǔn)JTAG接口與PC機(jī)并口相連,用于下載設(shè)計(jì)數(shù)據(jù)至FPGA中;LED點(diǎn)陣的data線由FPGAI/O線串300Ω限流電阻后驅(qū)動(dòng),而sw線直接由FPGAI/O線驅(qū)動(dòng)。LED點(diǎn)陣采用掃描式工作方式,控制sw線的循環(huán)掃描信號(hào)為低電平有效,顯示數(shù)據(jù)data為高電平有效。

由于ALTERA10K10LC84-4芯片內(nèi)部有足夠的RAM資源,所以本設(shè)計(jì)沒(méi)有采用外部RAM。

另外,圖中的配置EPROM為可選件,只有當(dāng)要求漢字滾動(dòng)顯示器脫機(jī)運(yùn)行時(shí)才需要采用。

為在8×8 LED 發(fā)光二極管點(diǎn)陣上顯示漢字,首先要把漢字表示成為如圖2所示的8×8像素點(diǎn)圖。

在圖2中,data0data7分別為按列抽取依序排列的漢字像素信息,均具有8位字長(zhǎng)。

然后,依次對(duì)多漢字抽取像素信息,并按序排隊(duì)存放于ROM之中,便可得到一個(gè)待顯示數(shù)據(jù)序列。進(jìn)一步通過(guò)尋址的方法來(lái)控制該數(shù)據(jù)序列的釋放過(guò)程,就可實(shí)現(xiàn)在8×8 LED 發(fā)光二極管點(diǎn)陣上滾動(dòng)顯示多漢字信息的目的。圖3給出的就是實(shí)現(xiàn)滾動(dòng)顯示多漢字信息的原理示意圖。

由圖3可知,某一時(shí)刻能在顯示數(shù)據(jù)序列中定位待顯示數(shù)據(jù)的地址指針可用下式計(jì)算:

addr=n+m 1

顯然,n的取值范圍應(yīng)為0N,并由它控制漢字顯示的滾動(dòng)速度;m的取值范圍應(yīng)為07,并由它決定LED點(diǎn)陣的列開(kāi)關(guān)sw的掃描速度。因此,控制n掃遍全部待顯示數(shù)據(jù)的時(shí)間,可調(diào)節(jié)漢字信息的滾動(dòng)速度;改變m的重復(fù)掃描周期,可改善在LED點(diǎn)陣上顯示完整漢字信息的穩(wěn)定性。

另外還需指出,由于式(1)的運(yùn)算要靠硬件實(shí)現(xiàn),故地址指針addr的模應(yīng)取為N,而且為實(shí)現(xiàn)全部漢字信息滾過(guò)LED點(diǎn)陣,必須在數(shù)據(jù)N前補(bǔ)充8個(gè)空數(shù)據(jù)字節(jié)。

根據(jù)圖3給出的顯示原理,我們可以構(gòu)造出它所對(duì)應(yīng)的硬件實(shí)現(xiàn)結(jié)構(gòu)如圖4所示。

根據(jù)圖4示出的原理,我們?cè)O(shè)計(jì)了描述FPGA內(nèi)核硬件功能的VHDL語(yǔ)言程序。本設(shè)計(jì)使用了ALTERA公司的MAX+PLUSⅡ PLD研發(fā)工具中的參數(shù)化模型庫(kù),并采取了結(jié)構(gòu)化的描述方式。

下面就是我們?cè)O(shè)計(jì)的VHDL程序:

VHDL設(shè)計(jì)中,ROM單元的初始化數(shù)據(jù)要由顯示數(shù)據(jù)文件data.hex提供,而且該文件的數(shù)據(jù)存放要符合Intel HEX格式。由于從漢字直接抽取的顯示數(shù)據(jù)為二進(jìn)制代碼,故不能直接用于生成data.hex文件,因此需要借助其它EDA工具來(lái)幫助加工data.hex文件。下面就給出加工顯示數(shù)據(jù)文件data.hex的具體步驟:

1、 對(duì)多漢字抽取像素信息,形成按序排列的待顯示數(shù)據(jù)序列;

2、使用河洛公司的萬(wàn)用編程器ALL03或ALL07的應(yīng)用軟件,將待顯示數(shù)據(jù)加工成為BIN格式的二進(jìn)制數(shù)據(jù)文件data.bin;

3、使用萬(wàn)利公司的單片機(jī)仿真器軟件,將二進(jìn)制數(shù)據(jù)文件data.bin轉(zhuǎn)換成為Intel HEX格式的顯示數(shù)據(jù)文件data.hex。

當(dāng)然,我們也可以使用單片機(jī)仿真器的應(yīng)用軟件來(lái)直接加工顯示數(shù)據(jù)文件data.hex,但是這需要對(duì)具有二進(jìn)制代碼的顯示數(shù)據(jù)進(jìn)行軟件編程,因此不如上述方法簡(jiǎn)潔。

為了驗(yàn)證設(shè)計(jì)的正確性,我們使用EDA工具軟件MAX+PLUSⅡ中的模擬仿真器,對(duì)通過(guò)編譯的漢字滾動(dòng)顯示器的VHDL設(shè)計(jì)進(jìn)行了模擬仿真驗(yàn)證, 實(shí)驗(yàn)證明漢字滾動(dòng)和顯示掃描情況均正常,也就是說(shuō)FPGA的內(nèi)核硬件工作良好,可以正確地實(shí)現(xiàn)設(shè)計(jì)功能。

此外,漢字滾動(dòng)顯示器的VHDL軟核設(shè)計(jì)也被載入了根據(jù)圖1建造的真實(shí)硬件系統(tǒng)之中。對(duì)硬件系統(tǒng)的實(shí)驗(yàn)驗(yàn)證也獲得了與軟件模擬仿真結(jié)論相吻合的結(jié)果。

因此,我們可以得出下列結(jié)論:

1、 EDA技術(shù)不僅能降低數(shù)字電子系統(tǒng)設(shè)計(jì)的復(fù)雜性和難度,而且也能顯著地增強(qiáng)設(shè)計(jì)的靈活性;

2、多種EDA工具的聯(lián)合應(yīng)用,有助于提高設(shè)計(jì)效率和縮短設(shè)計(jì)周期;

3、 利用EDA工具獲取的軟件模擬仿真結(jié)果具有同傳統(tǒng)硬件實(shí)驗(yàn)數(shù)據(jù)一樣的重要性和可信度?!?/font>

 

參考文獻(xiàn)

1 Neil G. Jacobson. 用PLD器件增強(qiáng)嵌入式系統(tǒng)功能[J].電子工程專輯,2000(3)

2 孟憲元. 可編程ASIC集成數(shù)字系統(tǒng)[M].北京:電子工業(yè)出版社,1998

3 王曉軍. VHDL簡(jiǎn)明教程[M]. 北京: 清華大學(xué)出版社, 1997

led顯示器相關(guān)文章:led顯示器原理


存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理




關(guān)鍵詞: EDA IC設(shè)計(jì)

評(píng)論


相關(guān)推薦

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

關(guān)閉