因為芯片本身的模值大于所要設(shè)計的模值,所以我們可以利用芯片的清零端或置數(shù)端跳過多余的狀態(tài)來實現(xiàn)。
1. 反饋置零法(反饋復(fù)位法)
從芯片的輸出端引出狀態(tài)反饋去控制芯片的清零端,強迫計數(shù)器停止當(dāng)前計數(shù)并清零,以實現(xiàn)計數(shù)值從0到m-1的m進(jìn)制計數(shù)器。
例1. 用74ls90構(gòu)成七進(jìn)制計數(shù)器。
解:首先將74ls90接成8421bcd碼十進(jìn)制計數(shù)器。m=7的二進(jìn)制代碼為0111。由于74ls90是高電平復(fù)位,應(yīng)采用與邏輯反饋,則反饋置0邏輯表達(dá)式為cr=q2q1q0,將與門的輸出cr接到直接復(fù)位端r01、r02。接線圖如圖所示。其狀態(tài)循環(huán)為:
說明:循環(huán)中0111狀態(tài)出現(xiàn),但持續(xù)時間極短,因為cr=1,立即使輸出置“0”。0111狀態(tài)叫做過渡狀態(tài),它不在有效循環(huán)內(nèi),但它又是不可缺少的。
用74161也可實現(xiàn)上述功能,將cr=接到端即可。
2、反饋置數(shù)法
利用74ls161的并行輸入端和置數(shù)控制端跳過多余的狀態(tài)。
例2. 用74ls161構(gòu)成7進(jìn)制計數(shù)器。要求采用反饋置數(shù)法來實現(xiàn)。
分析:從74ls161的功能表可以看出,當(dāng)時,從芯片的輸出端引出狀態(tài)反饋去控制芯片的置數(shù)端,強迫計數(shù)器停止當(dāng)前計數(shù),并當(dāng)cp上升沿到來時,數(shù)據(jù)端的數(shù)據(jù)d3d2d1d0賦給輸出端,以實現(xiàn)計數(shù)值從d3d2d1d0開始的m個狀態(tài)。
解:數(shù)據(jù)端可以從0000→…→1111 16個狀態(tài)中任選1個。假設(shè)d3d2d1d0=1011。
所要設(shè)計的計數(shù)器是7進(jìn)制,則循環(huán)狀態(tài)為
1011→1100→1101→1110→1111→0000→0001
0001為反饋狀態(tài),當(dāng)輸出端的狀態(tài)為0001時,置數(shù)端的狀態(tài)為0,此時停止計數(shù),再來一個cp上升沿,數(shù)據(jù)端的數(shù)據(jù)賦給輸出端,輸出端的狀態(tài)變?yōu)?011,置數(shù)端的狀態(tài)為1,再來一個cp上升沿,計數(shù)器又開始計數(shù),直到反饋狀態(tài)0001再次出現(xiàn)。