实验三 7段数码管显示

  • 格式:pdf
  • 大小:135.82 KB
  • 文档页数:3

下载文档原格式

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

实验三 7段数码管显示

一实验要求

用设计一个共阴7段数码管控制接口,要求:在时钟信号的控制下,使8位数码管动态刷新显示各自学号。

二实验内容

在实验仪器中,8位7段数码显示的驱动电路已经做好,并且其位选信号(SEL[7..0])为一3-8译码器的输出,所以我们在设计7段数码管控制接口时,其位选信号输出必须经

8-3编码。

显示控制器的引脚图如图3-1:

图3-1

图中CP为时钟输入端,SEGOUT[7..0]为段驱动输出;SELOUT[2..0]为位选信号输出;NUMOUT[3..0]为当前显示的数据输出。

图3-2 7段显示控制器仿真波形图

从图3-2可以看出,8位数码管是轮流点亮的,我们以NUMOUT=1这段波形为参考:当SELOUT为000时,点亮第一位显示器,显示的数字为1,同时,NUMOUT输出的数据也为“0001”。同理,当SELOUT为001时,点亮第二位显示器,显示数字为1,直到6位显示器全都显示完毕,等待进入下一个数字的显示。

同时,还有一个问题不可忽视,位扫描信号的频率至少需要多少以上,才能使显示器不闪烁?简单的说,只要扫描频率超过眼睛的视觉暂留频率24H Z以上就可以达到点亮单个显示,却能享有6个同时显示的视觉效果,而且显示也不闪烁。当我们输入频率为5MH Z时,

我们通过加法计数器来产生一个约300H Z的信号,并且由它来产生位选信号,请参考下面程序段:

PROCESS (CP) -- 计数器计数

Begin

IF CP'Event AND CP='1' then

Q <= Q+1;

END IF;

END PROCESS;

NUM <= Q(24 DOWNTO 21); --about 1 Hz

S <= Q(15 DOWNTO 13); --about 300 Hz

--扫描信号

SEL <= "000" WHEN S=0 ELSE

"001" WHEN S=1 ELSE

"010" WHEN S=2 ELSE

"011" WHEN S=3 ELSE

"100" WHEN S=4 ELSE

"101" WHEN S=5 ELSE

"111111";

由计数器Q引出到S信号,若时钟信号为5MH Z时,Q13得到的信号频率约300HZ,再将它分给扫描信号,最后每个显示器扫描信号频率为:300/6=50H Z>24H Z,所以不会有闪烁情形产生。

三实验连线

CP对应IO3

SEGOUT、SELOUT分别对应数据总线的低8位与高8位

NUMOUT对应IO9-IO12

功能选择位M[3..0]状态均为0010,左端8个数码管,低8位为7位段总加小数点选取位,高8位为8个数码管com端选取,即如果要选取数码管0,则发送总线值为:1111 1110 1111 1111,如要选取数码管1,则发送总线值为:1111 1101 1111 1111,此时所选数码管7段和DP位将全部亮。

实验接线:用导线连接IO3与ADJ_CLK,调整拨码开关SW17-SW20,使输出频率为5MHz;用导线将IO9-IO12连到L1-L4。