BCD七段显示译码器
实验六 BCD对七段显示器译码器
实验六BCD对七段显示器译码器一、目的:1.能了解BCD对七段显示器译码器电路的设计原理。
2.能利用AHDL语言设计一个BCD对七段显示器译码器电路。
3.能自行以CPLD数位发展实验系统验证所设计电路的正确性。
二、电路图:三、实验器配置图:四、实验步骤与画面:1.建立一个名为BCD_Dec7.v的新文件,并在quaruts Ⅱ文字编辑器中,以VerilogHDL语言来设计程式,图U6-1为算术逻辑运算单元的VerilogHDL程式。
其中in为输入端口,out为输出端口。
2.存储、检查及编译。
3.创建元件符号。
4.创建波形文件,设定合适的端口信号,仿真元件的波形。
观察波形图可以看出当s端口选择不同功能时,芯片会对A、B数据进行相应的操作。
5.请依照下表改变i[3..0]之值,观察并记录其输出的字型。
五、相关说明:1.BCD对七段显示器解码器的程式主要是以TABLE叙述来完成,我们只要将输出入关系以列表方式列出後,编译器就会自动将其编译化简成逻辑运算闸结构。
2.程式中用"%"符号字元括起来的为注解用文字。
编译器并不会处理。
3.对于一个微电脑记忆体位址分配解码控制以及周边之解码控制电路而言,若一一将每个输入变数所对应的解码输出列表出来的话。
简直是一件不可能的事,此时只有采用"X"don't care方式来表示,才能完成此不可能的任务,请参考图U7-3的程式范例。
上面的例子是表示:ROM的记忆体位址是在0000H—3FFFFH范围,而RAM的位址是在8000H—9FFFH范围。
4.对于一些没有列表出来的输入状态而言,其对应输出该如何解决呢?AHDL有个DEFAULTS叙述可以帮我们解决这个问题。
例如图U7-4的程式中,对于没有成立的输入状态,其对应输出的ascii_code 值都为“00111111”。
图U7-45.使用DEFAULTS…END DEFAULTS叙述时要注意下列几件事情:(1)Logic区段中只能有一个DEFAULTS叙述,而且其位置必须是在BE-GIN关键字后的第一个。
CD4511(BCD码七段码译码器)
表 3-2 CD 4511 的真值表
8421 BCD 码对应的显示见下图
:
选用共阴极数码管,对于 CD4511 ,它与数码管的基本连接方式如下图 :
J=
=(C+B)D+BI
如不考虑消隐 BI 项,便得 J=(B+C)D 据上式,当输入 BCD 代码从 1010---1111 时,J 端都为“1”电平,从而使显示器中
的字形消隐。
输出 输入 LE BI LI D C B A a b c d e f g 显示 X X 0 XXXX1111111 8 X 0 1 X X XX 0 0 0 0 0 0 0 消隐 0 1 1 0 0 0 0 1111110 0 0 1 1 0 0 0 1 0110000 1 0 1 1 0 0 1 0 1101101 2 0 1 1 0 0 1 1 1111001 3 0 1 1 0 1 0 0 0110011 4 0 1 1 0 1 0 1 1011011 5 0 1 1 0 1 1 0 0011111 6 0 1 1 0 1 1 1 1110000 7 0 1 1 1 0 0 0 1111111 8 0 1 1 1 0 0 1 1110011 9 0 1 1 1 0 1 0 0 0 0 0 0 0 0 消隐 0 1 1 1 0 1 1 0 0 0 0 0 0 0 消隐 0 1 1 1 1 0 0 0 0 0 0 0 0 0 消隐 0 1 1 1 1 0 1 0 0 0 0 0 0 0 消隐 0 1 1 1 1 1 0 0 0 0 0 0 0 0 消隐 0 1 1 1 1 1 1 0 0 0 0 0 0 消隐 1 1 1 X X XX 锁 存 锁存
a、b、c、d、e、f、g:为译码输出端,输出为高电平 1 有效。 CD4511 的内部有上拉电阻,在输入端与数码管笔段端接上限流电阻就可
已知8421bcd可用7段译码器,驱动日字led管,显示出十进制数字。指出下列变换真值表
已知8421bcd可用7段译码器,驱动日字led管,显示出十进制数字。
指出下列变换真值表为了解决这个问题,我们首先需要了解7段译码器是如何工作的。
7段译码器是一种集成电路,它可以将一个4位二进制数解码为7个输出信号,这些信号可以驱动7段LED显示器以显示数字。
通常,对于一个4位二进制数,其范围是0000到1001,对应于十进制中的0到9。
对于每一个十进制数字,7段译码器都会产生一个特定的输出组合来驱动LED的各个段,从而显示该数字。
现在,假设我们有一个8421 BCD(二进制编码十进制)到7段译码器的转换器,其功能是将8421 BCD码转换为7段显示码。
根据8421 BCD编码的定义,它使用4位二进制代码来表示十进制数字。
其中:第1位表示千位(8)第2位表示百位(4)第3位表示十位(2)第4位表示个位(1)例如,数字5的8421 BCD编码是0101。
基于这个编码规则,我们可以得出以下变换真值表:输入(8421 BCD)输出(7段显示码)显示数字0000 0x3F (点亮第1-7段) 00001 0x06 (点亮第2-4-6段) 10010 0x5B (点亮第段) 20011 0x4F (点亮第段) 30100 0x66 (点亮第段) 40101 0x6D (点亮第段) 50110 0x7D (点亮第段) 60111 0x07 (点亮第段) 71000 0x7F (点亮第段) 81001 0x6F (点亮第段) 9注意:这里的“点亮”是指对应的LED段应当亮起。
例如,数字3的7段显示码是0x4F,意味着第1、3、6、7段应该亮起。
BCD-7段译码器、四位超前进位加法器、四位数值比较器
BCD-7段译码器一、电路图a=A0A1'A2'A3'+A0'A1'A2A3'=A1'A3'(A0异或A2) (其中撇号’表示“非”)b=A3'A2A1'A0+A3'A2A1A0'=A3'A2(A1异或A0)c=A3'A2'A1A0'd=A3'A2'A1'A0+A3'A2A1A0+A3'A2A1'A0'e=(A2+A1+A0)(A1'+A0)f=A3'A2'A1'A0+A3'A2A1A0+A3'A2'A1g=A3'A2'A1'+A3'A2A1A0二、实验结果a)仿真结果{A3,A2,A1,A0}取遍0000,0001,0010,0011,0100,0101,0110,0111,1000,1001,结果均符合要求。
b)在实际FPGA中实验结果:符合要求。
三、结果分析a)输入值范围在0000-1001之间时,可以实现BCD码转7段显示码功能。
但在输入值超出范围时将显示乱码。
若不允许乱码出现,可将卡诺图中的不确定性项d全部改为需要的值,以提示输入错误或不显示任何内容。
但这将使电路规模大幅增加。
b)关键路径含3级门。
其中a,b使用了异或门,但异或门的输入均为原变量。
通过异或门的路径最多只需通过2级逻辑门。
若全部改用与门、或门,则必须有反变量输入,使a,b的关键路径仍然含有3级门,因此不能提升速度,但每个函数必需的带宽都将从4增加为8。
如果与门、或门过剩,异或门不足,且带宽不是制造过程中的制约因素,则更适宜使用与门、或门。
由以上可知,使用异或门可以避免反变量输入,节约1级非门的相应时间,节约带宽。
d函数在卡诺图的分布导致其无法很好化简,因此将占用较多带宽。
示译码器CD4511
示译码器CD4511CD4511是一个用于驱动共阴极 LED (数码管)显示器的 BCD 码—七段码译码器,特点如下:具有BCD转换、消隐和锁存控制、七段译码及驱动功能的CMOS电路能提供较大的拉电流。
可直接驱动LED显示器。
用CD4511实现LED与接口方法如下图:其功能介绍如下:BI:4脚是消隐输入控制端,当BI=0 时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字。
LT:3脚是测试输入端,当BI=1,LT=0 时,译码输出全为1,不管输入 DCBA 状态如何,七段均发亮,显示“8”。
它主要用来检测数码管是否损坏。
LE:锁定控制端,当LE=0时,允许译码输出。
LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的数值。
A1、A2、A3、A4、为8421BCD码输入端。
a、b、c、d、e、f、g:为译码输出端,输出为高电平1有效。
CD4511的内部有上拉电阻,在输入端与数码管笔段端接上限流电阻就可工作。
1. CD4511的引脚CD4511具有锁存、译码、消隐功能,通常以反相器作输出级,通常用以驱动LED。
其引脚图如3-2所示。
各引脚的名称:其中7、1、2、6分别表示A、B、C、D;5、4、3分别表示LE、BI、LT;13、12、11、10、9、15、14分别表示a、b、c、d、e、f、g。
左边的引脚表示输入,右边表示输出,还有两个引脚8、16分别表示的是VDD、VSS。
2. CD4511的工作原理1. CD4511的工作真值表如表3-22. 锁存功能译码器的锁存电路由传输门和反相器组成,传输门的导通或截止由控制端LE的电平状态。
当LE为“0”电平导通,TG2截止;当LE为“1”电平时,TG1截止,TG2导通,此时有锁存作用。
如图3-3(3)译码CD4511译码用两级或非门担任,为了简化线路,先用二输入端与非门对输入数据B、C进行组合,得出、、、四项,然后将输入的数据A、D一起用或非门译码。
BCD7段译码器
1 引 言
20世纪末,数字电子技术得到了飞速发展,有力地推动和促进了社会生产力的发展和社会信息化的提高,数字电子技术的应用已经渗透到人类生活的各个方面。从计算机到手机,从数字电话到数字电视,从家用电器到军用设备,从工业自动化到航天技术,都尽可能采用了数字电子技术。
原理图描述的7段显示译码器的工作波形七段显示译码器的原理图描述显示的字形沈阳工程学院课程设计通过对bcd码显示译码器的设计我进一步了解到eda工具在我们现实生活中的作用是不可能被替代的而且在数字逻辑系统中74系列或4000系列芯片构成电路只适合简单的应用它们已不能满足人们对高科技技术的要求因此我们要更好的学习eda工具以便提高自身的实践能力与专业知识的应用能力争取更快的与社会实际和社会需要接轨
备注
1
12.30-12.31
选题,搜集资料,熟悉设计环境
2
01.02-01.06
调试程序
3
01.07-01.08
仿真程序
4
01.09-01.10
完成课程设计说明书(论文)、进行答辩
沈 阳 工 程 学 院
EDA课程设计成绩评定表
系(部):自动化学院班级:学生姓名:
指 导 教 师 评 审 意 见
评价
内容
MAX+PLUSII 具有的强大功能极大地减轻了设计者的负担,使设计者可以快速完成所需的设计,使用该软件,用户从开始设计逻辑电路到完成器件下载编程一般只需要数小时时间,其中设计的编译时间往往仅需数分钟。用于可在一个工作日内完成实现设计项目的多次修改,直至最终设计定型。 MAX+PLUS II 开发系统众多突出的特点,使它深受广大用户的青睐。
半导体数码管(或称LED数码管)是常用的显示器件,其基本单元是发光PN结,目前较多采用磷砷化镓做成的PN结,封装成为发光二极管,如图1(a)所示。当外加正向电压时,就能发出清晰的光线。发光二极管的工作电压为1.5~3V,由于工作电流为几毫安到十几毫安比较小,故实际电路应串接适当的限流电阻。
7段数码显示译码器设计
7段数码显示译码器设计数码显示译码器是一种可以将二进制代码转换为数码形式输出的电子装置。
它是数字电路中常见且重要的组成部分,用于将二进制数据转换为人们可以直接阅读和理解的数码显示。
本文将介绍一个基于74LS47芯片的7段数码显示译码器的设计。
一、设计目标设计一个能够接受4位二进制代码输入,并将其转换为对应的七段数码形式输出的译码器电路。
二、74LS47芯片介绍74LS47是一种四位BCD-7段数码译码器/驱动器芯片,它能够将4位BCD代码转换为对应的七段数码输出。
该芯片具有以下特点:1.输入:4位BCD代码(A,B,C和D)2.输出:共阳极(共阳)显示器的七个引脚(a,b,c,d,e,f和g)3.功能:将BCD代码转换为七段数码形式输出,用于显示三、电路设计1.将74LS47芯片的引脚连接至7段数码显示器的a,b,c,d,e,f和g引脚。
这些引脚负责控制七段数码的每个段。
2.A,B,C和D引脚接收4位二进制代码输入。
3. 第一个74LS47芯片的Vcc引脚连接到正电源,GND引脚连接到地。
4. 还需将每个74LS47芯片的GA和GB引脚连接在一起,形成一个输入信号的链。
GA和GB引脚连接到Vcc电源端。
5.在接有显示器的七段段引脚(a,b,c,d,e,f,g)和段选择(a-g`)之间插入电阻。
这些电阻可用于限流,避免过高电流对显示器和芯片造成损坏。
6.确保芯片和显示器之间的信号传输有效,没有短路或脱离接地。
四、工作原理1.输入:通过A、B、C和D四个引脚接收4位BCD代码,一共有16个可能的输入组合。
2.输出:将四位BCD代码转换为相应的七段数码输出,用于显示。
例如,输入“0000”将转换为“0”的数码形式。
3.七段显示器共阳极(共阳):对于共阳极的显示器,七个段引脚(a,b,c,d,e,f和g)的高电平将被激活,且通过公共引脚控制显示的数码部分。
4.区分位和段:每个数码位由七个段组成,通过该段的点亮和熄灭来表示所需显示的数字。
BCD七段数码管显示译码器电路
BCD七段数码管显示译码器电路7段数码管又分共阴和共阳两种显示方式。
如果把7段数码管的每一段都等效成发光二极管的正负两个极,那共阴就是把abcdefg这7个发光二极管的负极连接在一起并接地;它们的7个正极接到7段译码驱动电路74LS48的相对应的驱动端上(也是abcdefg)!此时若显示数字1,那么译码驱动电路输出段bc为高电平,其他段扫描输出端为低电平,以此类推。
如果7段数码管是共阳显示电路,那就需要选用74LS47译码驱动集成电路。
共阳就是把abcdefg的7个发光二极管的正极连接在一起并接到5V电源上,其余的7个负极接到74LS47相应的abcdefg输出端上。
无论共阴共阳7段显示电路,都需要加限流电阻,否则通电后就把7段译码管烧坏了!限流电阻的选取是:5V电源电压减去发光二极管的工作电压除上10ma到15ma得数即为限流电阻的值。
发光二极管的工作电压一般在1.8V--2.2V,为计算方便,通常选2V即可!发光二极管的工作电流选取在10-20ma,电流选小了,7段数码管不太亮,选大了工作时间长了发光管易烧坏!对于大功率7段数码管可根据实际情况来选取限流电阻及电阻的瓦数!发光二极管(LED)由特殊的半导体材料砷化镓、磷砷化镓等制成,可以单独使用,也可以组装成分段式或点阵式LED显示器件(半导体显示器)。
分段式显示器(LED数码管)由7条线段围成8型,每一段包含一个发光二极管。
外加正向电压时二极管导通,发出清晰的光,有红、黄、绿等色。
只要按规律控制各发光段的亮、灭,就可以显示各种字形或符号。
图4 - 17(a)是共阴式LED数码管的原理图,图4-17(b)是其表示符号。
使用时,公共阴极接地,7个阳极a~g由相应的BCD七段译码器来驱动(控制),如图4 - 17(c)所示。
BCD七段译码器的输入是一位BCD码(以D、C、B、A表示),输出是数码管各段的驱动信号(以F a~F g表示),也称4—7译码器。
EDA技术_项目5_BCD-7段显示译码器
仿真波形如下图所示
学习子领域2:数字电路的EDA设计
项目(学习情境)5
BCD-7段数码管显示译码器电路设计
任务要求
• 请根据要求在EDA实验箱上设计BCD-7 段数码管显示译码器电路,要求: • ⑴使用EDA实验箱上开关设置模块的K4、 K3、K2、K1开关作为BCD码输入; • ⑵使用EDA实验箱上键盘显示模块中最 右边一位的数码管显示输入的BCD码编 码数值; • ⑶进行功能仿真。
共阴极BCD-7段数码管显示译码器的真值表
输入端 输出端 说明
D3
0
D2
0
D1
0
D0
0
LED6 (a)
1
LED5 (b)
1
LED4 (c)
1
LED3 (d)
1
LED2 (e)
1
LED1 (f)
1
LED0 (g)
0
数码
0
0
0 0 0 0 0 0 1 1 1
0
0 0 1 1 1 1 0 0 0
0
1 1 0 0 1 1 0 0 1
1
1 1 1 1
0
1 1 1 1
1
0 0 1 1
1
0 1 0 1
0
0 0 0 0
0
0 0 0 0
0
0 0 0 0
0
0 0 0 0
0
0 0 0 0
0
0 0 0 0
0
0 0 0 0 无效
BCD-7段数码管显示译码器电路的 引脚功能图
任务2:编写BCD-7段数码管显示 译码器电路的VHDL程序
1.已学的when-else语句、withselect两种语句能否完成BCD-7段数 码管显示译码器电路的设计?
CD4511(BCD码七段码译码器)
CD4511是一个用于驱动共阴极LED (数码管)显示器的BCD 码—七段码译码器,特点如下:具有BCD转换、消隐和锁存控制、七段译码及驱动功能的CMOS电路能提供较大的拉电流。
可直接驱动LED显示器。
CD4511 是一片CMOS BCD—锁存/7 段译码/驱动器,引脚排列如图2 所示。
其中a b c d 为BCD 码输入,a为最低位。
LT为灯测试端,加高电平时,显示器正常显示,加低电平时,显示器一直显示数码“8”,各笔段都被点亮,以检查显示器是否有故障。
BI为消隐功能端,低电平时使所有笔段均消隐,正常显示时,B1端应加高电平。
另外CD4511有拒绝伪码的特点,当输入数据越过十进制数9(1001)时,显示字形也自行消隐。
LE是锁存控制端,高电平时锁存,低电平时传输数据。
a~g是7 段输出,可驱动共阴LED数码管。
另外,CD4511显示数“6”时,a段消隐;显示数“9”时,d段消隐,所以显示6、9这两个数时,字形不太美观图3是CD4511和CD4518配合而成一位计数显示电路,若要多位计数,只需将计数器级联,每级输出接一只CD4511 和LED 数码管即可。
所谓共阴LED 数码管是指7 段LED 的阴极是连在一起的,在应用中应接地。
限流电阻要根据电源电压来选取,电源电压5V时可使用300Ω的限流电阻。
用CD4511实现LED与单片机的并行接口方法如下图:(略)CD4511 引脚图其功能介绍如下:BI:4脚是消隐输入控制端,当BI=0 时,不管其它输入端状态如何,七段数码管均处于熄灭(消隐)状态,不显示数字。
LT:3脚是测试输入端,当BI=1,LT=0 时,译码输出全为1,不管输入DCBA 状态如何,七段均发亮,显示“8”。
它主要用来检测数码管是否损坏。
LE:锁定控制端,当LE=0时,允许译码输出。
LE=1时译码器是锁定保持状态,译码器输出被保持在LE=0时的数值。
A1、A2、A3、A4、为8421BCD码输入端。
7段显示译码器设计实验报告
数字钟实验报告学生专业:电子信息工程学生班级:151143C学生学号:*********学生姓名:***7段显示译码器设计151143324 ***一、实验目的:学习七段数码显示译码器设计,多层次设计方法和总线数据输入方式的仿真。
二、实验原理:7段BCD码译码器的设计,输出信号Segmentout的7位分别接数码管的7个段,高位在左,低位在右。
例如当Segmentout输出为“1101101”时,数码管的7个段:g、f、e、d、c、b、a分别接1、1、0、1、1、0、1,接有高电平的段发亮,于是数码管显示数字“5”。
如果是共阳极的数码显示器,则8段输出应取反,段显码为“10010010”,使用时要注意数码管的接法。
实际产品设计中,一般会用到多个数码管,显示几位数字。
4位数的7段数码管,4位数字共用同样的段输出。
若只想让第一个位显示,其他的位不显示,那么可以只给第一位数字供电,其他的断电,用4LED来控制的,4LED输出0001即可,若只让第二位显示则4LED输出0010即可。
这里的4LED选择控制要显示的位,称为位选。
三、实验内容:module BCD_Segment7(BCDin,Segmentout,Select);input[3:0]BCDin;output Select;output [6:0]Segmentout;reg[6:0]Segmentout;always@(BCDin)begincase(BCDin)4'h0:Segmentout=7'b1000000;4'h1:Segmentout=7'b1111001;4'h2:Segmentout=7'b0100100;4'h3:Segmentout=7'b0110000;4'h4:Segmentout=7'b0011001;4'h5:Segmentout=7'b0010010;4'h6:Segmentout=7'b0000010;4'h7:Segmentout=7'b1111000;4'h8:Segmentout=7'b0000000;4'h9:Segmentout=7'b0010000;4'hA:Segmentout=7'b0001000;4'hB:Segmentout=7'b0000011;4'hC:Segmentout=7'b1000110;4'hD:Segmentout=7'b0100001;4'hE:Segmentout=7'b0000110;4'hF:Segmentout=7'b0001110;default:Segmentout=7'bxxxxxxx;endcaseendassign Select=1'b0;endmodule四、时序仿真波形:引脚设定时序仿真波形参考设置:1、设置仿真时间。
BCD七段显示器译码器译码器CD4511引脚图及真值表
BCD七段显示器译码器/译码器CD4511引脚图及真值表
IC CD4511 是一组用来作为BCD 对共阴极LED 七段显示器译码的包装。
其引脚图,图1与真值表图2所示,其各脚功能如下:
LT:做灯泡测试用,当LT=0,则不论其它输入状态为何,其输出abcdefg=1111111,使七段显示器全亮,即显示8,以便观测七段显示器是否正常。
当LT=1,则正常*。
BI:空白输入控制,当BI=0 (LT 为1 时) 则不论DCBA 之输入为何,其输出abcdefg皆为0,即七段显示器完全不亮,此脚可供使用者控制仅对有效数据译码,避免在无意义的数据输入时显示出来造成字型的系乱。
LE:数据栓锁致能控制;在CD4511 中,不但具译码功能,更具有数据栓锁的记忆功能。
当LE=0 时(LT=1 且 BI=1),DCBA 数据会被送入IC 的缓存器中保存,以供译码器码;当LE=1 时,则IC 中的暂存器会关闭,仅保存原来在LE=0 时的DCBA数据供译码器译码。
换句话说当LE=1 时,不论DCBA 的输入数据为何,皆不影响其输出,其输出abcdefg 仍保留原来在LE 由0 转为1 以前的资料。
图1 IC CD45111 引脚功能图
图2 CD4511真值表。
实验一七段数码管显示译码器
实验⼀七段数码管显⽰译码器实验⼀七段数码显⽰译码器⼀.实验⽬的:1.设计七段显⽰译码器,并在实验板上验证;2.学习Verilog HDL⽂本⽂件进⾏逻辑设计输⼊;3.学习设计仿真⼯具的使⽤⽅法;⼆.实验内容1.实现BCD/七段显⽰译码器的“ Verilog ”语⾔设计。
说明:7段显⽰译码器的输⼊为:IN0…IN3共5根, 7段译码器的逻辑表同学⾃⾏设计,要求实现功能为:输⼊“ 0…15 ”(⼆进制),输出“ 0…9…F ”(显⽰数码),输出结果应在数码管(共阴)上显⽰出来。
2.使⽤⼯具为译码器建⽴⼀个元件符号3.设计仿真⽂件,进⾏验证。
4.编程下载并在实验箱上进⾏验证。
三.实验原理:7段数码是纯组合电路,通常的⼩规模专⽤IC,如74或4000系列的器件只能作⼗进制BCD码译码,然⽽数字系统中的数据处理和运算都是⼆进制的,所以输出表达都是⼗六进制的,为了满⾜⼗六进制数的译码显⽰,最⽅便的⽅法就是利⽤译码程序在FPGA/CPLD 中来实现。
例如6-18作为7段译码器,输出信号LED7S的7位分别接图6-17数码管的7个段,⾼位在左,低位在右。
例如当LED7S输出为“1101101”时,数码管的7个段g,f,e,d,c,b,a分别接1,1,0,1,1,0,1;接有⾼电平的段发亮,于是数码管显⽰“5”。
这⾥没有考虑表⽰⼩数点的发光管,如果要考虑,需要增加段h,然后将LED7S改为8位输出。
四.实验步骤1.编辑和输⼊设计⽂件新建⽂件夹——输⼊源程序——⽂件存盘2.创建⼯程打开并建⽴新⼯程管理窗⼝——将设计⽂件加⼊⼯程中——选择⽬标芯⽚——⼯具设置——结束设置3.全程编译前约束项⽬设置选择FPGA⽬标芯⽚——选择配置器件的⼯作⽅式——选择配置器件和编程⽅式——选择⽬标器件引脚端⼝状态——选择Verilog语⾔版本4.仿真测试五.实验参考程序module LED(A,LED7S);input [3:0]A;output [6:0]LED7S;reg [6:0]LED7S;always @ (A)begin:case(A)4'b0000: LED7S<=7'b0111111;4'b0001: LED7S<=7'b0000110;4'b0010: LED7S<=7'b1011011;4'b0011: LED7S<=7'b1001111; 4'b0100: LED7S<=7'b1100110; 4'b0101: LED7S<=7'b1101101; 4'b0110: LED7S<=7'b1111101; 4'b0111: LED7S<=7'b0000111; 4'b1000: LED7S<=7'b1111111; 4'b1001: LED7S<=7'b1101111; 4'b1010: LED7S<=7'b1110111; 4'b1011: LED7S<=7'b1111100; 4'b1100: LED7S<=7'b0111001; 4'b1101: LED7S<=7'b1011110; 4'b1110: LED7S<=7'b1111001; 4'b1111: LED7S<=7'b1110001; default: LED7S<=7'b0111111; endcaseendendmodule六.编译仿真结果1.时序仿真:2.延时分析及结果:3.⽣成RTL原理图:4.该实验的配置模式:5.适配板布局图及实验仪IO脚与芯⽚的管脚对应关系和其详细放⼤图⽚:6.⼗六进制逻辑分析:7.计数器和译码器连接电路的顶层⽂件原理图:七.体会思考:通过本次实验对EDA和QUARTER2有了初步的了解,第⼀次上机感觉挺难的,这次对Verilog也有了深⼊了解。
BCD七段译码器
H 开开开开开开开 4
注:1、当需要 0 到 15 的输出功能时,灭灯输入( )必须为开路或保持在高逻辑电平,
若不要灭掉十进制零,则动态灭灯输入( )必须开路或处于高逻辑电平。
2、当低逻辑电平直接加到灭灯输入( )时,不管其它任何输入端的电平如何,所
有段的输出端都关死。
3、当动态灭灯输入( )和输入端 A、B、C、D 都处于低电平而试灯输入( )为
动器。低电平有效、高的灌入电流的输出可直接驱动显示器。7 个与非门和一个
驱动器成对连接,以产生可用的 BCD 数据及其补码至 7 个与或非译码门。剩下的
与非门和 3 个输入缓冲器作为试灯输入( )端、灭灯输入/动态灭灯输出(
)
端及动态灭灯输入( )端。
该电路接受 4 位二进制编码—十进制数(BCD)输入并借助于辅助输入端状
高时,则所有段的输出端进入关闭且动态灭灯输出( )处于低电平(响应条件)。
4、当灭灯输入/动态灭灯输出(
)开路或保持在高电平,且将低电平加到试
灯输入( )时,所有段的输出端都得打开。
* BI/RBO 是用作灭灯输入( )与/或动态灭灯输出( )的线与逻辑。
天水天光半导体有限责任公司(八七一厂) 2005.1 版
天水天光半导体有限责任公司(八七一厂) 2005.1 版
分段标志ห้องสมุดไป่ตู้
54LS247/74LS247 LSTTL 型 BCD—七段译码器/驱动器(OC,15V) 数码管显示图示
功能表:
十进制 或功能
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 BI RBI LT
输
HH H× H× H× H× H× H× H× H× H× H× H× H× H× H× H× ××
实验三 BCD七段显示译码器
实验名称 BCD七段显示译码器设计指导老师尚丽娜成绩专业电科班级 1102 姓名汪磊学号 31102333一、实验目的1、学习QuartusII软件,学习使用硬件描述语言设计电路。
2、学习DE1平台基本构成,能够使用DE1平台进行简单设计。
二、实验要求使用QuartusII文本输入法设计BCD七段显示译码器。
使用QuartusII软件进行文本输入,并对设计电路进行仿真,并下载到硬件平台,自行定义硬件平台使用端口。
三、实验设备PC机、DE1硬件平台四、实验原理平台上所采用的数码管是共阳的,所以结合硬件我们用VHDL语言来编写数码管的显示程序五、实验过程在实验过程中,我们一开始按照共阴的数码管来写程序,结果实际数码管显示的值与我们设定的刚好相反,所以经过查询电路结构后我们知道了数码管是共阳接法。
具体程序如下所示:Library ieee;Use ieee.std_logic_1164.all;Entity bcdym isPort (a:in bit_vector(3 downto 0);y:out bit_vector(6 downto 0));end bcdym;architecture zhang of bcdym isbeginprocess(a)begincase s iswhen”0000”=>y<=”1000000”;……………………………….……………………………………. ………………………………………………………………………End case;End process;End zhang;六、实验结果七、心得体会操作更加熟练。
实验六 BCD七段显示译码器的设计
浙江大学城市学院实验报告纸一.实验目的(1)学习利用VHDL语言设计BCD七段显示译码器的方法,掌握BCD 七段显示译码器的设计思路;(2)掌握软件工具的使用方法。
二.实验原理根据BCD七段显示译码器的真值表原理进行实验,如表2—3所示。
三.实验内容用VHDL语言设计BCD七段显示译码器,进行编译、波形仿真及器件编程,并自行用VHDL语言设计3线-8线译码器。
四.源程序清单library ieee;use ieee.std_logic_1164.all;entity gaoqianyi isport (a:in std_logic_vector (3 downto 0);y:out std_logic_vector (6 downto 0));end gaoqianyi;architecture zhang of gaoqianyi isbeginprocess(a)begincase a iswhen"0000"=>y<="0111111"; --0的BCD七段码when"0001"=>y<="0000110"; --1的BCD七段码when"0010"=>y<="1011011"; --2的BCD七段码when"0011"=>y<="1001111"; --3的BCD七段码when"0100"=>y<="1100110"; --4的BCD七段码when"0101"=>y<="1101101"; --5的BCD七段码when"0110"=>y<="1111101"; --6的BCD七段码when"0111"=>y<="0100111"; --7的BCD七段码when"1000"=>y<="1111111"; --8的BCD七段码when"1001"=>y<="1101111"; --9的BCD七段码when"1010"=>y<="1110111"; --A的BCD七段码when"1011"=>y<="1111100"; --B的BCD七段码when"1100"=>y<="0111001"; --C的BCD七段码when"1101"=>y<="1011110"; --D的BCD七段码when"1110"=>y<="1111001"; --E的BCD七段码when others=>y<="1110001"; --F的BCD七段码end case; end process; end zhang;附加:3线-8线译码器表2-4 3线-8线译码器真值表不带使能端library ieee;use ieee.std_logic_1164.all;entity gaoqianyi11 isport (a:in std_logic_vector (2 downto 0);y:out std_logic_vector (7 downto 0)); end gaoqianyi11;architecture zhang of gaoqianyi11 isbeginwith a selecty<="11111110"when"000","11111101"when"001","11111011"when"010","11110111"when"011","11101111"when"100","11011111"when"101","10111111"when"110","01111111"when"111","11111111"when others;end zhang;带使能端library IEEE;use IEEE.std_logic_1164.all;entity gaoqianyi111 isport (A : in std_logic_vector (2 downto 0);S1,S2,S3 : in std_logic;Y : out std_logic_vector (7 downto 0));end entity;architecture gaoqianyi111_arch of gaoqianyi111 is signal s : std_logic_vector(2 downto 0);beginS <= S1&S2&S3;process(A, S)beginY <= (others => '1');if S="100" thencase A iswhen "000" =>y<= "11111110";when "001" =>y<= "11111101";when "010" =>y<= "11111011";when "011" =>y<= "11110111";when "100" =>y<= "11101111";when "101" =>y<= "11011111";when "110" =>y<= "10111111";when "111" =>y<= "01111111";when others => NULL;end case;end if;end process;end architecture;五.实验总结我学会了利用VHDL 语言设计BCD 七段显示译码器的方法和自己编写类似的程序。
BCD七段显示译码器的设计报告
实验二、BCD七段显示译码器的设计一、实验目的学习利用VHDL语言设计BCD七段显示译码器的方法,掌握BCD七段显示译码器的设计思路:掌握软件工具的使用方法。
二、实验原理三、实验内容1.用VHDL语言设计BCD七段显示译码器,进行编译、波形仿真及器件编程。
(代码一详见附录)产生仿真波形如下:BCD七段显示译码器仿真1分析:问:给定的代码驱动的是共阴极还是共阳极的七段数码管显示器?由BCD七段显示译码器真值表可知是共阴极七段数码管显示器。
2.用VHDL语言设计3-8译码器,进行编译、波形仿真及器件编程。
(代码二详见附录)产生仿真波形如下:3-8译码器仿真1四、实验心得在实验中,通过BCD七段显示译码器真值表真值表得到BCD七段显示译码器case 代码。
同理通过8-3译码器真值表修改BCD七段显示译码器case代码得到8-3译码器case代码。
附录代码一(BCD七段显示译码器代码):library ieee;use ieee.std_logic_1164.all;entity bcdym isport (a:in std_logic_vector(3 downto 0);y:out std_logic_vector(6 downto 0));end bcdym;architecture zhang of bcdym isbeginprocess(a)begincase a iswhen"0000"=>y<="0111111";when"0001"=>y<="0000110";when"0010"=>y<="1011011"; when"0011"=>y<="1001111"; when"0100"=>y<="1100110"; when"0101"=>y<="1101101"; when"0110"=>y<="1111101"; when"0111"=>y<="0100111"; when"1000"=>y<="1111111"; when"1001"=>y<="1101111"; when"1010"=>y<="1110111"; when"1011"=>y<="1111100"; when"1100"=>y<="0111001"; when"1101"=>y<="1011110"; when"1110"=>y<="1111001";when others=>y<="1110001";end case;end process;end zhang;代码二(8-3译码器代码):library ieee; use ieee.std_logic_1164.all;entity bm3_8 isport(a:in std_logic_vector(0 to 2);b:out std_logic_vector(0 to 7)); end bm3_8;architecture zhang of bm3_8 isbeginprocess(a)begincase a iswhen"000"=>b<="00000001";when"001"=>b<="00000010";when"010"=>b<="00000100";when"011"=>b<="00001000";when"100"=>b<="00010000";when"101"=>b<="00100000";when"110"=>b<="01000000";when others =>b<="10000000"; end case;end process;end zhang;。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
BCD七段显示译码器
1.什么是BCD码?
2.理解二进制?十进制?十六进制?
BCD码(Binary-Coded Decimal)也称二进码十进数或二-十进制代码。
用4位二进制数来表示1位十进制数中的0~9这10个数码。
是一种二进制的数字编码形式,用二进制编码的十进制代码。
BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。
这种编码技巧最常用于会计系统的设计里,因为会计制度经常需要对很长的数字串作准确的计算。
相对于一般的浮点式记数法,采用BCD码,既可保存数值的精确度,又可免却使电脑作浮点运算时所耗费的时间。
此外,对于其他需要高精确度的计算,BCD编码亦很常用。
发光二极管(LED)由特殊的半导体材料砷化镓、磷砷化镓等制成,可以单独使用,也可以组装成分段式或点阵式LED显示器件(半导体显示器)。
分段式显示器(LED数码管)由7条线段围成0-9字型,每一段包含一个发光二极管。
外加正向电压时二极管导通,发出清晰的光,有红、黄、绿等色。
只要按规律控制各发光段的亮、灭,就可以显示各种字形或符号。
LED数码管有共阳、共阴之分。
图 (a)是共阴式LED数码管的原理图,图 (b)是其表示符号。
使用时,公共阴极接地,7个阳极a~g由相应的BCD七段译码器来驱动(控制),如图 (c)所示。
数字显示译码器
BCD七段译码器的输入是一位BCD码(以D、C、B、A表示),输出是数码管各段的驱动信号(以Fa~Fg表示),也称4—7译码器。
若用它驱动共阴LED数码管,则输出应为高有效,即输出为高(1)时,相应显示段发光。
例如,当输入8421码DCBA=0100时,应显示,即要求同时点亮b、c、f、g段,熄灭a、d、e 段,故译码器的输出应为Fa~Fg=0110011,这也是一组代码,常称为段码。
同理,根据组成0~9这10个字形的要求可以列出8421BCD七段译码器的真值表,见表4 - 12(未用码组省略)。
BCD七段译码器就是根据上述原理组成的,只是为了使用方便,增加了一些辅助控制电路。
这类集成译码器产品很多,类型各异,它们的输出结构也各不相同,因而使用时要予以注意。
图(c)是BCD七段译码器驱动LED数码管(共阴)的接法。
图中,电阻是上拉电阻,也称限流电阻,当译码器内部带有上拉电阻时,则可省去。
数字显示译码器的种类很多,现已有将计数器、锁存器、译码驱动电路集于一体的集成器件,还有连同数码显示器也集成在一起的电路可供选用。