![Verilog Hdl 語言設(shè)計點陣_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/5/51eac9fd-b516-4536-b17a-9d3d4c07a7df/51eac9fd-b516-4536-b17a-9d3d4c07a7df1.gif)
![Verilog Hdl 語言設(shè)計點陣_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-5/5/51eac9fd-b516-4536-b17a-9d3d4c07a7df/51eac9fd-b516-4536-b17a-9d3d4c07a7df2.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、四川工程職業(yè)技術(shù)學(xué)院VerilogHdl語言設(shè)計點陣報告冊班級:2014通信技術(shù)1班姓名:劉巧琳指導(dǎo)老師:郭欣時間:2016.7.5目錄一、摘要3二、緒言5三、點陣基本知識8四、電路分析9五、設(shè)計方案11六、程序設(shè)計13七、電路仿真圖24實驗總結(jié)27一、摘要本論文主要闡述了基于FPGA設(shè)計16*16的點陣,讓點陣靜態(tài)或動態(tài)顯示一個字或者一段話,LED顯示屏如今在生活中應(yīng)用廣泛,各大廣告商利用LED顯示屏的便捷性宣傳產(chǎn)品。這次實驗需要利用EDA工具軟件Quartusll編寫并調(diào)試系統(tǒng)的VerilogHDL程序。并且每一個模塊都在這個軟件下進行了仿真。系統(tǒng)的VerilogHDL程序編好過后先在實驗
2、室的EDA實驗箱上下載調(diào)試、驗證。關(guān)鍵詞:LED、FPGA、VerilogHDL、點陣AbstractThispapermainlyelaboratedbasedontheFPGAdesignof16*16lattice,letlatticestaticordynamicdisplayawordorparagraph,LEDdisplaynowinlifearewidelyused,eachbigadvertisersuseLEDdisplayoftheconvenienceofpromotionalproducts.ThisdesignneedstousetheEDAtoolsoftware
3、Verilogtowriteanddebugthesystem'sHDLQuartusIIprogram.Andeachmoduleissimulatedinthesoftware.ThesystemoftheHDLVerilogprogramiscompiledinthelaboratoryafterthefirstEDAtestboxtodownloadanddebug,verify.Keyword:LED、FPGA、VerilogHDL、lattice二、緒言目前,在機場、飯店等很多公共場所都能看到美觀、實用的電子顯示屏,它以高清、節(jié)能、控制簡單、壽命長、耐沖擊、性能穩(wěn)定、成本低
4、廉、環(huán)保等優(yōu)勢迅速占領(lǐng)市場。隨著顯示屏尺寸的擴大、亮度要求的增加,數(shù)據(jù)傳輸和控制的時間也會增加,如果仍然采用單片機作為控制器,將會影響顯示效果,嚴(yán)重時可能無法正常工作,然而,這時若采用可編程邏輯器件作為控制器,則可解決這一難題。一方面,隨著微電子技術(shù)的發(fā)展和生產(chǎn)工藝的提高,器件的性能大有很大的提高,出現(xiàn)了高性能的現(xiàn)場可編程邏輯器件(FPGA),FPGA具有處理速度高、可靠性高、高容量和集成度高等特點,在大屏幕顯示系統(tǒng)設(shè)計中使用FPGA可以滿足現(xiàn)在的LED大屏幕系統(tǒng)對于處理視頻數(shù)據(jù)的高速要求,同時改善電路的性能,縮小系統(tǒng)的體積。設(shè)計中使用硬件描述語言進行電路設(shè)計,可以隨時根據(jù)設(shè)計需要進行修改,而
5、不必對硬件進行修改,它使系統(tǒng)的設(shè)計和調(diào)試非常方便,大大的縮短了產(chǎn)品的開發(fā)周期,降低了開發(fā)成本,也方便以后的系統(tǒng)升級。50年前人們已經(jīng)了解半導(dǎo)體材料可產(chǎn)生光線的基本知識,第一個商用二極管產(chǎn)生于I960年。LED是英文lightemittingdiode(發(fā)光二極管)的縮寫,它的基本結(jié)構(gòu)是一塊電致發(fā)光的半導(dǎo)體材料,置于一個有引線的架子上,然后四周用環(huán)氧樹脂密封,即固體封裝,所以能起到保護內(nèi)部芯線的作用,所以LED的抗震性能好。我國LED顯示屏市場起步較早,市場上出現(xiàn)了一批具有很強實力的LED顯示屏生產(chǎn)廠商。目前LED顯示屏已經(jīng)廣泛應(yīng)用到車站、銀行、證券、醫(yī)院。在LED需求量上,LED顯示屏僅次于L
6、ED指示燈名列第二,占到LED整體銷量的23.1%。由于用于顯示屏的LED在亮度和壽命上的要求高于LED指示燈,平均價格在指示燈LED之上,這就導(dǎo)致顯示屏用LED市場規(guī)模達到32.4億元,超過指示燈位居榜首成為LED的主要應(yīng)用市場。我國LED顯示屏市場起步較早,市場上出現(xiàn)了一批具有很強實力的LED顯示屏生產(chǎn)廠商。目前LED顯示屏已經(jīng)廣泛應(yīng)用到車站、銀行、證券、醫(yī)院。在LED需求量上,LED顯示屏僅次于LED指示燈名列第二,占到LED整體銷量的23.1%。由于用于顯示屏的LED在亮度和壽命上的要求高于LED指示燈,平均價格在指示燈LED之上,這就導(dǎo)致顯示屏用LED市場規(guī)模達到32.4億元,超過指
7、示燈位居榜首成為LED的主要應(yīng)用市場。憑借著獨特優(yōu)勢,LED全彩顯示屏廣泛應(yīng)用在體育場館、市政廣場、演唱會、車站、機場等場所。LED早已應(yīng)用在以手機為主的小尺寸液晶面板背光市場中,手機產(chǎn)量的持續(xù)增長帶動了背光源市場的快速發(fā)展。特別是2003年彩屏手機的出現(xiàn)更是推動白光LED市場的快速發(fā)展。但隨著手機產(chǎn)量進入平穩(wěn)增長階段以及技術(shù)提升導(dǎo)致用于手機液晶面板背光源LED數(shù)量減少,使得LED在手機背光源中用量增速放緩,2005年背光源用LED數(shù)量超過12億只,未來幾年增長率也將保持在個位數(shù)。數(shù)量增速的放緩加上平均價格的不斷下降,最終導(dǎo)致小尺寸背光源市場增長乏力同時,中大尺寸背光源市場雖為廠商新寵,但在2
8、006年還不能形成規(guī)模。在上述兩個因素的影響下,背光源市場將在2006年出現(xiàn)1%的負(fù)增長。2005年背光源市場規(guī)模超過15億元。三、點陣基本知識16*16掃描LED點陣只要其對應(yīng)的X、Y軸順向偏壓,即可使LED發(fā)亮。例如如果想使左上角LED點亮,則Y0=1,X0=0即可。應(yīng)用時限流電阻可以放在X軸或Y軸。它有16個共陰極輸出端口,每個共陰極對應(yīng)有16個LED顯示燈。LED點陣每個點都有一個紅色的發(fā)光二極管。點陣內(nèi)的二極管間的連接都是行共陽,列共陰。本實驗采用共陰,當(dāng)二極管的共陽極為高電平,共陰極為低電平時,所接點發(fā)光;反之處于截止?fàn)顟B(tài),不放光。數(shù)字電路。(圖1-7所示)、電路分析本設(shè)計采用16
9、X16LED點陣屏由4塊8X8LED點陣拼接而成,每一塊點陣都有8行8列,因此總共有16根行控制線和16根列控制線。EDA實驗箱上有其接口電路,STR,SI,SCK,且實驗箱上采用的是4個74HC595來實現(xiàn)行掃描和列掃描的。用動態(tài)分時掃描技術(shù)使LED點陣模塊顯示字體,需要進行兩步工作。第一步是獲得數(shù)據(jù)并保存,即在存貯器中建立漢字?jǐn)?shù)據(jù)庫。第二步是在掃描模塊的控制下,配合行掃描的次序正確地輸出這些數(shù)據(jù)。獲得圖像數(shù)據(jù)的步驟是,先將要顯示的每一幅圖像畫在一個被分成16X16共256個小方格的矩形框中,再在有筆劃下落處的小方格里填上“1”,無筆劃處填上“0”,這樣就形成了與這個漢字所對應(yīng)的二進制數(shù)據(jù)在
10、該矩形框上的分布,再將此分布關(guān)系以32X16的數(shù)據(jù)結(jié)構(gòu)組成64個字節(jié)的數(shù)據(jù),并保存在只讀存貯器ROM中。以這種方式將若干個漢字的數(shù)據(jù)貯存在存貯器內(nèi),就完成了圖像數(shù)據(jù)庫的建立工作。電路中采用SPI接口的方式對LED點陣進行操作,LATTICE_SI對應(yīng)SPI的MOSI,LATTICE_STR對應(yīng)SPI的nCS,LATTICE_SCK對應(yīng)SPI的SCK。U17,U18,U19以及U20(74HC595)構(gòu)成一個串入并出的32bit數(shù)據(jù)移位寄存器。當(dāng)LATTICE_STR低電平有效時,32bit數(shù)據(jù)在32個LATTICE_SCK時鐘下有LATTICE_SI串行輸入,當(dāng)LATTICE_STR由低電平變
11、成高電平時,32bit數(shù)據(jù)并行輸出。在主板上主板上數(shù)據(jù)輸出時LADLDP對應(yīng)行,而LD1LD16對應(yīng)列,最先移入的數(shù)據(jù)被當(dāng)作16列(LD16),最后移入的被當(dāng)作第一行(LDA)。五、設(shè)計方案點陣LED般采用掃描式顯示,實際運用分為三種方式:(1)點掃描(2)行掃描(3)列掃描若使用第一種方式,其掃描頻率必須大于16X64=1024Hz,周期小于1ms即可。若使用第二和第三種方式,則頻率必須大于16X8=128Hz,周期小于7.8ms即可符合視覺暫留要求。此外一次驅(qū)動一列或一行(8顆LED)時需外加驅(qū)動電路提高電流,否則LED亮度會不足本文系統(tǒng)的LED點陣模塊,共由16X16=256個LED發(fā)光
12、二極管組成。如何在該點陣模塊上顯示漢字是本文設(shè)計的關(guān)鍵技術(shù)。本文系統(tǒng)設(shè)計是采用一種16路動態(tài)分時掃描技術(shù)來實現(xiàn)的。具體方法是,將4個8X8數(shù)組的顯示模塊組合成兩個16行16列的掃描結(jié)構(gòu)。其行輸入端與FPGA內(nèi)的只讀存儲器ROM的16位數(shù)據(jù)輸出端口相連;16個列控制端與一個4-16譯碼器的輸出相連;而譯碼器的輸入端和片選信號又與FPGA內(nèi)的列掃描控制模塊的輸出端口相連。方案二:VerilogHDL程序設(shè)計的是硬件,可以“并發(fā)執(zhí)行”本設(shè)計可以將LED顯示屏要的顯示內(nèi)容抽象成一個二維數(shù)組(數(shù)組中的1'對映點陣顯示屏上面的亮點),用VerilogHDL語言設(shè)計一個進程將這個數(shù)組動態(tài)顯示在LED
13、顯示屏上,再利用另一個進程對這個數(shù)組按一定頻率進行數(shù)據(jù)更新,更新的方式可以有多種。因為兩個進程是同時進行的(并發(fā)執(zhí)行),如果對數(shù)組中的漢字?jǐn)?shù)據(jù)按滾動的方式更新,則可實現(xiàn)漢字的滾動顯示通過比較我們選擇方案二。雖然方案一很容易實現(xiàn),而且占用FPGA的資源較少,但是由于其實現(xiàn)方式的局限性,該方案只能實現(xiàn)漢字的滾動顯示。方案二中將LED點陣抽象成了一個二維數(shù)組??梢栽O(shè)計一些比較復(fù)雜的算法來控制這個數(shù)組,使設(shè)計的系統(tǒng)不但可以滾動顯示漢字,還可以擴展一些其它的顯示效果。六、程序設(shè)計設(shè)計程序如下:-LED1616.VHDLIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIE
14、EE.STD_LOGIC_Arith.ALL;USEIEEE.STD_LOGIC_Unsigned.ALL;ENTITYLED1616ISPORT(clk48M:INSTD_LOGIC;-系統(tǒng)時鐘sdat_in:INSTD_LOGIC_VECTOR(31downto0);STR:OUTSTD_LOGIC;SCLK:OUTSTD_LOGIC;d_out:OUTSTD_LOGIC);END;ARCHITECTUREoneOFLED1616ISSIGNALclk_count:integerrange0to400;SIGNALcnt32:STD_LOGIC_VECTOR(5downto0);SIGNA
15、Lclk60K,STR_R,SCLK_R,d_out_R:STD_LOGIC;SIGNALdata_shift:STD_LOGIC_VECTOR(31downto0);TYPEstatesIS(st0,st1,st2,st3);SIGNALc_state,n_state:states;BEGINSTR<=STR_R;SCLK<=SCLK_R;d_out<=d_out_R;d_out_R<=data_shift(31);PROCESS(clk48M)BEGINIFRISING_EDGE(clk48M)THENIFclk_count=400THENclk_count<
16、=0;clk60K<=notclk60K;ELSEclk_count<=clk_count+1;ENDIF;ENDIF;ENDPROCESS;PROCESS(clk60K)BEGINIFRISING_EDGE(clk60K)THENc_state<=n_state;-主控時序進程ENDIF;ENDPROCESS;PROCESS(c_state)BEGINCASEc_stateISWHENst0=>n_state<=st1;STR_R<='1'SCLK_R<='0'WHENst1=>n_state<=st2;S
17、TR_R<='0'SCLK_R<='0'WHENst2=>n_state<=st3;STR_R<='0'SCLK_R<='1'WHENst3=>if(cnt32>="100000")thenn_state<=st0;elsen_state<=st2;endif;STR_R<='0'SCLK_R<='0'WHENOTHERS=>n_state<=st0;ENDCASE;ENDPROCESS;PROC
18、ESS(SCLK_R)BEGINif(STR_R='1')thendata_shift<=sdat_in;cnt32<="000000"elsIFFAllING_EDGE(SCLK_R)THENdata_shift(31downto0)<=data_shift(30downto0)&'0'cnt32<=cnt32+'1'ENDIF;ENDPROCESS;END;-LS416LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIG
19、NED.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYLS416ISPORT(SEL:INSTD_LOGIC_VECTOR(3DOWNTO0);Dout:OUTSTD_LOGIC_VECTOR(15DOWNTO0);ENDLS416;ARCHITECTUREBHVOFLS416ISBEGINPROCESS(SEL)BEGINCASESELISWHEN"0000"=>Dout<="1111111111111110"WHEN"0001"=>Dout<="11111111111
20、11101"WHEN"0010"=>Dout<="1111111111111011"WHEN"0011"=>Dout<="1111111111110111"WHEN"0100"=>Dout<="1111111111101111"WHEN"0101"=>Dout<="1111111111011111"WHEN"0110"=>Dout<="1
21、111111110111111"WHEN"0111"=>Dout<="1111111101111111"WHEN"1000"=>Dout<="1111111011111111"WHEN"1001"=>Dout<="1111110111111111"WHEN"1010"=>Dout<="1111101111111111"WHEN"1011"=>Dout&l
22、t;="1111011111111111"WHEN"1100"=>Dout<="1110111111111111"WHEN"1101"=>Dout<="1101111111111111"WHEN"1110"=>Dout<="1011111111111111"WHEN"1111"=>Dout<="0111111111111111"WHENOTHERS=>NULL;E
23、NDCASE;ENDPROCESS;ENDBHV;-MAX280LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;USEIEEE.STD_LOGIC_ARITH.ALL;ENTITYMAX280ISPORT(Qa:INSTD_LOGIC_VECTOR(8DOWNTO0);Q:OUTSTD_LOGIC_VECTOR(8DOWNTO0);ENDMAX280;ARCHITECTUREBEHOFMAX280ISSIGNALQ1:STD_LOGIC_VECTOR(3DOWNTO0);BEGINPROCESS(Qa)
24、BEGINIF(Qa>=280)thenQ<=Qa-280;elseQ<=Qa;ENDIF;ENDPROCESS;ENDBEH;modulecnt4b(clk,q);inputclk;output3:0q;reg3:0q;always(posedgeclk)beginif(q=4'b1111)q=4'b0000;elseq<=q+1'b1;endendmodulemoduleint_diva(clockin,clockout);inputclockin;outputclockout;regclockout;reg23:0counter;alway
25、s(posedgeclockin)beginclockout=(counter>=12000000);if(clockout)counter<=24'd0;elsecounter<=counter+1'b1;endendmodulemoduleint_divb(clockin,counter,clockout);inputclockin;outputclockout;output8:0counter;regclockout;reg8:0counter;always(posedgeclockin)beginclockout=(counter>=280);i
26、f(clockout)counter<=9'd0;elsecounter<=counter+1'b1;endendmodulemoduleadd4(dataa,datab,result);input8:0dataa;input8:0datab;output8:0result;reg8:0result;always(dataaordatab)beginresult<=dataa+datab;endendmodule七、電路仿真圖BLOCK1(1-1)(1-2)(1-3)LEDROM(1-6).ADC;.L.l;.CLK4BU.嚴(yán)険哪G>clock:-st5
27、(1-4)BLOCK2IpmomD:address9:0:ckick:irt£t(1-5)ROM><T:<AddrKi+2|+3+4+5|揺I+7ASCII口00047FE40424Q5240564Q5B47F2F8Q52405A40564252444243FE4000400001600404042204210420042Q3FE0042CC-2.BB24004200427FFE00420042004200420000BB.BBBB.3200000000000000000000000000000000000000000000000000000000000000000000000000
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 處分學(xué)位申請書
- 醫(yī)學(xué)檢驗師考試題庫與答案(B卷)
- 2025年中國門冬胰島素行業(yè)發(fā)展監(jiān)測及投資戰(zhàn)略規(guī)劃研究報告
- 行政撤訴申請書
- 部編版:2024年七年級《道德》下冊第四單元試卷及答案(A卷)
- 部編版:2022年七年級《道德與法治》上冊第二單元試卷與答案
- 新版人教PEP版三年級下冊英語課件 Unit 3 Part A 第2課時
- 電商行業(yè)中的市場調(diào)研與數(shù)據(jù)應(yīng)用
- 班級文化墻的科技驅(qū)動互動性設(shè)計
- 平頂山學(xué)院《中西方教育論著選講》2023-2024學(xué)年第二學(xué)期期末試卷
- 統(tǒng)編教學(xué)小學(xué)語文課外閱讀《細(xì)菌世界歷險記》導(dǎo)讀課課件
- 幼兒剪紙-打印版
- 中小學(xué)2021年秋季開學(xué)第一課手心班會圖文精品
- 高三英語閱讀專項訓(xùn)練之說明文(含答案及部分解析)
- 中國移動CHBN試題題庫大全(含答案)
- 醫(yī)學(xué)課件:介入放射學(xué)(全套課件328張)
- 2022年同等學(xué)力人員申請碩士學(xué)位日語水平統(tǒng)一考試真題
- 病毒性感染性腹瀉醫(yī)學(xué)課件
- 水泥攪拌樁記錄表格范本
- DL∕T 458-2020 板框式旋轉(zhuǎn)濾網(wǎng)
- 食品添加劑、食品污染物的本底與轉(zhuǎn)化來源
評論
0/150
提交評論