基于FPGA的LED大屏幕控制系統(tǒng)設(shè)計(jì)
3.3 讀地址發(fā)生器
讀地址發(fā)生器主要產(chǎn)生外部緩存器SRAM1(SRAM2)的讀地址信號(hào),使系統(tǒng)能正確地從存儲(chǔ)器中讀取相應(yīng)的顯示數(shù)據(jù)。其地址最高位為0,其余地址分別為行地址(hang[3..0])、列地址(lie[6..0])、分區(qū)地址(qu[3..0])15位有效地址信號(hào)。在16個(gè)脈沖周期內(nèi)讀出在SRAM1(SRAM2)中的16字節(jié)數(shù)據(jù),其部分VHDL源程序如下:


3.4 譯碼器
譯碼器模塊主要是產(chǎn)生16路的分區(qū)信號(hào)(低電平有效)分別控制16個(gè)鎖存器,把16個(gè)分區(qū)的顯示數(shù)據(jù)分別鎖存在相應(yīng)的鎖存器中。
3.5 數(shù)據(jù)鎖存器組及移位寄存器組模塊
數(shù)據(jù)鎖存器組模塊由16個(gè)8位鎖存器組成鎖存器組,鎖存16個(gè)分區(qū)的數(shù)據(jù)。移位寄存器組模塊由16個(gè)8位移位寄存器組成,把各路鎖存器中8位并行數(shù)據(jù)轉(zhuǎn)換成同時(shí)輸出的16路串行數(shù)據(jù),驅(qū)動(dòng)LED顯示屏,實(shí)現(xiàn)數(shù)據(jù)的并串轉(zhuǎn)換。
其生成的元件符號(hào)如圖6所示。其中,DATA IN[7..0]為每個(gè)分區(qū)的8位并行數(shù)據(jù)輸入,SCLK為移位時(shí)鐘,CLR為清零信號(hào),LOAD為數(shù)據(jù)鎖存信號(hào),CS[15..0]為16分區(qū)的輸入信號(hào)(接譯碼器的輸出),DATA_OUT[15..0]為16路的串行數(shù)據(jù)輸出。本文引用地址:http://2s4d.com/article/169049.htm
3.6 脈沖發(fā)生器
系統(tǒng)采用1/16的掃描方式,把數(shù)據(jù)分為16分區(qū),16分區(qū)數(shù)據(jù)同時(shí)傳送。假設(shè)刷新的頻率為60 Hz(即周期為16.67 ms),每一行顯示的時(shí)間約為16.67 ms/16=1.04 ms。每行有1024位,則移位脈沖周期為1.04/1024=1.02 μs,即移位頻率為0.983 MHz以上才能滿足要求。由于移位脈沖是數(shù)據(jù)讀取模塊時(shí)鐘的2分頻,因此系統(tǒng)的時(shí)鐘至少1.97 MHz以上,本系統(tǒng)采用50 MHz時(shí)鐘源。其時(shí)序圖如圖7所示。
其中,RDCLK為FPGA讀取數(shù)據(jù)時(shí)鐘;SCLK是串行輸出的移位時(shí)鐘,是RDCLK的2分頻;LOAD是數(shù)據(jù)鎖存信號(hào),每次讀完16個(gè)分區(qū)中的某個(gè)字節(jié)數(shù)據(jù)DATA后產(chǎn)生鎖存信號(hào),數(shù)據(jù)鎖存在數(shù)據(jù)鎖存器組中,其時(shí)鐘是RDCLK的16分頻。
4 FPGA控制模塊的仿真測(cè)試
在QuartusII 5.1中建立一個(gè)工程,并建立原理圖文件,把單片機(jī)與FPGA接口及數(shù)據(jù)讀寫模塊、讀地址發(fā)生器、譯碼器、行地址發(fā)生器、數(shù)據(jù)鎖存器、移位寄存器、脈沖發(fā)生器等單元模塊所生的模塊元件符號(hào)連接起來(lái),構(gòu)成總控制模塊邏輯圖并對(duì)其功能仿真。仿真結(jié)果如圖8所示,從存儲(chǔ)器中讀取16字節(jié)數(shù)據(jù),經(jīng)并串轉(zhuǎn)換輸出16路的串行數(shù)據(jù)。從波形圖分析,功能正確,且各輸出端口信號(hào)均符合時(shí)序要求。
結(jié)語(yǔ)
FPGA是在線可編程芯片,可以根據(jù)不同的用戶要求進(jìn)行不同的編程,縮短了系統(tǒng)的開(kāi)發(fā)周期并節(jié)約了硬件的開(kāi)發(fā)成本。本文以FPGA為主芯片,較完整地設(shè)計(jì)了大屏幕LED單色圖文顯示屏控制系統(tǒng)。隨著LED顯示屏技術(shù)的發(fā)展,F(xiàn)PGA與ARM或DSP等芯片的組合,必將在雙色顯示屏和彩色顯示屏領(lǐng)域獲得廣泛的應(yīng)用。
評(píng)論