十六进制七段数码显示译码器
7段数码显示译码器设计
7段数码显示译码器设计
设计一个7段数码显示译码器,主要功能是将4位二进制编码转换为用7段LED显示的十进制数。
具体设计过程如下:
1.确定电路的输入和输出:输入为4位二进制编码,输出为7段LED 显示的十进制数。
2.确定译码器类型:由于需要将二进制编码转换为十进制数,可以选用BCD-7段译码器或者十进制译码器作为基本器件。
3.确定电路原理图:根据所选的译码器类型,画出电路原理图。
在原理图中,需要连接一个4位二进制编码器到译码器的输入端,同时将译码器的输出连接到7段LED显示器的相应段。
4.电路连接和布线:将译码器和7段LED显示器连接到电源和接地线上,并将4位二进制编码器的输出连接到译码器的输入端。
5.电源和接地线:将电源和接地线正确连接到电路中,确保电路能够正确工作。
6.电路调试和测试:通过输入不同的4位二进制编码来测试电路的译码功能,确保译码器能够正确地将二进制编码转换为十进制数,并且在7段LED显示器上显示。
7.电路性能优化和改进:根据测试结果,对电路进行进一步的优化和改进。
可以考虑是否需要增加输入的保护电路,或者改进电源和接地线的布线方式来提高电路的性能。
总结:
以上是设计一个7段数码显示译码器的基本步骤,通过选择合适的译码器类型,正确连接电路和调试测试,可以实现4位二进制编码到十进制数的转换,并在7段LED显示器上显示。
在设计过程中,需要注意电路连接的正确性和稳定性,以及对电路的性能进行优化和改进。
EDA实验报告
EDA实验报告班级:姓名:目录实验一:七段数码显示译码器设计 (1)摘要 (1)实验原理 (1)实验方案及仿真 (1)引脚下载 (2)实验结果与分析 (3)附录 (3)实验二:序列检测器设计 (6)摘要 (6)实验原理 (6)实现方案及仿真 (6)引脚下载 (7)实验结果与分析 (8)实验三:数控分频器的设计 (11)摘要 (11)实验原理 (11)方案的实现与仿真 (11)引脚下载 (12)实验结果及总结 (12)附录 (12)实验四:正弦信号发生器 (14)摘要 (14)实验原理 (14)实现方案与仿真 (14)嵌入式逻辑分析及管脚下载 (16)实验结果与分析 (17)附录 (18)实验一:七段数码显示译码器设计摘要:七段译码器是一种简单的组合电路,利用QuartusII的VHDL语言十分方便的设计出七段数码显示译码器。
将其生成原理图,再与四位二进制计数器组合而成的一个用数码管显示的十六位计数器。
整个设计过程完整的学习了QuartusII的整个设计流程。
实验原理:七段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是2进制的,所以输出表达都是16进制的,为了满足16进制数的译码显示,最方便的方法就是利用译码程序在FPGA\CPLD中来实现。
本实验作为7段译码器,输出信号LED7S的7位分别是g、f、e、d、c、b、a,高位在左,低位在右。
例如当LED7S 输出为“1101101”时,数码管的7个段g、f、e、d、c、b、a分别为1、1、0、1、1、1、0、1。
接有高电平段发亮,于是数码管显示“5”。
实验方案及仿真:I、七段数码显示管的设计实现利用VHDL描述语言进行FPGA上的编译实现七段数码显示译码器的设计。
运行QuartusII在G:\QuartusII\LED7S\下新建一个工程文件。
新建一个vhdl语言编译文件,编写七段数码显示管的程序见附录1-1。
七段显示译码器
L
L
L
H
H H L H H L
3
14
消 隐 脉冲消隐 灯测试
H
H
×
L
L
H H
H
H
H H H H L
L
H
× H H H L
L L L H H H H
× × × × × ×
H L L L L L L
L
L H
L L L
L L L
L
L
L
L
L
L
L
L
× × × × ×
H H H H H H H
逻辑功能
输 入
功能
3个控制端
逻辑图
4个输入端
7个输出端
C B
a b
A
7448
LT RBI BI/RBO
. . . g
7448功能框图
逻辑功能
十进制 或功能 输 入
LT
RBI
D
C
B
BI/ A RBO a b
输出
c
d
e
f
g
字 形
L
L
H
H H H H H H
L
1
2
H
H
×
×
L
L
L
L
L H
H L
H
H
L H H L
b c d e f g
f e
g d
b c
共阳极显示器 共阴极显示器 显示器分段布局图
计数器 脉冲信号
译码器
驱动器 显示器
KHz
a b c d e f g 1 1 1 1 1 1 0 0 1 1 0 0 0 0
十六进制7段数码显示译码器设计
十六进制7段数码显示译码器设计一、实验目的1.学习7段数码显示译码器的Verilog的设计,并掌握其原理方法2.学习使用QuartusⅡ软件3.学习设计仿真软件的正确使用方法二、实验原理7段显示译码器是纯组合电路。
通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码器,然而数字系统中的数据处理和运算都是二进制的,所以输出表达都是十进制的,所以输出表达都是十六进制的,为了满足十六进制数的译码显示,最方便的方法就是利用Verilog译码程序在FPGA/CPLD 来实现。
所以首先要设计一段程序(参考以下的真值表1)。
设输入的4位码为A[3:0],输出控制7段共阴数码管的7位数码管的7位数据为LED7S的7位分别接图的共阴数码管的7个段,高位在左,低位在右。
例如当LED7S输出为“1101101”时,数码管的7个段g、f、e、d、c、b、a分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。
这里没有考虑或者表示小数点的发光管,如果要考虑,需要增加段h,然后将LED7S改为8位输出。
表1 7段译码器真值表输入码输出码代表数据0000 0111111 00001 0000110 10010 1011011 20011 1001111 30100 1100110 40101 1101101 50110 1111101 60111 0000111 71000 1111111 81001 1101111 91010 1110111 A1011 1111100 B1100 0111001 C1101 1011110 D1110 1111001 E1111 1110001 F三、实验任务将设计好的Verilog译码器程序在QuartusⅡ上进行编辑、编译、综合、适配、仿真,给出其所有信号的时序仿真波形。
四、实验步骤1.新建一个文件夹DECL_DEMO,然后选择File,点击new,再打开Verilog HDL File文件类型。
十六进制7段数码显示译码器设计实验报告
十六进制7段数码显示译码器设计实验报告实验报告:十六进制7段数码显示译码器设计一、实验目的本实验的主要目的是设计一种用于将十六进制数码转化为七段显示的译码器电路。
通过这个实验,我们可以学习和了解数字电路的工作原理、数码管的控制方式以及七段数码的译码方法。
二、实验原理本实验所用到的数码管为共阳数码管,它由7个发光二极管组成,其中的每一个发光二极管称为一个段。
这七个段依次为a、b、c、d、e、f和g,它们分别对应数码管上的abcdefg七个引脚。
当一些引脚输出高电平时,相应的段就会被点亮,从而显示出特定的字符。
为了实现将十六进制数码转化为七段显示的功能,我们需要设计一个译码器电路。
译码器电路的输入为十六进制数码,输出为七段信号,用于控制数码管的每个段的亮灭情况。
为了简化设计,我们可以采用CMOS数字集成电路74LS47来实现译码器电路。
该集成电路内部集成了BCD转七段译码器,可以将二进制代码转化为七段数码显示所需要的信号。
它的输入为四个二进制输入端口A、B、C和D,输出为七个段芯片(a、b、c、d、e、f和g)的控制信号。
三、实验步骤1.首先,根据74LS47的真值表,确定译码器的输入和输出。
2.根据真值表,画出逻辑图,确定硬件电路的连接方式。
3.按照逻辑图和电路连接方式,进行硬件电路的布线。
4.按照实验仪器的操作说明,对电路进行调试和测试。
5.将输入端口连接至外部的十六进制信号源,观察输出端口的数据是否正确。
6.验证电路的正确性和稳定性,如果出现问题,进行排除和修复。
四、实验结果经过实验,我们成功地设计并实现了一个十六进制7段数码显示译码器电路。
当输入端口接收到一个十六进制信号时,通过电路的处理和转换,将其转化为了相应的七段信号,用于控制数码管的每个段的亮灭情况。
通过实验观察,我们发现电路的输出结果与预期一致,且工作稳定。
五、实验总结通过这个实验,我们对于数字电路的工作原理和数码管的控制方式有了更深的了解。
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.区分位和段:每个数码位由七个段组成,通过该段的点亮和熄灭来表示所需显示的数字。
十六进制7段数码显示译码器设计实验报告
实验目的与要求实验名称:十六进制7段数码显示译码器设计实验目的:学习7段数码显示译码器的V erilog硬件设计。
实验原理7段数码是纯组合电路。
设输入的4位码为A[3:0],输出控制7段共阴数码管的7位数据为LEDS[6:0]。
输出信号LEDS的7位分别接共阴数码管的7个段,高位在左,低位在右实验内容1、编辑和输入设计文件新建文件夹——输入源程序——文件存盘源程序:module LED(A,LED7S);input [3:0]A;output [6:0]LED7S;reg [6:0]LED7S;always @ (A)begin: LEDcase(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;endcaseendendmodule2、创建工程打开并建立新工程管理窗口——将设计文件加入工程中——选择目标芯片——工具设置——结束设置3、全程编译前约束项目设置选择FPGA目标芯片——选择配置器件的工作方式——选择配置器件和编程方式——选择目标器件引脚端口状态——选择V erilog语言版本4、全程综合与编译Processing——Start Compilation启动全程编译5、仿真测试RTL图观察器应用总结与体会通过本次实验,对quartus有了进一步的学习和认识,对V erilog也有了深入了解。
EDA实验报告31_十六进制7段数码管显示译码设计
实验结果及分析
1.十六进制计数器计数到“1111”时cout产生进位信号
2.每一次计数对应数码管不同的显示译码输出,由顶层文件nt_7seg_top.vhdl的时序仿真波形图可见,当数码管显示到“71”即对应的十六进制“F”时,计数值清零(rst0 <= ‘0’),数码管重新从“3F”即‘1’递增至‘F’循环显示。
2.输出信号LED_7seg的7位分别接数码管的7个段a-b-c-d-e-f-g(-h),高位在左,低位在右(如果有小数点,增加h段)。由于使用的是共阴极数码管,各个段接高电平时发光,低电平不亮。
实验内容
实验一:十六进制7段数码显示译码设计
1.用VHDL文本输入方法,完成十六进制计数器和7段数码显示译码电路设计
EDA技术与应用实验报告
姓名
学号
专业年级
电子信息工程
实验题目
十六进制7段数码显示译码设计
实验目的
1.学习7段数码显示译码设计和硬件验证
2.通过VHDL语言设计7段数码显示译码电路,进一步掌握层次化设计方法
实验原理
1.数字系统中的数据处理和运算都是二进制的,输出表达为十六进制数。为了满足十六进制数的译码显示,可利用译码程序在FPGA/CPLD中来实现
3.将clk0接到78脚的时钟输出端,可以获得0-1MHz的时钟调节范围,这解决了数码管循环显示过快,看不清译码输出的问题
附录
(原理图或VHDL代码)
实验过程中所遇到的问题及相应的解决方法
七段译码器显示电路.doc
七段译码器显示电路.doc七段译码器显示电路是一种常见的数字显示电路,它可以将数字信号转换为七段数码管可以显示的信号。
在这种电路中,数字信号经过七段译码器解码后,将产生与数字相应的七个片段输出信号,这七个片段用于控制数码管的显示。
该电路由以下几部分组成:1.七段译码器七段译码器是将二进制代码转换为七段数码管显示的芯片。
通常,七段译码器有4位二进制输入和7位输出,每个输出对应一个数码管的片段,称为“a”、“b”、“c”、“d”、“e”、“f”、“g”,而其余输出为“dp”,作为十进制点的控制器。
2. 7490计数器7490计数器是一种可实现数字信号计数的芯片。
在该电路中,7490计数器与七段译码器相结合,其输出作为七段译码器的输入,使其能够显示数字信号。
3. 7447特殊驱动芯片7447是一种特殊的数码管驱动芯片,与七段译码器配合使用,用于数码管的数码输出。
7447芯片的输出通过NPN晶体管到达数码管的象限管,控制其亮度。
4. 2N3906 PNP晶体管PNP晶体管的输出与七段译码器的输入进行连接,用于控制七段译码器的输出段。
5. 10μF电容电容器用于过滤输入信号,避免噪声产生干扰。
7. 1K电阻电阻用于将输入信号和晶体管之间的电流限制在一个安全范围内。
该电路基于二进制计数,可从0到9逐个显示数字。
在7490计数器和七段译码器之间的输出信号滞后1,可以在保证数字显示正确的情况下使显示更加流畅。
七段译码器通过特殊驱动芯片和PNP晶体管控制数码管的显示,保证显示效果稳定而清晰。
总之,七段译码器显示电路在数字技术中具有广泛的应用,并可通过合理的设计和调试,为数字信号在显示上提供高效而稳定的解决方案。
七段显示译码器7448功能
七段显示译码器7448功能,引脚图及应用电路数字显示译码器是驱动显示器的核心部件,它可以将输入代码转换成相应的数字显示代码,并在数码管上显示出来。
图8-51所示为七段显示译码器7448的引脚图,输入A3 、A2 、A1和A0接收四位二进制码,输出a~g为高电平有效,可直接驱动共阴极显示器,三个辅助控制端、、,以增强器件的功能,扩大器件应用。
7448的真值表如表8-20所示。
从功能表可以看出,对输入代码0000,译码条件是:灯测试输入和动态灭零输入同时等于1,而对其他输入代码则仅要求=1,这时候,译码器各段a~g输出的电平是由输入代码决定的,并且满足显示字形的要求。
图8-51 7448引脚图表8-20 7448功能表灯测试输入低电平有效。
当= 0时,无论其他输入端是什么状态,所有输出a~g均为1,显示字形8。
该输入端常用于检查7448本身及显示器的好坏。
动态灭零输入低电平有效。
当=1,,且输入代码时,输出a~g均为低电平,即与0000码相应的字形0不显示,故称“灭零”。
利用=1与= 0,可以实现某一位数码的“消隐”。
灭灯输入/动态灭零输出是特殊控制端,既可作输入,又可作输出。
当作输入使用,且= 0时,无论其他输入端是什么电平,所有输出a~g均为0,字形熄灭。
作为输出使用时,受和控制,只有当,,且输入代码时,,其他情况下。
该端主要用于显示多位数字时多个译码器之间的连接。
【例8-13】七段显示器构成两位数字译码显示电路如图8-52所示。
当输入8421BCD 码时,试分析两个显示器分别显示的数码范围。
图8-52 两位数字译码显示电路解:图8-52所示的电路中,两片7448的均接高电平。
由于7448(1)的,所以,当它的输入代码为0000时,满足灭零条件,显示器(1)无字形显示。
7448(2)的,所以,当它的输入代码为0000时,仍能正常显示,显示器(2)显示0。
而对其他输入代码,由于,译码器都可以输出相应的电平驱动显示器。
FPGA与数字系统设计-实验六7段数码显示译码器设计
7段数码显示译码器设计1、实验目的熟悉ISE系列软件的设计流程和基本工具使用,学习7段数码显示译码器设计,学习VHDL的CASE语句应用。
2、实验内容7段数码是纯组合电路,通常的小规模专用IC,如74或4000系列的器件只能作十进制BCD码译码,然而数字系统中的数据处理和运算都是二进制的,所以输出表达都是十六进制的,为了满足十六进制数的译码显示,最方便的方法就是利用译码程序在FPGA/CPLD中实现。
本实验中,7段译码器的数码管采用共阴数码管,而且不考虑小数点的发光管。
其输出信号LED7S的7位分别接数码管的7个段,高电平有效。
例如,当LED7S输出为“1101101”时,数码管的7个段:g、f、e、d、c、b、a分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。
3、实验器材Spartan 3E开发板。
4、实验说明实验中所需要的源文件在本报告附录中。
5、实验步骤步骤1:创建ISE工程(1)启动桌面上的ISE9.1图标,在Project Navigator中选择File→New Project。
(2)在弹出的对话框(见图1)中,设置工程名为ymq7s,工程存放路径为E:\work\,顶层模块类型选择HDL,并单击Next按钮。
图1 ISE工程属性对话框(3)出现图2所示对话框,目标器件选择spartan3E,具体设计如下图。
图2 ISE工程属性对话框(4)一直点击Next,直到出现图3(即是刚才所设定的),最后点击Finish。
图3 工程设计总表出现图4,这就是所建立的工程,现在我们需要在里面完成我们的设计。
图4 ISE工程属性对话框步骤2:创建新的VHDL设计文件(1)在ISE用户界面中,选择Project→New Source。
(2)在弹出的对话框(见图5)中,选择VHDL Module作为源程序类型,设置文件名为ymq7s,并单击“下一步”按钮。
图5 VHDL的New Source Wizard(3)点击Next,直到出现图6,直到Finish。
七段显示译码器电路设计
七段显示译码器电路设计七段显示译码器是一种重要的数字电路,用于将二进制码转换为七段显示器上的对应数字或字母。
它通常由四个输入引脚和七个输出引脚组成,其中四个输入引脚表示二进制数的四位码,而七个输出引脚控制七段显示器中的各个段是否点亮。
下面是一个简单的七段显示译码器电路设计,它能够将四位二进制码转换为七段显示器所需的控制信号。
首先,我们需要定义一个真值表来描述七段显示器的每个数字或字母的显示信号。
下面是一个常用的真值表示例:输入编号,a,b,c,d,e,f,g--------,-,-,-,-,-,-,-0,1,1,1,1,1,1,01,0,1,1,0,0,0,02,1,1,0,1,1,0,13,1,1,1,1,0,0,14,0,1,1,0,0,1,15,1,0,1,1,0,1,16,1,0,1,1,1,1,17,1,1,1,0,0,0,08,1,1,1,1,1,1,19,1,1,1,1,0,1,1A,1,1,1,0,1,1,1B,0,0,1,1,1,1,1C,1,0,0,1,1,1,0D,0,1,1,1,1,0,1E,1,0,0,1,1,1,1F,1,0,0,0,1,1,1接下来,我们可以根据这个真值表来设计七段显示译码器的逻辑电路。
一个常见的方法是使用四个二-四译码器和一些逻辑门。
每个二-四译码器都有两个输入引脚和四个输出引脚,它将两个二进制数的每一位作为输入,将输出引脚的一些组合置高来实现对应输出数的逻辑。
在我们的设计中,我们可以将四个输入引脚分别连接到四个二-四译码器的输入引脚上,然后将四个输出引脚通过逻辑门连接到七个段的输入引脚上。
最后,我们需要选择适当的逻辑门来实现所需的逻辑。
常见的选择是使用与门和反相器。
与门用于实现多个输入引脚同时为高时将输出引脚置高的逻辑。
反相器则用于将逻辑信号进行反相。
例如,我们可以使用四个与门来实现输入二进制数为0、1、2和3时,对应输出引脚的逻辑。
然后,我们可以使用反相器来实现其他输出引脚的逻辑。
七段数码显示译码器设计
七段数码显示译码器设计七段数码显示译码器是一种电子元件,用于将二进制的数字编码转换为七段数码显示器上相应的数字显示。
七段数码显示器由七个LED灯组成,根据不同的组合来显示0-9的十个数字以及一些特殊字符。
设计一个七段数码显示译码器,可以通过输入二进制编码,使译码器输出相应的数字显示。
译码器的设计主要包括译码器的逻辑电路与输入和输出部分。
逻辑电路是根据七段数码显示器的真值表来设计的,输入部分是连接到译码器的二进制编码,输出部分是连接到七段数码显示器的七个LED灯。
首先,我们可以采用受限自由度的最小逻辑门设计方法来设计译码器的逻辑电路。
该方法是一种将输入变量和输出函数关联的方法,可以设计出逻辑门的最小数量。
在这种方法中,输入变量表示二进制编码的输入,输出函数表示相应的数字显示的输出。
译码器的真值表是一个由输入变量和输出函数组成的表格。
对于一个七段数码显示器,有4个输入变量和7个输出函数。
输入变量可以用A、B、C和D表示,表示四个输入的二进制编码。
输出函数可以用a、b、c、d、e、f和g表示,分别表示七段数码显示器的a、b、c、d、e、f和g七个LED灯。
根据真值表,我们可以确定译码器的逻辑电路。
接下来,我们可以使用布尔代数的方法来推导输出函数的逻辑表达式。
可以使用卡诺图、真值表和逻辑代数等方法来简化逻辑表达式。
具体的推导过程略。
最后,我们可以根据逻辑表达式设计译码器的逻辑电路。
可以使用逻辑门来实现逻辑函数,如与门、或门和非门等。
对于一个有7个输出函数的译码器,需要使用足够数量的逻辑门来实现逻辑函数。
在设计完逻辑电路之后,我们需要将输入和输出部分与逻辑电路连接起来。
输入部分是连接到译码器的二进制编码,输出部分是连接到七段数码显示器的七个LED灯。
可以使用连接器、导线和电阻等元件来完成连接。
综上所述,设计一个七段数码显示译码器需要进行以下几个步骤:确定逻辑电路的真值表,推导输出函数的逻辑表达式,设计逻辑电路,连接输入和输出部分。
(完整word版)十六进制7段数码显示译码器设计实验报告
实验名称:十六进制7 段数码显示译码器设计实验目的:1.设计七段显示译码器2.学习Verilog HDL文本文件进行逻辑设计输入;3.学习设计仿真工具的使用方法;工作原理: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,例 6-18 中的LED7S:OUTSTD_LOGIC_VECTOR(6 DOWNTO 0)应改为 (7 DOWNTO 0)。
实验内容 1:将设计好的 VHDL译码器程序在 Quartus II上进行编辑、编译、综合、适配、仿真,给出其所有信号的时序仿真波形。
实验步骤:步骤 1:新建一个文件夹击打开vhdl 文件;步骤 2: 编写源程序并保存步骤 3:新建一个工程及进行工程设置步骤 4:调试程序至无误;步骤 5:接着新建一个VECTOR WAVEFOM文件及展出仿真波形设置步骤 6:输入数据并输出结果(时序仿真图)步骤 7:设置好这个模式步骤 8:生成 RTL原理图步骤 9:引脚锁定及源代码LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY DECL7S ISPORT(A:IN STD_LOGIC_VECTOR(3 DOWNTO 0);LED7S:OUT STD_LOGIC_VECTOR(6 DOWNTO 0)); END;ARCHITECTURE one OF DECL7S ISBEGINPROCESS(A)BEGINCASE A ISWHEN"0000"=> LED7S<="0111111";WHEN"0001"=> LED7S<="0000110";WHEN"0010"=> LED7S<="1011011";WHEN"0011"=> LED7S<="1001111";WHEN"0100"=> LED7S<="1100110";WHEN"0101"=> LED7S<="1101101";WHEN"0110"=> LED7S<="1111101";WHEN"0111"=> LED7S<="0000111";WHEN"1000"=> LED7S<="1111111";WHEN"1001"=> LED7S<="1101111";WHEN"1010"=> LED7S<="1110111";WHEN"1011"=> LED7S<="1111100";WHEN"1100"=> LED7S<="0111001";WHEN"1101"=> LED7S<="1011110";WHEN"1110"=> LED7S<="1111001";WHEN"1111"=> LED7S<="1110001";WHEN OTHERS =>NULL;END CASE;END PROCESS;END;实验内容二:1、硬件测试。
七段数码显示译码器设计
实验一七段数码显示译码器设计一、实验目的:1.完成七段数码显示译码器的设计,学习组合电路设计;2.学习多层次设计方法。
3.锻炼使用Verilog HDL 语言编程的能力。
二、实验原理:1.七段译码电路时一宗纯组合的逻辑电路,通常是由小型专用的IC门电路组成。
2.七段码输入与输出的原理与真值表关系。
a)输入:七段码输入为四个输入信号,用来表示0000—1111,即表示为十六进制的“0”到“F”。
b)输出:七段码输出为七个输出信号,分别用a,b, c,d,e,f,g七个符号来表示。
一般规定,输出信号为“1”时,它所控制的发光二极管为点亮状态,输出信号为“0”时,它所控制的发光二极管为熄灭状态。
本实验使用的七段数码为共阴极,其电路图如图1所示。
图1 共阴数码管及其电路c)输入与输出关系用思维二进制代码组成十六进制代码,将其用代码显示,表2-1 七段字符显示真值表数码A3 A2 A1 A0 A B C D E F G 对应码(h)0 0 0 0 0 1 1 1 1 1 1 0 7E1 0 0 0 1 0 1 1 0 0 0 0 302 0 0 1 0 1 1 0 1 1 0 1 6D3 0 0 1 1 1 1 1 1 0 0 1 794 0 1 0 0 0 1 1 0 0 1 1 335 0 1 0 1 1 0 1 1 0 1 1 5B6 0 1 1 0 1 0 1 1 1 1 1 5F7 0 1 1 1 1 1 1 0 0 0 0 708 1 0 0 0 1 1 1 1 1 1 1 7F9 1 0 0 1 1 1 1 1 0 1 1 7BA 1 0 1 0 1 1 1 0 1 1 1 77上,需要进行引脚分配。
一、实验步骤:(1) 创建工程文件(2) 创建原理图设计文档(3) 利用ESC绘制电路图进行功能设计(4) 执行综合(5) 设计测试平台文件(6) 执行功能仿真(7) 执行实现、添加约束文件(8) 执行时序仿真(9) 生产位流文件,配置目标芯片Verilog HDL程序:`timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////// Company:// Engineer://// Create Date: 18:47:07 03/10/2013// Design Name:// Module Name: ssss// Project Name:// Target Devices:// Tool versions:// Description://// Dependencies://// Revision:// Revision 0.01 - File Created// Additional Comments:////////////////////////////////////////////////////////////////////////////////////module decode_7(a, b, c, d, en, sega, segb, segc, segd,sege,segf,segg );input a, b, c, d, en;output reg sega, segb, segc, segd,sege,segf,segg;reg [1:7] segs;always @(a or b or c or d or en) beginif (en)case ({d, c, b, a})0:segs = 7'b1111110; //01:segs = 7'b0110000;2:segs = 7'b1101101;3:segs = 7'b1111001;4:segs = 7'b0110011;5:segs = 7'b1011011;6:segs = 7'b0011111;7:segs = 7'b1110000;8:segs = 7'b1111111;9:segs = 7'b1110011; //910:segs = 7'b1110111;//1011:segs = 7'b0011111;12:segs = 7'b1001110;13:segs = 7'b0111101;4:segs = 7'b10011111;15:segs = 7'b1000111;15default segs = 7'bx;endcaseelsesegs = 7'b0;{sega, segb, segc, segd,sege,segf,segg} = segs; endEndmodule实验过程中得到的图片:实验体会:本次实验通过对FPGA实验平台的使用,Verilog HDL语言有了一定的理解与认识,但在很多地方没有很好的熟练度,在以后的学习中还要好好的熟悉之。
七段显示译码器
七段显示译码器七段显示译码器是一种非常常用的电子元件,它的作用是将数字信号转换成七段显示器可显示的信号。
七段显示译码器的种类和型号较多,但是其基本工作原理都是相同的。
七段显示译码器的工作原理:该译码器的输入端接受二进制数字信号,该信号被分解为每位信号的输入端,最终输出到七段显示器的七个单元中,互不干扰,形成符合数字的图形。
七段显示器的七个单元所代表的数字分别是0-9,A-F。
同一时刻只能显示一个数字。
通常情况下,数字信号输入端的位数和七段显示器的单元数相同,比如4位二进制数字信号对应着4个输入端,同时也对应着4个七段显示器单元。
在实际电路中,七段显示译码器的输入端接受的是二进制信号,这些二进制信号实际上是数字信号的编码,而数字信号经过编码后能够更加稳定和可靠地在电路中传输。
七段显示译码器的各个输入端接受的编码数据被转换为相应的七段显示数据,并输出到相应的七段显示单元上,从而在七段显示器中显示相应的数字或字符。
例如,当输入信号为10时,该信号被转换为二进制信号1010,该信号靠近二进制译码器的输入端,四个输入端分别接受10的四个二进制编码。
最后,在七段显示器的单元中显示数字0和数字1。
七段显示译码器相关参数:七段显示器的显示分辨率是指能显示的位数,其中一位数字或字母所占的像素数称为显示分辨率。
通常情况下,七段显示器的分辨率都是相同的。
七段显示器的色彩深度是指每个像素能够显示的颜色数量,七段显示器的色彩深度通常是固定的。
七段显示译码器的相关优点:1. 体积小,易于装配,能够在小尺寸电路中使用;2. 高度集成,节省了大量空间;3. 低功耗,可在低功率设备中使用。
并且,七段显示译码器也用于很多需要数字显示的地方,比如电子表、电子秤、温度计、智能穿戴设备等。
在自动控制系统和自动化生产线中,七段显示器和相应的译码器也被广泛使用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
输入码
输入码
代表数据
输入码
输入码
代表数据
0000
0
1000
8
0001
1
1001
9
0010
2
1010
A
0011
3
1011
B
0100
4
1100
C
0101
5
1101
D
0110
6
1110
E
0111
7
1111
F
图(2)7段共阴数码管
三、实验任务:将设计好的Verilog译码器程序在Quartus II上进行编辑、编译、综合、适配、仿真,给出其所有信号的时序仿真波形图(注意仿真波形输入激励信号的设置)。提示:设定仿真激励信号是用输入总线的方式给出输入信号的仿真数据。
(4)选择目标芯片:我们选用的是CycloneIII系列的EP3C55F484C8,在Family栏选择芯片系列——CycloneIII,在窗口右边的三个下拉列表框选择过滤条件,分别选择Package为FBGA、Pincount为484和Speedgrade为8,点击Next,如图所示
(5)工具设置:进入EDA工具设置窗口,有三个选项,分别是选择输入的HDL类型和综合工具、选择仿真工具、选择时序分析工具,这是除QuartusII自含的所有设计工具以外的外加的工具,如果不作选择的,表示仅选择QuartusII自含的所有设计工具,本次不需要其他的设计工具,可以直接点击Next
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;
点击Next,进入“工程设置”对话框,如图所示
第一行表示工程所在的文件夹,第二行为工程名,可以与顶层文件的实体名保持一致,也可以另取别的名字,第三行为当前工程顶层文件的实体名。
点击next,进入ADDFILE对话框,如图所示,单击Add All按钮,将工程相关的所有VHDL文件加进工程,也可以单击“Add ...”选择性加入,按此步骤建立工程,工程已经自动将所有文件加进去了,可以直接点击next,当先直接建立工程时,需要自己添加
四、实验步骤:
(一)、建立工作库文件和编辑设计文文件
任何一项设计都是一项Project(工程),而把一个工程下的所有文件放在一个文件夹内是一个非常好的习惯,以便于我们整理,利用和提取不同工程下的文件,而此文件夹将被EDA软件默认为Work Library(工作库),所以第一步先根据自己的习惯,建立个新的文件夹。
(1)新建文件夹:我的习惯在D盘建立并保存工程,我将文件夹取名Test,
(2)输入源程序:打开QuartusII,选择菜单File-->New-->Design>VerilogHDLFile-->OK(如图1所示)
代码如下:
module DECL7S(A,LED7S);
input[3:0] A;
ﻩoutput[6:0]LED7S;
十六进制七段数码显示译码器
———————————————————————————————— 作者:
———————————————————————————————— 日期:
十六进制七段数码显示译码器
一、实验目的:学习7段数码显示器的Verilog硬件设计。
二、实验原理:7段数码显示器是纯组合电路。通常的小规模专用IC,如74或4000系列的器件只能做十进制BCD码译码器(其真值表如图(1)所示),然而数字系统中的数据处理和运算都是二进制的,所以输出表达式都是十六进制的,为了满足十六进制的译码显示,最方便的方法就是利用Verilog译码程序在FPGA/CPLD中来实现。所以首先要设计一段程序。设输入的4位码为A[3:0],输出控制7段共阴数码管(如图(2)所示)的7位数据为LED7S[6:0]。输出信号LED7S的7位接共阴数码管的7个段,高位在左,低位在右。例如当LED7S输出为“”时,数码管7个段g、f、e、d、c、b、a分别接1、1、0、1、1、0、1;接有高电平的段发亮,于是数码管显示“5”。这里没有考虑表示小数点的发光管,如果要考虑,需要增加段h,然后将LED7S改为8位输出。
ﻩendcase
endmodule
(3)保存文件:完成一步就保存一步是一个好习惯,这样即使出现意外情况,也不至于以前的努力付诸东流。选择File-->Saveas,选择保存路径,即刚才新建的文件夹Test,文件名应与实体名保持一致,即DECL7S,点击保存后会跳出“Do youwanttocreate a new projectwiththisfile?”选择“是”,则进入如下界面
(6)结束设置:进入“工程设置统计”窗口,列出了与此工程相关的设置情况,设置完成,点击Finish
(二)、编译
配置好后就可以进行编译了,点击ProcessingStart Compilation命令启动全程编译
编译成功后的界面如图所示
(三)时序仿真
(1)打开波形编辑器:File-->New-->Verification/Debugging>VectorWaveform-->OK,即出现空白的波形编辑器,如图所示
(2)设置仿真时间区域:Edit-->EndTime在Time栏中输入50,单位选择“us”,点击确定并保存波形文件
ﻩreg[6:0]LED7S;
ﻩalways@(A )
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'b1011 :LED7S<=7'b1111100;
4'b1100:LED7S<=7'b0111001;
4'b1101:LED7S<=7'b1011110;
4'b1110:LED7S<=7'b1111001;
4'b1111 :LED7S<=7'1;