任意进制计数器的设计

  • 格式:doc
  • 大小:25.00 KB
  • 文档页数:6

下载文档原格式

  / 6
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

任意进制计数器的设计

【摘要】计数器集成芯片一般有4位二进制、8位二进制或十进制计数器,而在实际应用中,往往需要设计一个任意n进制计数器,本文给出它的设计方法和案例。

【关键词】计数器;清零

一、利用反馈清零法获得计数器

1 集成计数器清零方式

异步清零方式:与计数脉冲cp无关,只要异步清零端出现清零信号,计数器立即被清零。此类计数器有同步十进制加法计数器

ct74ls160、同步4位二进制加法计数器ct74ls161、同步十进制加/减计数器ct74ls192、同步4位二进制加/减计数器ct74ls193等。

同步清零方式:与计数脉冲cp有关,同步清零端获得清零信号后,计数器并不立刻被清零,只是为清零创造条件,还需要再输入一个计数脉冲cp,计数器才被清零。属于此类计数器有同步十进制加法计数器ct74ls162、同步4位二进制加法计数器ct74ls163、同步十进制加/减计数器ct74ls190、同步4位二进制加/减计数器ct74ls191等。

2 反馈清零法

对于异步清零方式:应在输入第n个计数脉冲cp后,利用计数器状态sn进行译码产生清零信号加到异步清零端上,立刻使计数器清零,即实现了n计数器。在计数器的有效循环中不包括状态sn,所以状态sn只在极短的瞬间出现称为过渡状态。

对于同步清零方式:应在输入第n-1个计数脉冲cp后,利用计数器状态sn-1进行译码产生清零信号,在输入第n个计数脉冲cp 时,计数器才被清零,回到初始零状态,从而实现n计数器。可见同步清零没有过渡状态。

利用计数器的清零功能构成n计数器时,并行数据输入端可接任意数据,其方法如下:

①写出n计数器状态的二进制代码。异步清零方式利用状态sn,同步清零方式利用状态sn-1。

②写出反馈清零函数。

③画逻辑图。

例1 试用ct74ls160的异步清零功能构成六进制计数器。

解:①写出sn的二进制代码。sn=s6=0110

②写出反馈清零函数。

③画逻辑图。如图1所示。

图1 用ct74ls160的异步清零功能构成六进制计数器

图2 用ct74ls162的同步清零功能构成六进制计数器

例2 试用ct74ls162的同步清零功能构成六进制计数器。

解:

①写出sn-1的二进制代码。sn-1=s5=0101

②写出反馈清零函数。

③画逻辑图。如图2所示

二、利用反馈置数法获得n计数器

1 集成计数器置数方式

异步置数方式:与计数脉冲cp无关,只要异步置数端出现置数信号,计数器立即被置数。属于此类计数器有同步十进制加/减计数器ct74ls190/192、同步4位二进制加法/减计数器

ct74ls191/193。

同步置数方式:与计数脉冲cp有关,同步置数端获得置数信号后,计数器并不立刻被置数,还需要再输入一个计数脉冲才能将预置数置于计数器。属于此类计数器有同步十进制加法计数器

ct74ls160/162、同步4位二进制加法计数器ct74ls161/163。

2反馈置数法

利用计数器的置数功能构成n计数器时,要确定计数器从某个预置数状态开始计数,并行数据输入端d3~d0接入计数器的计数起始数据,计满n个状态后产生置数信号,使计数器返回到预置数状态。

利用计数器的清零功能构成n计数器的方法如下:

①确定计数器计数状态和预置数状态。

②写出计数器状态的二进制代码。当预置数为全0时,取前n 个计数状态,则异步置数方式利用状态sn,同步清零方式利用状态sn-1。

③写出反馈置数函数。

④画逻辑图。

例3 试用ct74ls161的同步置数功能构成十进制计数器。

解:ct74ls161是十六进制计数器,置数状态在0000~1111这16个状态中任选,因此实现的方案很多。

方法一:置全0法(前个状态计数)

①确定计数器计数状态和预置数状态。取置数状态为s0=0000,预置数d3d2d1d0=0000,计数范围为0000~1001。

②写出计数器状态的二进制代码。

③写出反馈置数函数。

③画逻辑图。如图3(a)所示。

(a)

(b)

图3 用ct74ls161的同步置数功能构成十进制计数器

(a)置全0法(前10个状态计数)

(b)co置数法(后10个状态计数)

方法二:co置数法(后n个状态计数)

用进位输出信号co作为预置数的控制信号。m-n=16-10=(6)10=(0110)2,设预置数d3d2d1d0=0110,计数范围为0110~1111。计到1111时,进位输出信号co=q3q2q1q0=1,通过非门产生一个置数信号加到同步置数端,即,在下一个计数脉冲cp到来时,把预置数d3d2d1d0=0110并行置入q3q2q1q0中,计数器返回到预置数状态q3q2q1q0=0110,从而实现了十进制计数。电路如图3(b)。

三、大容量n进制计数器

当要求实现的计数器的计数模值超过单片计数器的计数范围

时,可将多片计数器级联起来,就可获得大容量进制计数器。常用的方法有两种:

1 大模分解法

如果将模n可以分解为多个因数相乘(每个因数小于单片计数器的最大值),即,则可先用片计数器分别组成模值为n1、n2、…、nn的计数器,然后再将它们级联起来组成n进制计数器。

例4 试用两片ct74ls190构成五十进制计数器。

解:,个位片ct74ls190(1)组成十进制计数器(低位片);十位片ct74ls190(2)组成五进制计数器(高位片),然后级联组成五十进制计数器,电路如图4所示。图中,级联采用串行进位方式,即将低位片ct74ls190(1)串行进位端的输出信号作为高位片计数器ct74ls190(2)的计数输入脉冲。当十位计数器ct74ls190(2)计到5时,异步置数端端,计数器被置数到0,从而实现了五十进制计数。

图4 两片ct74ls190构成五十进制计数器

三、整体反馈置零或整体反馈置数法

例5 试用两片ct74ls161构成四十二进制计数器。

解:(1)将两片ct74ls161采用并行进位方式组成进制计数器。

(2)将256进制计数器采用整体反馈置零法构成42进制计数器。42进制计数器对应的二进制代码,当计数器计到42时,计数器状态,反馈置零函数,这是经与非门输出低电平,使两片

ct74ls161同时置零,从而实现四十二进制计数,逻辑图如图5所