加减BCD计数器
- 格式:docx
- 大小:15.82 KB
- 文档页数:3
BCD计数器电路BCD 计数器是一种特殊类型的数字计数器,它可以在应用时钟信号时计数到10我们之前看到切换T 型触发器可以用作单独的除以二计数器。
如果我们将多个触发触发器串联在一起,我们可以产生一个数字计数器,用于存储或显示特定计数序列发生的次数。
计时T 型触发器充当二进制二分频计数器,在异步计数器中,一个计数级的输出为下一级提供时钟脉冲。
然后触发器计数器有两种可能的输出状态,通过添加更多的触发器级,我们可以制作一个除以 2 的N计数器。
但是 4 位二进制计数器的问题是它们从0000计数到1111。
即十进制的0 到15。
要制作一个从 1 到10 计数的数字计数器,我们需要让计数器只计算二进制数0000到1001。
那是十进制的0 到9,对我们来说幸运的是,计数电路很容易作为集成电路使用,其中一个这样的电路是异步74LS90 十进制计数器。
数字计数器在应用时钟信号时从零向上计数到某个预定计数值。
一旦达到计数值,重置它们会将计数器返回到零以重新开始。
十进制计数器按10 的顺序计数,然后在计数到9 后返回零。
显然,要计数到二进制值9,计数器必须在其链中至少有四个触发器来表示每个十进制数字,如图所示。
BCD 计数器状态图然后十进制计数器有四个触发器和16 个潜在状态,其中只使用了10 个,如果我们将一系列计数器连接在一起,我们可以计数到100 或1,000 或我们选择的任何最终计数数字。
计数器也可以计数的总数称为它的MODULUS。
在n 次计数后返回零的计数器称为模n 计数器,例如模8 (MOD-8) 或模16 (MOD-16) 计数器等,对于“n 位计数器” ”,计数的全范围是从0到2n-1。
但正如我们在异步计数器教程中看到的那样,一个计数器在十次计数后重置,从二进制0000(十进制“0”)到1001(十进制“9”)的除以10 计数序列被称为“二进制-coded-decimal counter”或简称BCD Counter和一个MOD-10 计数器可以使用最少四个触发触发器来构建。
实验3:BCD码计数器的VHDL描述及仿真一、实验目的:1.掌握BCD码计数器的VHDL描述方法2.理解逻辑综合的概念3.掌握RTL电路原理图分析的分析方法二、实验工具:Quartus_II 9.0三、实验原理:1.BCD码计数器设计原理BCD码的特点是用4位2进制数来表示一位10进制数,计数输出为一个4*n(n=0,1,2……)位的二进制数。
本实验要求实现一个m(11~99)进制的计数器。
在BCD码计数器进行计数过程中,当低4位计数到“1001”时,再来计数脉冲,将低4位清0,并且相应的高4位加1,若此时高4位也为“1001”,则全部清0,这样可以构成一个100进制计数器。
整体置数法,即在100进制计数器的基础上,当计数计到m时,全部清零,即实现了m进制计数器。
2.BCD码计数器的程序设计对于BCD码计数器的设计,可以使用IF语句。
在VHDL中,IF语句具有3种形式,下面对它们进行分别介绍。
(1) 具有开关控制的IF语句主VHDL中,具有开关控制的IF语句是一种非常基本的顺序描述语句。
通常,它的语法结构如下所示:IF< 条件> THEN< 顺序处理语句>;END IF;当程序执行到IF语句时,如果IF语句中的条件成立,那么程序将执行后面的顺序处理语句;否则程序将跳出IF语句,转而去执行其他的程序处理语句。
(2) 具有二选择控制的IF语句在VHDL中,具有二选择控制的IF语句经常用来描述具有两个分支控制的逻辑功能电路。
通常,它的语法结构如下所示:IF< 条件> THEN< 顺序处理语句1 >;ELSE< 顺序处理语句2>;END IF;当程序执行到IF语句时,如果IF语句中的条件成立,那么程序将会执行后面的顺序处理语句1;否则程序将会去执行顺序处理语句2。
(3) 具有多选择控制的IF语句在VHDL中,具有多选择控制的IF语句经常用来描述具有多个选择分支的逻辑功能电路。
实验二 文本输入方式设计数字逻辑电路一、实验目的:1、 掌握VHDL 语言的基本语法和设计文件的基本结构。
2、 掌握组合逻辑电路的特性及设计和调试方法。
3、 掌握时序逻辑电路的特性及设计和调试方法。
4、 掌握常用的组合逻辑电路和时序逻辑电路的设计方法。
二、实验的硬件要求:1、 EDA/SOPC 实验箱。
2、 计算机。
三、实验原理数字逻辑电路可分为两类:组合逻辑电路和时序逻辑电路。
组合逻辑电路中不包含记忆单元(触发器、锁存器等),主要由逻辑门电路构成,电路在任何时刻的输出只和当前时刻的输入有关,而与以前的输入无关。
时序电路则是指包含了记忆单元的逻辑电路,其输出不仅跟当前电路的输入有关,还和输入信号作用前电路的状态有关。
1、组合逻辑电路①组合逻辑电路的定义通常组合逻辑电路可以用图1.1所示结构来描述。
其中,X0、X1、…、Xn 为输入信号, L0、L1、…、Lm 为输出信号。
输入和输出之间的逻辑函数关系可用式1.1表示: ②组合逻辑电路的设计方法组合逻辑电路的设计任务是根据给定的逻辑功能,求出可实现该逻辑功能的最合理组 合电路。
理解组合逻辑电路的设计概念应该分两个层次:(1)设计的电路在功能上是完整的,能够满足所有设计要求;(2)考虑到成本和设计复杂度,设计的电路应该是最简单的,设计最优化是设计人员必须努力达到的目标。
在设计组合逻辑电路时,首先需要对实际问题进行逻辑抽象,列出真值表,建立起逻辑模型;然后利用代数法或卡诺图法简化逻辑函数,找到最简或最合理的函数表达式;根据简化的逻辑函数画出逻辑图,并验证电路的功能完整性。
设计过程中还应该考虑到一些实际的工程问题,如被选门电路的驱动能力、扇出系数是否足够,信号传递延时是否合乎要求等。
组合电路的基本设计步骤可用图1.2来表示。
③组合逻辑电路的特点及设计时的注意事项a)组合逻辑电路的输出具有立即性,即输入发生变化时,输出立即变化。
(实际电路中图 2.1 组合逻辑电路框图L0=F0(X0,X1,···Xn) · · ·Lm=F0(X0,X1,···Xn)(1.1)图 2.2 组合电路设计步骤示意图图还要考虑器件和导线产生的延时)。
计数器的原理计数器是数字电路中广泛使用的逻辑部件,是时序逻辑电路中最重要的逻辑部件之一。
计数器除用于对输入脉冲的个数进行计数外,还可以用于分频、定时、产生节拍脉冲等。
计数器按计数脉冲的作用方式分类,有同步计数器和异步计数器;按功能分类,有加法计数器、减法计数器和既具有加法又有减法的可逆计数器;按计数进制的不同,又可分为二进制计数器、十进制计数器和任意进制计数器。
一、计数器的工作原理1、二进制计数器(1)异步二进制加法计数器图1所示为用JK触发器组成的4位异步二进制加法计数器逻辑图。
图中4个触发器F0~F3均处于计数工作状态。
计数脉冲从最低位触发器F0的CP端输入,每输入一个计数脉冲,F0的状态改变一次。
低位触发器的Q端与高位触发器的CP端相连。
每当低位触发器的状态由1变0时,即输出一负跳变脉冲时,高位触发器翻转。
各触发器置0端R D并联,作为清0端,清0后,使触发器初态为0000。
当第一个计数脉冲输入后,脉冲后沿使F0的Q0由0变1,F1、F2、F3均保持0态,计数器的状态为0001;当图1 4位异步二进制加法计数器第二个计数脉冲输入后,Q0由1变为0,但Q0的这个负跳变加至F1的CP端,使Q1由0变为1,而此时F3、F2仍保持0状态,计数器的状态为0010。
依此类推,对于F0来说,每来一个计数脉冲后沿,Q0的状态就改变,而对于F1、F2、F3来说,则要看前一位输出端Q是否从1跳到0,即后沿到来时,其输出端的状态才改变,否则Q1、Q2、Q3端的状态同前一个状态一样。
这样在第15个计数脉冲输入后,计数器的状态为1111,第16个计数脉冲输入,计数器恢复为0000。
由上述分析可知,一个4位二进制加法计数器有24=16种状态,每经过十六个计数脉冲,计数器的状态就循环一次。
通常把计数器的状态数称之为计数器的进制数(或称计数器的模),因此,4位二进制计数器也可称之为1位十六进制(模16)计数器。
表1所示为4位二进制加法计数器的状态表。
设计一个1位的BCD数减法器具体要求:1)参考有关资料,找出要使用的芯片;2)写出设计过程,并画出原理图;3)使用Verilog HDL进行仿真。
一,设计过程方案一:思路示意图:输入减法器逻辑门电路输出电路设计:1,一位的BCD减法器可以使用74×283加法器来实现。
X-Y=X+Y/+1 = X3X2X1X0 + Y3/Y2/Y1/Y0/ + 1,2,对于其输出结果,大数减小数,其进位为1,小数减大数其进位为0,故符号位需对c-out取反。
3,其具体真值表如下图所示:C0 Y3 Y2 Y1 Y0 FU F3 F2 F1 F0 1 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 0 1 1 0 0 1 0 0 0 0 1 0 1 0 0 1 1 0 0 0 1 1 1 0 1 0 0 0 0 1 0 0 1 0 1 0 1 0 0 1 0 1 1 0 1 1 0 0 0 1 1 0 1 0 1 1 1 0 0 1 1 1 1 1 0 0 0 0 1 0 0 0 1 1 0 0 1 0 1 0 0 1 0 1 1 1 1 1 0 0 0 1 0 1 1 1 0 1 0 0 1 0 0 1 1 0 1 1 0 0 1 1 0 1 1 0 0 1 0 1 0 0 0 1 0 1 1 1 0 1 0 1 0 1 0 1 0 1 0 1 1 0 0 1 0 0 1 1 O 1 1 1 0 1 0 0 0 1 1 0 0 0 0 0 1 1 1 1 1 0 0 14,对如上的真值表利用卡诺图等方法进行化解,具体结果如下0'=C Fu0123001233Y Y Y Y C Y Y Y Y F ''+'''=01230123002302302'''+''+''+'=Y Y Y Y C Y Y Y C Y Y Y C Y Y C F0123001230012300123012312301Y Y Y Y C Y Y Y Y C Y Y Y Y C Y Y Y Y C Y Y COY Y Y Y C F '''+'''+''+''+'+''= 00Y F =由此关系,利用74×283与门电路搭建电路图,如图所示; 由于此图规模太大,整体示意图如图下:具体仿真如图所示:第一个为8-6的仿真下面为1-9的仿真图;方案二:思路示意图:电路设计:1,一位的BCD 减法器可以使用74×283加法器来实现。
双BCD 同步加法计数器计数器是由触发器和逻辑控制电路构成的时序电路,其输出状态与时钟脉冲有关。
计数器分同步计数器、异步计数器两大类。
CMOS计数器的分类如下:异步计数器:CD4020,CD4024,CD4060加计数:CD4518,CD4520 减计数(可预置):MC14522,CD4526同步计数器 加计数(可预置):CD40160,CD40161加/减计数(可预置):CD4510,CD40192计数/分配器:CD4017,CD4022CD4518是常用的计数器电路,内部包含两个二-十进制同步加法计数器,每个计数器由4个T 触发器(T 1~T 4)构成。
一、CD4518的工作原理CD4518设计了两个时钟输入端:CP 、EN 。
CP 端靠上升沿触发,此时EN =1;EN 端靠下降沿触发,要求CP =0。
巧妙地利用CP 端和EN 端,还可作为数字频率计的计数门。
R 为复位端,R =1(接高电平或正脉冲)时计数器复零,正常计数时R =0。
Q 4~Q 1为BCD 码输出端,可输出8、4、2、1编码的数据。
二、CD4518的应用1. 多级串行计数CD4518未设置进位端,但可利用Q 4做输出端。
有人误将第一级的Q 4端接到第二级的CP 端,结果发现计数变成“逢八进一”了。
原因在于Q 4是在CP 8作用下产生正跳变的,其上升沿不能作进位脉冲,只有其下降沿才是“逢十进一”的进位信号。
正确接法应是将低位的Q 4端接高位的EN 端,高位计数器的CP 端接U SS 。
串行级联电路如图3-2-2所示。
仅对最低位计数器而言,用CP 或EN 作时钟输入端均可。
图3-2-2 串行级联电路2. 与指轮开关组成译码电路CD4518配以BCD 码指轮开关,构成的译码电路如图3-2-3所示。
图3-2-3 由计数器与指轮开关构成的译码电路电路特点:(1)支轮开关与计数器输出端发生关系;(2)隔离二极管的负极分别接CD4518输出端;(3)该电路等效于一个四端与门;(4)仅当计数状态与指轮开关的设定值完全相符时,指轮开关才输出一个符合信号U A。
BCD码与计数器二-十进制BCD码:1、概念:BCD码是用一组四位二进制数码来表求一位十进制数的编码2、四位二进制数码有16种组合其中合法的就以下十组:0:00001:00012:00103:00114:01005:01016:01107:01118:10009:1001以下是不合法:1010,1011、1100、1101、1110、1111计数器我们高考的时候数电里面的最后大题会是15分,基本上是考计数器重点:如何判断几进制?如何去判断考试的题目是四位二进制计数器还是十进制计数器?还是九进制计器?还是八进制计数器?还是5进制计数器?还是N进制计数器?1、已以解决十进制计数器的判断2、在触发器构成的电路中,一个触发器表示一位数字。
所以四位二进制计数器需要四个触发器。
那么十进制计数器需要几个触发器?好的!大家都说四个,对的那么如果考试的时候电路当中只出现三个触发器,就不可能去判断是十进制计数器3、如何判断电路是不是二进制计数器2位:00-01-10-11-00(二位二进制加法)(四种组合中途没有归0过)3位:000-001-010-011-100-101-110-111-000(三位二进制加法)(八种组合中途没有归0过)4位:0000-0001-。
-1001-1010-。
1111-0000(四位二进制加法计数器)(十六种组合中途没有归0过)判断以下情况是几进制:1、0000-0001、、、、-1010-0000?2、0000-0001、、、、-1110-0000?3、000-110-、、、-101-000?8421-BCD码:8421是什么意思?代表每一位上的权OK所以我们把这一类编码称为有权码。
有权码是不是8421-BCD码一样呢?有权码:1、8421-BCD码2、2421-BCD码3、5421-BCD码以上3种编码都可以来表示一位十进制数0-9对于我们中职学生来说,我们只要掌握8421-BCD码就行了OK了8:10008421,11102421-BCD,10115421-BCD 7: 01118421 11012421-BCD,01112421-BCD逻辑函数的化简:(高考填空题)我们学习的数电应用主要在于两方面的应用1、组合逻辑电路的应用2、时序逻辑电路应用那么我们高考会是什么形式出现?1、给你一个任务单,叫你设计一个能够实现任务功能的电路2、给你一个电路图,叫你分析这个电路它能实现什么功能。
60秒计数器摘要60秒计数器作为一种工具,可以用来计时、定时,如用在定时炸弹。
本设计是以60秒计数器为基本理念。
利用AT89C52单片机及外围接口实现的计时系统,利用单片机的定时器/计数器定时和记数的原理,将软、硬件有机地结合起来,使得系统能够正确地进行计时,同时使数码管能够正确地显示时间,扬声器发生提示。
关键词:AT89C52 数码管计时报警1.任务与要求设计并制作一个BCD码显示60秒计数器,并实现00-01-…60-00-…计数。
当计数到60秒时,报警1秒,并停留显示在60秒状态。
复位后才恢复到00状态。
2.计时原理定时计数器工作方式2(M1M0=10)M1M0=10时,定时器T0和T1设置为能自动重装计数器初值的8位定时/计数器工作方式2,计数器的计数值由下式确定:N=28-x=256-x计数范围为1—256。
定时器的定时值由下式确定:t=N×T=(256-x)T如果晶体振荡器频率fosc=12MHz,则T=1us,定时范围为1—256us;若晶体振荡器频率fosc=6MHz,则T=2us,定时范围为1—512us。
3 硬件电路分析硬件如上路,与P0。
0,接的是开始开关,与P0。
1接的是蜂鸣器,与P3。
0连接的LED用于模拟秒闪信号,与P2口连接的BCD数码管显示个位,与P1口连接的BCD数码管显示十位,BCD数码管为共阴极。
4 秒信号发生器设计首先设置方式字:TMOD=00000010B计算计数初值:方式2的最大定时为512us,要产生1秒的定时用多次溢出才能实现;(256-X)*T*N=t 其中,T=2us,t=1s取X=250,则N=2000,溢出次数2000超过了255,因此要用至少两个计数器作为溢出次数计数器。
即:N=n1*n2其中,n1和n2必须为小于255的整数,可以取n1=50,n2=40n1=100,n2=20n1=200,n2=10n1=250,n2=8由于任务中要求有一个秒闪信号,因此我们采用三个计数器作为溢出次数计数器,即N=n1*n2*n3=2*20*505 复位电路的设计单片机的第9脚RST为硬件复位端,只要将该端持续4个机器周期的高电平即可实现复位,复位后单片机的各状态都恢复到初始化状态,其电路图如图6所示:图6 复位电路图6中由按键RESET1以及电解电容C3、电阻R2构成按键及上电复位电路。