16x16點陣顯示實驗報告_第1頁
16x16點陣顯示實驗報告_第2頁
16x16點陣顯示實驗報告_第3頁
16x16點陣顯示實驗報告_第4頁
16x16點陣顯示實驗報告_第5頁
已閱讀5頁,還剩3頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、16*16點陣顯示實驗報告1、 實驗目的(1)學習點陣顯示字符的基本原理。(2)掌握用數控分頻控制速度,實現點陣掃描的基本方式。(3)會使用Quartus II軟件中的Verilog HDL語言實現點真的行列循環顯示。二、實驗設備與器件 Quartus II 軟件、EP2C8Q208C8實驗箱3、 實驗方案設計1. 實驗可實現的功能可通過編寫Verilog HDL語言,實現點陣的行列交替掃描。先是行掃描,掃描間隔為1s,16行都掃描完之后開始列掃描,掃描間隔仍然為1s,16列掃描完之后,行繼續掃描,依次循環。2. 點陣基本知識16*16掃描LED點陣只要其對應的X、Y軸順向偏壓,即可使LED發

2、亮。例如如果想使左上角LED點亮,則Y0=1,X0=0即可。應用時限流電阻可以放在X軸或Y軸。它有16個共陰極輸出端口,每個共陰極對應有16個LED顯示燈。LED點陣每個點都有一個紅色的發光二極管。點陣內的二極管間的連接都是行共陽,列共陰。本實驗采用共陰,當二極管的共陽極為高電平,共陰極為低電平時,所接點發光;反之處于截止狀態,不放光。3. 系統工作原理本系統用了兩個模塊,其中dianzhen.v是頂層文件,而hangsaomiao.v和liesaomiao.v是兩個子模塊,總體的系統功能框圖如圖3.3.1所示。圖3.3.1 系統功能圖示通過流程圖可以看到,體統是先將試驗箱的50MHz時鐘信號

3、分頻為1s,因為要實現16*16的點陣掃描,所以用一個16s的計時器計時,每經過16s行掃描與列掃描的狀態轉換一次,通過點陣顯示出來。4. 模塊化程序設計(1)點陣顯示頂層程序設計module dianzhen (clk50mhz,row,sel0,sel1,sel2,sel3,line);input clk50mhz; /實驗箱提供50MHz 時鐘信號output sel0,sel1,sel2,sel3; /設置引腳選通點陣output reg 15:0 row; /行output reg 3:0 line; /列wire 15:0 row1,row2;wire 3:0 line1,line

4、2;reg 24:0 cnt=0; /1Hz計數子reg 4:0 cnt1=0; /16s計數子 assign sel0=1b0;assign sel1=1b1;assign sel2=1b0;assign sel3=1b0;always(posedge clk50mhz) beginif(cnt=25d)begincnt=25b0; /1Hz計時器cnt1=cnt1+1; /16s計時器endelsecnt=cnt+1;endhangsaomiao u1(.clk50mhz(clk50mhz),.row(row1),.line(line1);liesaomiao u2(.clk50mhz(c

5、lk50mhz),.row(row2),.line(line2);always(*)if(cnt1=5d15)beginrow=row1; /行掃描line=line1;endelsebeginrow=row2; /列掃描line=25d)begincnt1=25b0;clkrow=clkrow; /1s列脈沖endelsecnt1=25d500)begincnt2=25b0;clkline=clkline; /50KHz行脈沖endelsecnt2=cnt2+1;endalways(posedge clkline)begincase(line)4d0:line=4d1; /高速行掃描4d1:

6、line=4d2;4d2:line=4d3;4d3:line=4d4;4d4:line=4d5;4d5:line=4d6;4d6:line=4d7;4d7:line=4d8;4d8:line=4d9;4d9:line=4d10;4d10:line=4d11;4d11:line=4d12;4d12:line=4d13;4d13:line=4d14;4d14:line=4d15;4d15:line=4d0;default:line=4d0;endcaseendalways(posedge clkrow) /時間間隔為1s的列掃描begincase(row)16b00001: row=16b0001

7、0;16b00010: row=16b00100;16b00100: row=16b01000;16b01000: row=16b10000;16b10000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000;16b00000: row=16b00000

8、;16b00000: row=16b00000;16b00000: row=16b00001;default: row=25d)begincnt=25b0;clk=clk; /1sendelsecnt=cnt+1;end always (posedge clk) /列掃描begincase(line) 4h0:begin row=16b11111;line=4h1; end4h1:begin row=16b11111;line=4h2; end4h2:begin row=16b11111;line=4h3; end4h3:begin row=16b11111;line=4h4; end4h4:

9、begin row=16b11111;line=4h5; end4h5:begin row=16b11111;line=4h6; end4h6:begin row=16b11111;line=4h7; end4h7:begin row=16b11111;line=4h8; end4h8:begin row=16b11111;line=4h9; end4h9:begin row=16b11111;line=4ha; end4ha:begin row=16b11111;line=4hb; end4hb:begin row=16b11111;line=4hc; end4hc:begin row=16

10、b11111;line=4hd; end4hd:begin row=16b11111;line=4he; end4he:begin row=16b11111;line=4hf; end4hf:begin row=16b11111;line=4h0; enddefault:line=4h0;endcaseendendmodule5.下載電路及引腳分配設計 設計中用實驗箱自帶的50MHz時鐘信號作為輸入端,用sel0、sel1、sel2、sel3四個使能端選通點陣,EP2C8Q208C8就會工作在給點陣下命令的狀態,并用line和row分別作為點陣的行、列選通端,最終使得點陣正常工作,如圖3.5.

11、1所示。圖3.5.1 輸入輸出端口電路輸入、輸出引腳分配設計如圖3.5.2所示。圖3.5.2 引腳分配4、 實驗仿真及結論1. 模塊仿真(1) 列掃描仿真波形 列掃描仿真波形如圖4.1.1所示。圖4.1.1 列掃描仿真波形通過波形可以看到,仿真用1s的時鐘信號觸發,以列為單位的二極管以1s為時間間隔一次被選中,而以行為單位的二極管始終被選通。例如,列信號選通第一列時,所有行的二極管都是亮的,綜合以上兩個條件,得到的最終結果就是第一列的二極管都是亮的。(2) 行掃描仿真波形行掃描仿真波形如圖4.1.2所示。圖4.1.2 行掃描仿真波形通過波形看到,行信號隨著列掃描脈沖從第1行到第16行依次循環選

12、通,而列信號則隨著列脈沖從第1列到第16列依次循環選通。程序中設置的行脈沖周期為20s,而列脈沖周期為1s,則被選通行的二極管全亮,并隨著列信號的循環而移動。2. 實驗結論本次設計實驗實現了16*16點陣行和列的依次循環掃描,行、列內部掃描的時間間隔均為1s,行列之間的循環周期為16s。先開始行掃描,行掃描完成后列再開始掃描,依次循環顯示在點陣上。仿真結果與實驗現象均說明了,程序設計的功能和時序基本無誤,整個系統功能已實現,實驗目的基本達到。5、 實驗總結與體會1.實驗總結總體來說這次試驗還是比較順利的,我在上實驗課時弄明白了點陣的工作原理,所以當時就把點陣列掃描的功能實現了。課后我又寫出行掃描的程序,不過在實驗箱上下載運行時發現了一些問題?,F在我主要說一下遇到的問題以解決的方案。我把原程序下載到實驗箱之后,看到的現象是一列二極管與一個二極管交替移動。我首先在頂層將列掃描屏蔽,只讓行掃描運行,看到的現象是一個點沿著斜線循環移動,初步判定是行掃描的脈沖頻率不夠高,將其由50Hz改為50KHz之后再次下載就可以看到連續的線了。將行掃描屏蔽,單獨下載列掃描,正視列掃描沒有問題。再聯合下載發現現象是行移動一行,列移動一列,而不是行完全掃描完成列在掃描的狀態,此時判斷應該是頂層文件的時間間隔沒有控制好。仔細檢查程序后發現,時鐘分給整

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論