目的

1. 进一步掌握VHDL语言的基本结构及设计的输入方法。

2. 掌握BCD-七段显示译码器的设计思路;

内容

1. 使用拨码开关SW3、SW2、SW1、SW0作为四位二进制数据 D、C、 B、A的输入;

2. 在最右边的数码管HEX0上显示输入的BCD码编码数值。

原理

七段数码管一般由8个发光二极管组成,其中由7个细长的发光二极管组成数字显示,另外一个圆形的发光二极管显示小数点。 当发光二极管导通时,相应的一个点或一个笔画发光。控制相应的二极管导通,就能显示出各种字符。发光二极管的阳极连在一起的称为共阳极数码管,此时译码器的输出应该是低电平有效;阴极连在一起的称为共阴极数码管,此时译码器的输出应该是高电平有效。如图2-25所示。

图2-25 七段数码管结构图

74LS47是将四位二进制编码编码转化为十进制数码(BCD),并通过七段数码管显示出来的译码器/驱动器,其引脚图如图2-26所示。74LS47可以驱动共阳极的发光二极管七段LED显示字符。

图2-26 74LS47引脚图

74LS47 有自动前、后沿灭零控制(RBI 和 RBO)。试灯(LT)可在 BI/RBO 端处于高电平的任何时刻去进行,该电路还含有一个灭灯输入(BI),它用来控制灯的亮度或禁止输出。在输入0~15时,74LS47显示的字符如图2-27所示。功能表如表2-2所示。

图2-27 74LS47显示字符


表2-2 74LS47功能表

DE2-115配有八个七段数码管。它们被分成两组,每组4个,用来作为数字显示用。DE2-115的七段数码管采用共阳极连接方式。FPGA输出低电平时,对应的字码段点亮,反之则熄灭。要注意的是:在DE2-115开发板上七段数码管的点是不可用的。

操作

1.创建一个Quartus II 工程,用来在DE2-115上实现预期电路。

2.写出预期电路的VHDL代码。

3.将VHDL文件包含进工程并编译。

4.仿真电路来检测其功能。

5.分配引脚。

6.重新编译并将其下载进FPGA芯片中。

7.通过DE2-115开发板来证实电路是否准确。

程序

LIBRARY IEEE;

USE IEEE.STD_LOGIC_1164.ALL;

USE IEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITY BCD7 IS

PORT ( Ain,Bin,Cin,Din: IN  STD_LOGIC; ----输入4位BCD码

LT,RBI,BI:IN  STD_LOGIC;

a,b,c,d,e,f,g : OUT STD_LOGIC);      --7段码

END BCD7;

ARCHITECTURE ARCH  OF BCD7 IS

SIGNAL Q: STD_LOGIC_VECTOR (3 DOWNTO 0);

BEGIN

Q<=Din&Cin&Bin&Ain;

PROCESS(Q,LT,RBI,BI)

VARIABLE DOUT: STD_LOGIC_VECTOR (6 DOWNTO 0);

BEGIN

IF BI='0' THEN

DOUT:="0000000";

ELSIF RBI='1'THEN

IF LT='1' THEN

CASE Q IS

WHEN "0001" => DOUT := "1111001";

WHEN "0010" => DOUT := "0100100";

WHEN "0011" => DOUT := "0110000";

WHEN "0100" => DOUT := "0011001";

WHEN "0101" => DOUT := "0010010";

WHEN "0110" => DOUT := "0000010";

WHEN "0111" => DOUT := "1111000";

WHEN "1000" => DOUT := "0000000";

WHEN "1001" => DOUT := "0011000";

WHEN "1010" => DOUT := "0001000";

WHEN "1011" => DOUT := "0000011";

WHEN "1100" => DOUT := "1000110";

WHEN "1101" => DOUT := "0100001";

WHEN "1110" => DOUT := "0000110";

WHEN "1111" => DOUT := "0001110";

WHEN OTHERS => DOUT := "1000000";

END CASE;

End if;

End if;

a<=DOUT(0);

b<=DOUT(1);

c<=DOUT(2);

d<=DOUT(3);

e<=DOUT(4);

f<=DOUT(5);

g<=DOUT(6);

END PROCESS;

END ARCH;

结果


问题及解决

1.要好好看看工作原理。

2.文件名必须与VHDL文件中的设计实体名保持一致。

总结:我个人感觉操作的规范化比较重要,如果操作不规范不仅使操作步骤繁琐,也有可能带来错误。其次是理解代码含义,了解BCD-七段数码管显示译码器的作用,清楚共阴极,共阳极的差别。应该可以比较顺利完成任务。

BCD-七段数码管显示译码器相关推荐

  1. 6、七段数码管显示译码器设计与应用

    1.实验目的 掌握七数码管显示原理 掌握七段码显示译码设计 进一步熟悉 Xilinx ISE 环境及 SWORD 实验平台 2.实验内容 任务 1:原理图设计实现显示译码 MyMC14495 模块 任 ...

  2. 7段并行数码管显示实验C语言,七段数码管显示十进制数字 (15)

    实验报告 实验题目 设有10个开关,编号分别为0,1,--,9. 设计电路实现某开关闭合时对应显示相应的十进制数字.要求:(1)写出设计说明,(2)用 Proteus或Multisim仿真. 实验方案 ...

  3. 【51单片机】七段数码管显示实验+详细讲解

    [51单片机]七段数码管显示实验 前言 一.兵马未动,粮草先行--认识七段数码管 1.关于显示器 2.七段数码管 3.七段数码管的结构 4.数码管显示方法 二.数码管显示程序 1.静态显示 效果 2. ...

  4. 用七段数码管显示学号python_用七段数码管显示学号python

    单片机问题:在七段数码管上显示自己的学号后面六请分享大神写答案是啊,从今往后,那就好好过吧.辈子也就是几年,万次的寻寻觅觅翘首以望,等的无非是这刻身边紧紧相拥的个人.辛夷坞<山月不知心底事> ...

  5. 汇编语言实现七段数码管显示控制实验

    一 实验目的 1)掌握8255方式0的工作原理.初始化设置方法. 2)掌握I/O接口地址译码电路的工作原理及端口地址的计算方法. 3)掌握I/O端口的读写操作及编程方法. 4)掌握数码管显示数字的原理 ...

  6. Logisim之4位全加器实现以及七段数码管显示

    Logisim之4位全加器实现以及七段数码管显示 文章目录 Logisim之4位全加器实现以及七段数码管显示 一.基本构成 二.构建四位全加器 1.构建一位全加器 2.通过一位全加器构建四位全加器 三 ...

  7. FPGA基础知识极简教程(9)七段数码管显示的Verilog简单设计

    博文目录 写在前面 正文 七段数码管原理 七段数码管译码表 单个七段数码管显示verilog设计 多个数码管动态扫描显示 参考资料 交个朋友 写在前面 作为FPGA的基础知识教程怎么能少得了这个简单的 ...

  8. c语言实现7段数码管显示,七段数码管显示实验.doc

    七段数码管显示实验 单 片 机 实 验 报 告 实验九 七段数码管显示实验 实验目的 学习七段数码管的工作原理: 学习数码管与8051单片机的接口方法: 掌握动态扫描显示技术. 实验原理 如图4.9- ...

  9. python七段数码管显示字母代码_python实现七段数码管显示

    原博文 2020-08-08 21:21 − [TOC] # python实现七段数码管显示 > 运行原理:如图所示,七段数码管由七个线条组成,可以有固定顺序(1--7),不同数字显示不同的线条 ...

最新文章

  1. 计算机科学班(原acm班),计算机科学创新实验班(以下简称ACM班)培养计划.doc
  2. 3. 机器学习中为什么需要梯度下降?梯度下降算法缺点?_浅谈随机梯度下降amp;小批量梯度下降...
  3. redis 延时任务
  4. CentOS7在/etc/grub2.conf引导中配置1G大页内存
  5. 导出csv文件_使用 WeihanLi.Npoi 操作 CSV
  6. 使用Maven导入MySQL驱动包遇到的问题
  7. 2_用keras训练一个神经网络及不同优化和初始化对性能的影响分析
  8. MapBox定位与离线地图下载Android
  9. #边学边记 必修4 高项:对事的管理 第六章 项目质量管理 质量管理基础
  10. 计算机博士专业目录,tsinghua计算机博士专业目录
  11. 拓扑排序算法原理及Java代码实现
  12. 热烈祝贺方正璞华两款产品入选2021年度江苏省工业软件优秀产品和应用解决方案拟推广名单
  13. Fluent——UDF监测指定点的物理量
  14. mysql 10106_mysql出现:Can’t create TCP/IP socket (10106) (#2004)
  15. 使用echarts-gl 绘制3D地球配置详解
  16. 同一个元素绑定多个onclick事件
  17. BUUCTF中的reverse2
  18. HTML5设计更具有交互性的标签方法(含智能辅助设备使用的HTML5,翻译资料)
  19. MATLAB app designer/GUI 学习笔记(一)
  20. 交换机多端口命令模式一起配置

热门文章

  1. 通过上传ttf或者otf字体文件生成对应字体的图片
  2. 计算机毕业设计PHP打印助手平台(源码+程序+VUE+lw+部署)
  3. 1.5计算机性能评测
  4. linux 对一个目录及其子目录所有文件添加权限
  5. 【Python】获取当前目录、获取上级目录、获取上上级目录
  6. 【案例】js 获取今天/昨天/近一周/一月/一年的日期,时间戳转日期,
  7. Unity Point Light没用的问题
  8. uniapp设置页面动态背景图
  9. 算法练习--字母移位
  10. 前沿重器[1] | 微软小冰-多轮和情感机器人的先行者