七段显示译码器设计

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

电子科技大学光电信息学院课程设计论文课程名称《数字逻辑设计及应用》题目名称七段显示译码器设计学号2010072010024

姓名王殷洁

指导老师陈德军

起止时间2012/5/20-2012/6/23

2012年6 月 20日

电子科技大学光电信息学院

课程设计任务书

一、课程名称《数字逻辑设计及应用》

二、课程设计题目七段显示译码器器设计

三、课程设计目的

1、熟练数字逻辑设计的基本方法。应用课程所学的基本逻辑设计思想完成简单的逻辑设计过程;

2、提高学生利用软件完善设计的基本能力。要求学生自学HDL语言或者其他仿真工具对所完成的设计进行验证和仿真。

3、提高学生对所设计内容的文本描述能力。要求学生对设计思想、设计过程以及结果进行描述。

四、课程设计要求

1、要求有一定的组合逻辑和时序逻辑的设计能力;

2、要求对未用编码1010~1111进行讨论;

五、课程设计任务和内容

设计一个2421BCD计数器。基本要求如下:无启动风险。

该课程设计的应包括如下的内容:

a)设计过程的文字描述。设计过程应该包括设计思路的简单描述、系统子模块的

定义以及功能描述、逻辑变量的定义、逻辑状态的定义等。必要的真值表、功能表和状态表等;该部分要求提供word文本。

b)电路原理图或者verilog HDL语言描述。该部分要求提供所选择仿真软件的编

译文件。

c)仿真结果。该部分要求提供所选择仿真软件的编译结果或者word文档。

d)团队分工情况说明,团队课包括1~3人。请描述个人在设计中所承担的任务,

以word文档提交。

六、参考文献

1、《数字设计——原理及实践》John F. Wakerly编机械工业出版社 2003年8月第四版

2、《数字电子技术基础》阎石主编高等教育出版社第五版

指导教师签名:陈德军

日期:2012年5月12日

七段显示译码器设计

摘要:本课程设计的七段译码器主要以BCD译码器或LED显示器为主要部件,应用集成门电路的一个具有译码和显示的装置。其中七段显示器就是使用发光二极管或液晶显示器元件,在手表、计算器和仪器中显示十进制数码,通过点亮7

个线段的子集就可以显示数码。七段译码器把4位BCD码作为其输入编码,而把“七段码”作为其输出代码。此设计就是对未用编码1011-1111进行的讨论。关键词:七段译码器,译码器,显示器

引言:在数字测量仪表和各种数字系统中,都需要将数字量直观地显示出来,一方面供人们直接读取测量和运算的结果;另一方面用于监视数字系统的工作情况。因此,数字显示电路是许多数字设备不可缺少的部分。数字显示电路通常由译码器、驱动器和显示器等部分组成。码显示器是用来显示数字、文字或符号的器件,现在已有多种不同类型的产品,广泛应用于各种数字设备中,目前数码显示器件正朝着小型、低功耗、平面化方向发展。

数码的显示方式一般有三种:第一种是字形重叠式,它是将不同字符的电极重叠起来,要显示某字符,只须使相应的电极发亮即可,如辉光放电管、边光显示管等。第二种是分段式,数码是由分布在同一平面上若干段发光的笔划组成,如荧光数码管等。第三种是点阵式,它由一些按一定规律排列的可发光的点阵所组成,利用光点的不同组合便可显示不同的数码,如场致发光记分牌。

数字显示方式目前以分段式应用最普遍。

正文:此设计就是利用VHDL设计七段数码管显示译码电路,并在VHDL描述的测试平台下对译码器进行功能仿真,给出仿真的波形。

七段译码器的Verilog程序

`timescale 1ns / 1ps

//////////////////////////////////////////////////////////////////////////////////

// Company:

// Engineer:

//

// Create Date: 09:03:26 06/23/2012

// Design Name:

// Module Name: decode_7

// 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) begin

if (en)

case ({d, c, b, a})

0:segs = 7'b1111110; //0

1: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; //9

10:segs = 7'b0;

11:segs = 7'b0;

12:segs = 7'b0;

13:segs = 7'b0;

14:segs = 7'b0;

15:segs = 7'b0;

default segs = 7'bx;

endcase

else

segs = 7'b0;

{sega, segb, segc, segd,sege,segf,segg} = segs;

end

endmodule

相关文档
最新文档