新聞中心

EEPW首頁 > EDA/PCB > 設計應用 > 基于FPGA控制的LED漢字滾動顯示器設計

基于FPGA控制的LED漢字滾動顯示器設計

作者: 時間:2010-09-23 來源:網絡 收藏
上移時的部分程序按以下思路編制:L10~L70在CNT_YW為初態(tài)“0000”時,各信號均賦值X“00”,非初態(tài)時,均進行上移一位。即:L10=L20;L20=L30;…;L60=L70;L70=L80;對于L80,在移進過程中即前8個狀態(tài)各移進一個新行,在移出即后8個狀態(tài)時,都補進X“00”。程序如下:

下移程序可按相反思路去編。
3.4 顯示模塊DISP設計
顯示模塊DISP是以CNT_SM為掃描計數器,是對1kHz進行三位循環(huán)計數,由前述的時鐘計數產生模塊產生,WLl~WL8為待送出顯示的8個8位字型碼,由前述的移位模塊YW提供;SW[7..O]為行掃描輸出信號,連接至點陣的8個行;DATA[7..0]為行掃描時對應的列輸出字型碼,對外連至點陣的8列。該模塊參考文獻中數碼管動態(tài)顯示程序進行設計如下:



4 硬件實現
上述各模塊分別在QualtusⅡ中通過了仿真驗證,最后對整體設計進行了硬件驗證。將設計載入KH31001開發(fā)板的Cyclone工系列EPlC6Q-240C8器件中,實驗證明掃描情況均正常,能夠按照預想進行移位顯示,這說明。的內核硬件工作良好,可以正確地實現所要求的設計功能。

5 系統(tǒng)擴展
本文是針對8×8點陣設計,故每次取8個字形碼,如果是16×16點陣,將RONZI中存儲的字形碼改為16位,數據線改為16位,一個需要16個16位的字形碼,數據分配模塊MUX、移位模塊YW、顯示模塊DISP,均要將輸入輸出數據中的原來的8位改成相應的16位。掃描及取字型碼計數器CNT_SM應改為CNT計數器的低4位。一個16×16點陣漢字的移進移出共需32個狀態(tài)。由5位的計數器提供。如用CNT[16..0]中的14~10位作為該計數器,這可在時鐘計數器產生單元CLK_GE中應做相應修改,字計數器CNT WORD按照每取16個字進行加1統(tǒng)計。顯示DISP部分的譯碼器要由3-8譯碼改為4-16譯碼。顯示的漢字信息越多,ROM的地址線位數越多,字計數器CNT_WORD應在時鐘計數器產生單元GE_CLK中,將相應的計數器位數擴展,由CNT計數器的最高位到位15來承擔。若還是8個漢字,計數器應為CNT[17..O],CNT[17..15]為字計數器;若為16個漢字,計數器應為CNT[18..O],CNT[18..15]為字計數器,…,依次類推。

6 結語
本文在KH31001開發(fā)板上實現了基于Altera公司的Cyclone I系列器件EPlC6Q240C8硬件及VHDL硬件描述語言設計的點陣漢字,能在8×8點陣上“元旦生日開心快樂”8個漢字。文中從LED點陣顯示漢字的原理闡述出發(fā),給出了點陣漢字滾動顯示控制器的原理圖,部分模塊的VHDL源程序及時序仿真圖,并能由按鍵選擇其滾動方式:左移、右移、上移、下移等,給出了系統(tǒng)擴展成16×16點陣漢字滾動的改動思路。從文中描述的系統(tǒng)擴展方案中看出,當系統(tǒng)顯示字符個數變化時,只需對控制邏輯和連接關系做適當的修改,再將修改完成的程序下載到器件即可,顯然,系統(tǒng)的維護和修改是極其方便和容易的,本文對同類設計也具有一定的參考價值。

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

上一頁 1 2 3 下一頁

關鍵詞: FPGA LED 漢字 滾動顯示

評論


相關推薦

技術專區(qū)

關閉