没有合适的资源?快使用搜索试试~ 我知道了~
首页基于FPGA的8位数码管扫描显示电路设计
基于FPGA的8位数码管扫描显示电路设计
需积分: 50 1.2k 浏览量
更新于2023-05-27
评论 4
收藏 1MB DOC 举报
基于FPGA的8位数码管扫描显示电路设计,基于FPGA的8位数码管扫描显示电路设计
资源详情
资源评论
资源推荐

8位数码管扫描显示电路设计
一、实验目的
1、学习8位数码管扫描显示电路设计
2、继续学习元件例化语句的使用
3、继续学习VHDL的CASE语句应用及多层次设计方法
二、实验原理
图 中 所 示 的 是 8 位 数 码 扫 描 电 路 , 其 中 每 个 数 码 管 的 8 个 段 :
h、g、f、e、d、c、b、a(h 是小数点)都分别连在一起,8 个数码管分别由 8 个
选通信号 k1、k2、…k8 来选择。被选通的数码管显示数据,其余关闭。如在某
一时刻,k3 为高电平,这是仅 k3 对应的数码管显示来自段信号端的数据,而其
他 7 个数码管呈现关闭状态。根据这种电路状态,如果希望在 8 个数码管显示的
数据,就必须通过选通信号 k1、k2、…k8 分别单独选通,并在此同时,在段信
号输入口加上希望在该对应数码管上显示的数据,于是选通信号的扫变,就能实现
扫描显示的目的。
实验内容一中 clk 是扫描时钟:SG 为 7 段控制信号,由高位至低位分别接
g、f、e、d、c、b、a7 个段:BT 是位选控制信号,接上图中的 8 个选通信号:
k1、k2、…k8。程序中 cnt8 是一个 3 位计数器,作为扫描计数信号,由进程 P2
生成;进程 P3 是 7 段译码查表输出程序;进程 P1 是对 8 个数码管选通的扫描程
序,例如当 cnt8 等于“001”时,K2 对应的数码管被选通,同时,A 被赋值 3,再
由进程 P3 译码输出“1001111”,显示在数码管上即为“3”;当 cnt8 扫变时,将
能在 8 个数码管上显示数据:13579bdf.
三、实验内容
1、设计8位数码管扫描显示电路并进行仿真和下载验证;
(1)实验程序
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY SCAN_LED IS
PORT(CLK:IN STD_LOGIC;
A1,A2,A3:IN STD_LOGIC_VECTOR(3 DOWNTO 0);















安全验证
文档复制为VIP权益,开通VIP直接复制

评论0