|
設計要求:
1. 4位數碼管顯示, 2位顯示分鐘,2位顯示秒鐘;
2. 有4個操作按鍵:“選擇按鍵”,“+按鍵”,“-按鍵”,“開始按鍵”;
3. 初始狀態為:數值設定狀態,通過“選擇按鍵”來切換,調整分鐘或秒鐘,然后再通過“+按鍵”和“-按鍵”來設定數值的加減,秒鐘的設定范圍為0~59,分鐘的范圍為0~99,因此總的數值的設定范圍為00:00~99:59;
4. 啟動倒計時到數值為零后停止,并點亮一個紅燈表示計時結束;
5. 在計時過程中再次按下《開始按鍵》則進入暫停狀態,計數暫停,按下《開始按鍵》繼續
設計思路
需要設計一個脈沖發生器、4進制加法計數器、60和99進制計數器、60和100進制可逆計數器
可用分位的借位輸出端連接小燈實現要求4,通過控制時鐘來實現要求5
脈沖發生器(maich)的作用:
每當按下加(inc)或減(dec)便會產生一個脈沖,該脈沖作為可逆計數器的時鐘信號,同時還需要設立一個輸出x來判斷讓可逆計數器施行加法還是減法。例如:按下inc后產生一個脈沖作為時鐘信號,此時x為0讓后面的可逆計數器做加法;按下dec后同樣產生一個脈沖作為可逆計數器的時鐘信號,此時x為1,可逆計數器做減法。
4進制加法計數器的作用:
用來控制和判斷當前的工作狀態。前面的脈沖發生器每產生一個脈沖遍傳給計數器一個時鐘,當始終有效,使能端sel有效時該計數器將會加1.
初始狀態為0,此時輸出端的分使能端(enm)、秒使能端(ens)有效為1,分置數端(ldm)、秒置數端(lds)無效,讓兩計數器倒數計數
狀態1,輸出端的分使能端(enm)、秒使能端(ens)無效為0,分置數端(ldm)有效、秒置數端(lds)無效,將分預置數傳入分計數器
狀態2,輸出端的分使能端(enm)、秒使能端(ens)無效為0,分置數端(ldm)無效、秒置數端(lds)有效,將秒預置數傳入分計數器
狀態3,為空狀態,所以顯示的結果會與狀態2相同
60和100進制可逆計數器(coun_60x1和coun_99x1)的作用:
可逆計數器主要是用于對計數器進行預置數,將設置的開始倒數時間在計時器置數端有效的情況下傳給計數器,從設置的時間開始倒數計時。輸入x為0做加法,x為1做減法,所以每按一次加(inc)可逆計數器的值就加一;按一次(dec)可逆計數器的值就減一。60進制可逆計數器與100進制可逆計數器工作原理相同,只是所設置的值的上限不同。
60和99進制計數器(coun_60和coun_99)的作用:
計數器在時鐘有效到達上升沿時,若使能端有效、置數端無效,則進行正常倒數計數,若使能端無效、置數端有效,則停止倒數計數將可逆計數器中的預置數輸入到計數器內,當再次回到使能端有效、置數端無效時,便從所設置的數開始倒數計數,當倒數到00時便會有一個借位輸出秒計數器為co,分計數器為co1。
60進制計數器與100進制計數器的級聯:
因為60進制計數器是(00-59)代表秒位,99進制計數器(00-99)代表分位,所以每當秒計數器倒數到00時下一個狀態分計數器減一秒計數器回到59,因此將秒計數器的借位輸出端連在分計數器的使能端(該借位輸出不受時鐘控制,若受時鐘控制則分計數器將會比秒計數器慢一個時鐘信號才改變),只有在秒計數器倒數結束時分計數器才開始工作,每個循環依次往復。
2與門和1或門的作用:
enm與ens相與與輸出端start相連,可通過start來判斷此時是否在倒數計數狀態
2與門和1或門與時鐘信號相連相連是為了讓時鐘信號受到4進制加法計數器輸出端ens和enm的控制(當ens和enm無效時兩計數器的時鐘將無效從而實現暫停),因為在60和100進制計數器中為了讓借位輸出信號與分計數器變化同步,則需要先判斷借位輸出端。若始終不受4進制加法計數器輸出端ens和enm的控制,那么60和90進制計數器的時鐘信號將一直有效,將無法實現暫停功能
|
-
-
-
SHUDIANKESHE.7z
2024-4-7 04:15 上傳
點擊文件名下載附件
下載積分: 黑幣 -5
134.89 KB, 下載次數: 0, 下載積分: 黑幣 -5
評分
-
查看全部評分
|