標題: 基于FPGA的加減法計數器的系統設計 [打印本頁]
作者: boomer 時間: 2019-11-17 15:23
標題: 基于FPGA的加減法計數器的系統設計
原理
1. 計時器
24 小時計時器的電路框圖如圖 8.1 所示。
24 小時計時器由 2 個 60 進制加計數器和 1 個 24 進制加計數器構成,輸入 CLK 為 1Hz (秒)的時鐘,經過60 進制加計數后產生 1 分鐘的進位時鐘信號,再經過 60 進制加計數后產生 1 小時的進位時鐘信號送給 24 進制加計數器進行加計數,當加計數到達 23:59:59 后, 再來一個秒脈沖,產生時的進位輸出。將兩個 60 進制加計數器和一個 24 進制加計數器的輸 出送數碼管顯示,得到計時器的顯示結果。其中,秒脈沖由 EDA 實訓儀上的 20MHz 晶振分 頻得到。
2. 倒計時器
24 小時倒計時器的電路框圖如圖 8.2 所示。
24 小時倒計時器由 2 個 60 進制減計數器和 1 個 24 進制減計數器構成,輸入 CLK 為 1Hz (秒)的時鐘,經過60 進制減計數后產生 1 分鐘的借位時鐘信號,再經過 60 進制減計數后產生 1 小時的借位時鐘信號送給 24 進制減計數器進行減計數,當減計數到達 00:00:00 后, 產生時的借位輸出,同時 24 小時倒計時器停止倒計時,并發出提醒信號。將兩個 60 進制減 計數器和一個 24 進制減計數器的輸出送數碼管顯示,得到 倒計時的顯示結果。其中,秒脈沖 由 EDA實訓儀上的 20MHz 晶振分頻得到。
三、實驗設備
① EDA 實訓儀 1 臺。
② 計算機 1 臺(裝有 Quartus II 軟件)。
四、實驗內容
1. 計時器
在 Quartus II 軟件中,按照實驗原理中 24 小時計時器的電路框圖,用 Verilog HDL 編程 設計計時器電路,然后進行編輯、編譯(綜合)、仿真,引腳的鎖定,并下載到 EDA 實訓儀 中進行驗證。
注: 用 EDA 實訓儀上的 20MHz 晶振作為計時器的時鐘輸入端,按鍵 S8~S6 分別作為計 時器的校時、校分、校秒輸入端,撥動開關 S0 作為計時器的清零輸入端,撥動開關 S1 作為 計時器的暫停輸入端,用數碼管 SEG5~SEG0 分別作為時、分、秒的輸出端,用發光二極管 L0 作為進位輸出端 COUT。
2. 倒計時器
在 Quartus II 軟件中,按照實驗原理中 24 小時倒計時器的電路框圖,用 Verilog HDL 編
程設計倒計時器電路,然后進行編輯、編譯(綜合)、仿真,引腳的鎖定,并下載到 EDA 實 訓儀中進行驗證。
注: 用 EDA 實訓儀上的 20MHz 晶振作為倒計時器的時鐘輸入端,按鍵 S8~S6 分別作為 倒計時器的校時、校分、校秒輸入端,撥動開關 S0 作為倒計時器的復位輸入端,撥動開關 S1 作為倒計時器的暫停輸入端,用數碼管 SEG5~SEG0 分別作為時、分、秒的輸出端,用發光二極管 L0 作為借位輸出端 COUT。
五、實驗預習要求
① 復習理論課本有關計數器及分頻器的內容,并認真閱讀實驗指導書,分析、掌握實驗原理,熟悉理論課本中 QuartusII 軟件的使用方法。
② 按照實驗內容的要求,編寫相應的實驗程序和畫出相應的頂層電路連線圖,寫出相應的實驗步驟。
- module cnt60(q,cout,clk,clrn,en,sel,j);
- input clk,clrn,en,sel,j;
- output reg[7:0] q;
- output reg cout;
- always @(posedge clk^j or negedge clrn)
- begin
- if(~clrn) q=0; //清0
- else if(en) //使能
- begin
- if(sel) //加減(加)
- begin
- if(q=='h59) q=0;
- else q=q+1;
- if(q[3:0]=='ha) begin
- q[3:0]=0; q[7:4]=q[7:4]+1; end
- if(q=='h59) cout=1;
- else cout=0;
- end
-
- else //加減(減)
- begin
- if(q[3:0])
- q[3:0]=q[3:0]-1;
- else if(q[3:0]==0)
- begin
- if(q[7:4]!=0)
- begin
- q[3:0]='h9;
- q[7:4]=q[7:4]-1;
- end
- else //00
- begin
- cout=cout-1;
- q='h59;
- end
- end
- end
- end
- end
- endmodule
復制代碼
24
進制加減法計數器
- module cent24(q,cout,clk,clrn,en,sel,j);
- input clk,clrn,en,sel,j;
- output reg[7:0] q;
- output reg cout;
- always @(posedge clk^j or negedge clrn)
- begin
- if(~clrn) q=0; //清0
- else if(en) //使能
- begin
- if(sel) //加減(加)
- begin
- if(q=='h23) q=0;
- else q=q+1;
- if(q[3:0]=='ha) begin
- q[3:0]=0; q[7:4]=q[7:4]+1; end
- if(q=='h23) cout=1;
- else cout=0;
- end
-
- else //加減(減)
- begin
- if(q[3:0])
- q[3:0]=q[3:0]-1;
- else if(q[3:0]==0)
- begin
- if(q[7:4]!=0)
- begin
- q[3:0]='h9;
- q[7:4]=q[7:4]-1;
- end
- else //00
- begin
- cout=cout-1;
- q='h23;
- end
- end
- end
- end
- end
- endmodule
復制代碼
圖8.5 仿真電路圖
引腳鎖定
clk Input PIN_132 3 B3_N0 PIN_132 3.3-V LVTTL (default) 24mA (default)
clrn Input PIN_8 1 B1_N0 PIN_8 3.3-V LVTTL (default) 24mA (default)
cout Output PIN_115 3 B3_N1 PIN_115 3.3-V LVTTL (default) 24mA (default)
en Input PIN_10 1 B1_N0 PIN_10 3.3-V LVTTL (default) 24mA (default)
jf Input PIN_13 1 B1_N0 PIN_13 3.3-V LVTTL (default) 24mA (default)
jm Input PIN_12 1 B1_N0 PIN_12 3.3-V LVTTL (default) 24mA (default)
js Input PIN_14 1 B1_N0 PIN_14 3.3-V LVTTL (default) 24mA (default)
qf[7] Output PIN_99 4 B4_N0 PIN_99 3.3-V LVTTL (default) 24mA (default)
qf[6] Output PIN_97 4 B4_N0 PIN_97 3.3-V LVTTL (default) 24mA (default)
qf[5] Output PIN_96 4 B4_N0 PIN_96 3.3-V LVTTL (default) 24mA (default)
qf[4] Output PIN_95 4 B4_N0 PIN_95 3.3-V LVTTL (default) 24mA (default)
qf[3] Output PIN_94 4 B4_N0 PIN_94 3.3-V LVTTL (default) 24mA (default)
qf[2] Output PIN_92 4 B4_N0 PIN_92 3.3-V LVTTL (default) 24mA (default)
qf[1] Output PIN_59 4 B4_N1 PIN_59 3.3-V LVTTL (default) 24mA (default)
qf[0] Output PIN_58 4 B4_N1 PIN_58 3.3-V LVTTL (default) 24mA (default)
qm[7] Output PIN_57 4 B4_N1 PIN_57 3.3-V LVTTL (default) 24mA (default)
qm[6] Output PIN_56 4 B4_N1 PIN_56 3.3-V LVTTL (default) 24mA (default)
qm[5] Output PIN_48 1 B1_N1 PIN_48 3.3-V LVTTL (default) 24mA (default)
qm[4] Output PIN_47 1 B1_N1 PIN_47 3.3-V LVTTL (default) 24mA (default)
qm[3] Output PIN_46 1 B1_N1 PIN_46 3.3-V LVTTL (default) 24mA (default)
qm[2] Output PIN_45 1 B1_N1 PIN_45 3.3-V LVTTL (default) 24mA (default)
qm[1] Output PIN_44 1 B1_N1 PIN_44 3.3-V LVTTL (default) 24mA (default)
qm[0] Output PIN_43 1 B1_N1 PIN_43 3.3-V LVTTL (default) 24mA (default)
qs[7] Output PIN_114 3 B3_N1 PIN_114 3.3-V LVTTL (default) 24mA (default)
qs[6] Output PIN_113 3 B3_N1 PIN_113 3.3-V LVTTL (default) 24mA (default)
qs[5] Output PIN_112 3 B3_N1 PIN_112 3.3-V LVTTL (default) 24mA (default)
qs[4] Output PIN_110 3 B3_N1 PIN_110 3.3-V LVTTL (default) 24mA (default)
qs[3] Output PIN_104 4 B4_N0 PIN_104 3.3-V LVTTL (default) 24mA (default)
qs[2] Output PIN_103 4 B4_N0 PIN_103 3.3-V LVTTL (default) 24mA (default)
qs[1] Output PIN_102 4 B4_N0 PIN_102 3.3-V LVTTL (default) 24mA (default)
qs[0] Output PIN_101 4 B4_N0 PIN_101 3.3-V LVTTL (default) 24mA (default)
sel Input PIN_11 1 B1_N0 PIN_11 3.3-V LVTTL (default) 24mA (default)
-
cnt.png
(24.76 KB, 下載次數: 146)
下載附件
2019-11-17 15:08 上傳
仿真電路圖
-
-
cnt.rar
2019-11-17 15:22 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
5.62 MB, 下載次數: 24, 下載積分: 黑幣 -5
項目文件
歡迎光臨 (http://m.zg4o1577.cn/bbs/) |
Powered by Discuz! X3.1 |
主站蜘蛛池模板:
欧美黄色片视频
|
免费国产一区二区
|
天堂中文字幕免费一区
|
www.天堂av
|
亚洲国产成人精品女人久久久
|
黄网在线播放
|
国产人成一区二区三区影院
|
中文字幕免费在线观看
|
日本免费在线视频
|
四级黄色片
|
日韩国产在线观看
|
色综合天天综合网天天狠天天
|
黄色影院在线观看
|
久久爱影视i
|
日韩毛片网站
|
欧美成人三级
|
玖玖在线播放
|
免费av网站在线观看
|
欧美日韩在线免费观看
|
日产久久视频
|
天海翼一区二区
|
在线小视频|
91一级片
|
国产福利网站
|
国产免费小视频
|
黄色在线观看免费
|
午夜在线视频观看日韩17c
|
欧美精品在线播放
|
久久视频在线免费观看
|
亚洲视频色
|
日日操夜夜撸
|
国产三级在线看
|
天天干天天干天天操
|
久久黄色大片
|
欧美一级在线播放
|
国产精品久久久一区二区
|
成人毛片在线
|
国产伦精品一区二区三毛
|
国产一区免费在线观看
|
欧美色婷婷
|
免费网站av|