計數器常用的例程
0.png (42.72 KB, 下載次數: 91)
下載附件
2018-8-21 02:18 上傳
文件夾模版
prj為工程文件存放目錄
rtl為verilog可綜合代碼
img為設計相關圖片存放目錄(主要為了方便后期寫文檔)
doc為設計相關文檔存放目錄
testbench為對應的testbench存放目錄
prj文件夾下的ip文件夾存放quartus ii中生成的ip核文件
計數器
LED,每500ms,狀態翻轉一次。
系統時鐘為50M,對應周期為20ns
500ms = 500_000_000ns/20 = 25_000_000;
計數器每500ms清零一次。
0.jpg (20.5 KB, 下載次數: 92)
下載附件
2018-8-21 02:19 上傳
Quartus_II源程序如下:
- module counter(Clk50M,Rst_n,led);
- input Clk50M; //系統時鐘,50M
- input Rst_n; //全局復位,低電平復位
-
- output reg led; //led輸出
-
- reg [24:0]cnt; //定義計數器寄存器
- //計數器計數進程
- always@(posedge Clk50M or negedge Rst_n)
- if(Rst_n == 1'b0)
- cnt <= 25'd0;
- //else if(cnt == 25'd24_999_999)
- else if(cnt == 25'd24_999)
- cnt <= 25'd0;
- else
- cnt <= cnt + 1'b1;
- //led輸出控制進程
- always@(posedge Clk50M or negedge Rst_n)
- if(Rst_n == 1'b0)
- led <= 1'b1;
- //else if(cnt == 25'd24_999_999)
- else if(cnt == 25'd24_999)
- led <= ~led;
- else
- led <= led;
- endmodule
復制代碼
所有資料51hei提供下載:
class5_counter_ip.rar
(8.89 KB, 下載次數: 16)
2018-8-20 16:50 上傳
點擊文件名下載附件
IP核 下載積分: 黑幣 -5
class4_counter.rar
(239.24 KB, 下載次數: 16)
2018-8-20 16:50 上傳
點擊文件名下載附件
計數器 下載積分: 黑幣 -5
|