EDA课程8位数码管扫描显示的设计.doc_第1页
EDA课程8位数码管扫描显示的设计.doc_第2页
EDA课程8位数码管扫描显示的设计.doc_第3页
EDA课程8位数码管扫描显示的设计.doc_第4页
EDA课程8位数码管扫描显示的设计.doc_第5页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

eda课程8位数码管扫描显示的设计专业: 电子信息工程 学号: 2010040209 姓名: 郭亚兵 一、系统方案论证如下图(1)所示的是8位数码扫描显示电路,其中每个数码管的8个段:h, g, f, e, d, c, b, a(h是小数点)都分别连在一起,8个数码管分别由8个选通信号k1, k2, k3,k8来选择。被选通的数码管显示数据,其余关闭。如在某一时刻,k2为高电平,其余选通信号为低电平,这是仅k3对应的数码管显示来自段信号端的数据,其余7个数码管呈现关闭状态。根据这种电路状况,如果希望在8个数码管显示希望的数据,就必须使得8个选通信号k1, k2, k3,k8分别被单独选通,并在此同时,在段信号输入口加上希望在该对应数码管上显示的数据,于是随着选通信号的扫变,就能实现扫描显示的目的。一、二、实验原理与内容实验原理:1 每个数码管的8个段:hgfedcba(h是小数点)都分别连在一起, 8个数码管分别由8个选通信号k1.k2.。k8选择,被选通的数码管(高电平)显示数据,其余关闭。如在某一时刻,k3为高电平,其余为低电平,这时仅k3对应的数码管显示来自段信号端的数据,其余的都关闭。据此,就必须使8个选通信号分别被单独选通,并同时在段信号输入口加上希望显示的数据,就能实现功能 。 2 clk 是扫描时钟,sg 为7段控制信号,由高位之低位分别接gfedcba7个段,bt是位选控制信号。cnt8是一个3位计数器,做扫描计数信号,由进程p2生成。进程p3是7段译码查表输出程序,进程p1 是对8个数码管选通的扫描程序。例如当cnt8=001时,k2对应的数码管被选通,同时a被赋值2,再由进程p3译码输出1001111,显示在数码管上即为2,。当cnt8扫变时,将能在8个数码管上显示23408148. 3 本次试验不显示小数点,可把sg段控制信号向量变为8位(最高位代表小数点),并在最高位设置成恒0低电平。图41 动态数码扫描显示硬件电路原理图三、实验步骤六、实验步骤1、调出调出预先编好的的源程序,检查是否正确;在quartus 中新建一个工程命名为scan_led,将预先编辑好的程序复制入vhdl文件中,保存并命名为scan_led。2、编译、仿真程序;点击start complilation按钮进行全程仿真没有错误后开始进行硬件仿真,首先进行引脚锁定,按照实验讲义中的器件引脚选择模式6,锁定引脚后如下图所示。3、引脚锁定完成后,开始下载生成的sof文件,会发现数码管开始显示23408148,实验成功。四、实验报告1、写出实验源程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;-entity scan_led is port ( clk : in std_logic; sg : out std_logic_vector(7 downto 0); -段控制信号输出 bt : out std_logic_vector(7 downto 0) ); -位控制信号输出 end scan_led;-architecture one of scan_led is signal cnt8 : std_logic_vector(2 downto 0); signal a : integer range 0 to 9;beginp1: process( cnt8 ) begin case cnt8 is when 000 = bt = 00000001 ;a bt = 00000010 ;a bt = 00000100 ;a bt = 00001000 ;a bt = 00010000 ;a bt = 00100000 ;a bt = 01000000 ;a bt = 10000000 ;a null ; end case ; end process p1; p2: process(clk) begin if clkevent and clk = 1 then cnt8 sg sg sg sg sg sg sg sg sg sg sg sg sg sg sg sg null ; end case ; end process p3; end one; 2、实验结果:将生成的sof文件通过下载线下载到实验箱中,正确显示了自己的学号。改变时钟频率,可以得到不同的效果,如低频率时数码管逐个显示,高频率时数码管逐个显示频率很快,变成了同时显示。3、心得体会: 1本次实验要想成功,首先需要知道以下知识:位控制端是控制哪个数码管显示。段控制端输入根据每个数码管的7个段输入的电平高低而发亮,显示所需要的数据 2本实验用到3个进程,进程p1 是对8个数码管选通的扫描程序,进程p2做扫描计数信号,进程p3是7段译码查表输出程序。这给初学者一个启发,在编写复杂的程序时,也可以按照这种方式实现。 3通过改变段选值可以使数码管显示不同的数值。所以显示自己的学号加100,只需要把程序a值改变即可。 4通过改变clock0的频率可产生不同的显示效果。 五、问题及思考 扫描在视频显示中的应用:扫描显示是通过把画面划分成很多很多帧来实现的。每一帧都是静止的图象,快速连续地显示帧便形成了运动的假象。刷新频率越快,由于人眼的视觉停留,就会得到想要的结果。这就像是拍摄电影一样,在拍摄武打动作时,实际中两人的动作是很慢的,但播放时,人为的把速度放快,才得到了我们日常生活中喜欢的那种快动作效果。六、课程设计体会与建议6.1、设计体会课程设计是培养学生综合能力,运用所学知识、发现、提出、分析和解决问题,锻炼实践能力的重要环节,是对学生实际工作能力的具体实训和考擦过程。回顾这次课程设计,我感慨万千,的确,从选题到定稿,从理论到实践,在这些日子里,我学到了很多东西,不仅可以复习以前学的知识,而且学到了很多书本上学不到的知识。通过这次课程设计是我懂个了理论和实际相结合起来,从理论中的结论,把理论应用到实践中,才能真正的为社会服务,从而提高自己的实际动手能力和思考能力。再设计的过程中的问题很多,但毕竟是第一次做到,难免遇到各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前学过的知识理解不够深刻,掌握不够牢固,对单片机掌握的不好,还需要更努力学习。通过这次课程设计之后,一定把以前所学过的知识从新温故。通过这次课程设我体会到,干任何事都必须耐心,细致,课程设计中许多问题不免令我感到有些心烦意乱,但一想老师对我们的耐心教导,想到自己以后所承担的社会责任,我不禁提醒自己,一定要养成高度的责任,良好的习惯,这次课程设计为我以后的工作得到一定的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论