因为芯片本身的模值大于所要设计的模值,所以我们可以利用芯片的清零端或置数端跳过多余的状态来实现。
1. 反馈置零法(反馈复位法)
从芯片的输出端引出状态反馈去控制芯片的清零端,强迫计数器停止当前计数并清零,以实现计数值从0到M-1的M进制计数器。
例1. 用74LS90构成七进制计数器。
解:首先将74LS90接成8421BCD码十进制计数器。M=7的二进制代码为0111。由于74LS90是高电平复位,应采用与逻辑反馈,则反馈置0逻辑表达式为Cr=Q2Q1Q0,将与门的输出Cr接到直接复位端R01、R02。接线图如图所示。其状态循环为:
说明:循环中0111状态出现,但持续时间极短,因为Cr=1,立即使输出置“0”。0111状态叫做过渡状态,它不在有效循环内,但它又是不可缺少的。 2、反馈置数法例2. 用74LS161构成7进制计数器。要求采用反馈置数法来实现。
分析:从74LS161的功能表可以看出,当时,从芯片的输出端引出状态反馈去控制芯片的置数端,强迫计数器停止当前计数,并当CP上升沿到来时,数据端的数据D3D2D1D0赋给输出端,以实现计数值从D3D2D1D0开始的M个状态。
解:数据端可以从0000→…→1111 16个状态中任选1个。假设D3D2D1D0=1011。
所要设计的计数器是7进制,则循环状态为
1011→1100→1101→1110→1111→0000→0001
0001为反馈状态,当输出端的状态为0001时,置数端的状态为0,此时停止计数,再来一个CP上升沿,数据端的数据赋给输出端,输出端的状态变为1011,置数端的状态为1,再来一个CP上升沿,计数器又开始计数,直到反馈状态0001再次出现。