第一個實驗就簡單的實現一個燈閃爍的程序(主要也是為了回顧一下語法,仿真以及下載的流程)
基本思路是:利用計數器去計數0.5s,然后每隔0.5s改變以下LED輸出引腳的電平狀態
硬件電路如下:(與FPGA中的對應連接,在代碼注釋中給出)
1.在上次建立的那個設計文件里輸入以下內容
(這個實驗主要做一個演示,以后建工程等步驟不再贅述)
1 /********************************************* 2 *文件名:led.v 3 *功能:實現開發板上LED燈閃爍(閃爍頻率為1s) 4 *平台:win7 64 quartus ii 64bit 5 *連接:CLK -- 12 6 RST_n -- 44 7 LED0 -- 21 8 *********************************************/ 9 10 module led( 11 CLK,RST_n, 12 LED0 13 ); 14 15 input CLK; 16 input RST_n; 17 output LED0; 18 19 //************************************ 20 //因為板子晶振為50M,0.5秒也就是要 21 //0.5*50*1000_000 = 25_000_000次計數 22 parameter half_sec = 25'd25_000_000; 23 //************************************ 24 25 //************************************ 26 reg [24:0]count; 27 28 always @(posedge CLK or negedge RST_n) 29 begin 30 if(!RST_n) 31 count <= 25'd0; 32 else if(count == half_sec) 33 count <= 25'd0; 34 else 35 count <= count + 1'b1; 36 end 37 38 //*********************************** 39 reg rLED0; 40 41 always @(posedge CLK or negedge RST_n) 42 begin 43 if(!RST_n) 44 rLED0 <= 1'b0; 45 else if(count == half_sec) 46 rLED0 <= ~rLED0; 47 end 48 49 assign LED0 = rLED0; 50 51 52 endmodule
2.保存文件,並對該設計進行綜合
綜合完成后,任務窗口會出現如下顯示:
3.接下來分配引腳
點擊下列圖標
顯示如下:然后直接在圖中標注部分,修改成開發板上的連接即可
修改完成后,關閉此界面。
3.注意到,綜合之后有一個警告:
這個是指對於沒有用到的引腳的設置,一般我們要設置不用的引腳為:輸入三態狀態!
打開assignments--device
顯示如下:點擊device and pin options
顯示如下:選擇unused pins里面的as input tri-stated
最后點擊ok即可