ImageVerifierCode 换一换
格式:DOC , 页数:8 ,大小:183.50KB ,
资源ID:3149578      下载积分:20 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-3149578.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(LED数码显示时钟(EDA程序设计).doc)为本站会员(hw****26)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

LED数码显示时钟(EDA程序设计).doc

1、LED 数码显示时钟一、实验目的 :1、地运用数字系统的设计方法进行数字系统设计。2、能进行较复杂的数字系统设计。 3、数 字 钟 的 工 作 原 理 , 数 字 钟 的 工 作 流 程 图 与 原 理 方 框 图 , 自 顶 向 下 的 数 字 系 统 设 计 方法 。二、实验原理:1、数字钟的基本工作原理: 数字钟以其显示时间的直观性、走时准确性而受到了人们的欢迎并很快走进了千 家万户。作为一种计时工具,数字钟的基本组成部分离不开计数器,在控制逻辑电路的控制下完成预定的各项功能。数字钟的基本原理方框图如下:(1)时基 T 产生电路:由晶振产生的频率非常稳定的脉冲,经整形、稳定电路后,产生一

2、个频率为 1Hz 的、非常稳定的计数时钟脉冲。 (2)控制逻辑电路:产生调时、调分信号及位选信号。 调时、调分信号的产生:由计数器的计数过程可知,正常计数时,当秒计数器( 60进制)计数到 59 时,再来一个脉冲,则秒计数器清零,重新开始新一轮的计数,而进位则作为分计数器的计数脉冲,使分计数器计数加 1。现在我们把电路稍做变动:把秒计数器的进位脉冲和一个频率为 2Hz 的脉冲信号同时接到一个 2 选 1 数据选择器的两个数据输入端,而位选信号则接一个脉冲按键开关,当按键开关不按下去时(即为 0),则数据选择器将秒计数器的进位脉冲送到分计数器,此时,数字钟正常工作;当按键开关按下去时(即为 1)

3、,则数据选择器将另外一个 2Hz 的信号作为分计数器的计数脉冲,使其计数频率加快,当达到正确时间时,松开按键开关,从而达到调时的目的。调节小时的时间也一样的实现。 (3)计数显示电路:由计数部分、数据选择器、译码器组成,是时钟的关键部分。 计数部分: 由两个 60 进制计数器和一个 24 进制计数器组成,其中 60 进制计数器可用 6 进制计数器和 10 进制计数器构成;24 进制的小时计数同样可用 6 进制计数器和10 进制计数器得到:当计数器计数到 24 时,“2”和 “4”同时进行清零,则可实现 24 进制计数。 数据选择器:84 输入 14 输出的多路数据选择器,因为本实验用到了 8

4、个数码管(有两个用来产生隔离符号)。 译码器:七 段 译 码 器 。 译 码 器 必 须 能 译 出 , 由 实 验 二 中 译 码 器 真 值 表 可 得 : 字 母 F 的 8421BCD 码 为 “1111”, 译 码 后 为 “1000111”, 现 在 如 果 只 译 出 , 即 字 母 F 的中 间 一 横 , 则 译 码 后 应 为 “0000001”, 这 样 , 在 数 码 管 上 显 示 的 就 为 。2、自顶向下设计分割图: 数 字 钟计数显示电路控制逻辑电路2 选 1 数 据 选 择 器 位 选 信 号 发 生 器 计数器 译码器数据选择器调时、 调分控制电路位选信号发

5、生电路控制逻辑电路计数器 电路时基 T 产生电路1Hz晶振 分频整形 门控双稳 脉冲计数 译码 显示说 明 : 按 一 下 按 键 key0,完 成 复 位 功 能 ,clk5 选 择 1Hz 的 时 钟 ,clk3 选 择 的 时 钟 频 率 尽 量 高 。三、实验连线:1、将 EP1C3 适配板左下角的 JTAG 用十芯排线和万用下载区左下角的 SOPC JTAG口连接起来,万用下载区右下角的电源开关拨到 SOPC 下载的一边。2、请将 JPLED1 短路帽右插,JPLED 的短路帽全部上插,实验板右下方频率源 CLK1 接任意频率作为扫描频率。3、将实验板左端的 JP103 全部用短路帽

6、接上(共八个) 。四、实验内容与步骤:(程序:EP1C3timertimer.sof)1、打开 Quartus II 6.0 软件,点击 “FileOpenProject”出现如下的对话框( 图 10.1),选中 timer,点打开即可;图 10.12、点击“Tools-Programmer” 后出现如下的对话窗口, 3、在点”EditAdd File”出现如下对话框(图 10.2),在图 10.3 对话框中,选中EP1C3/timer/timer.sof 项目后点击打开回到 Programmer 对话框, 在下载对话窗口中“选中Program/ Configure”,点击“ Start”即进

7、行下载。图 10.2图 10.3现将 timer.vhd 原程序作如下说明:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_SIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY TIMER ISPORT( CLK5:IN STD_LOGIC;CLK3:IN STD_LOGIC;RST1:IN STD_LOGIC;SEG_SEL:OUT STD_LOGIC_VECTOR(2 DOWNTO 0);SEG_DA :OUT ST

8、D_LOGIC_VECTOR(7 DOWNTO 0);END TIMER;ARCHITECTURE ADO OF TIMER ISCOMPONENT CNT10PORT(CLK:IN STD_LOGIC;RST:IN STD_LOGIC;CIN:IN STD_LOGIC;CNT_VAL:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT :OUT STD_LOGIC);END COMPONENT;COMPONENT CNT6PORT(CLK :IN STD_LOGIC;RST :IN STD_LOGIC;CIN :IN STD_LOGIC;CNT_VAL:OUT STD

9、_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END COMPONENT;COMPONENT CNT2PORT(CLK: IN STD_LOGIC;RST: IN STD_LOGIC;CIN: IN STD_LOGIC;CNT_VAL:INOUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT :OUT STD_LOGIC);END COMPONENT;COMPONENT CNT4PORT (CLK:IN STD_LOGIC;RST:IN STD_LOGIC;CIN:IN STD_LOGIC;CNT_VAL:OUT STD_LO

10、GIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END COMPONENT;SIGNAL SEG_BUF1,SEG_BUF2,SEG_BUF3,SEG_BUF4:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL SEG_BUF5,SEG_BUF6,SEG_BUF7,SEG_BUF8:STD_LOGIC_VECTOR(3 DOWNTO 0); SIGNAL SEG_CNT :STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL SEG_TEMP:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL C

11、OUT:STD_LOGIC_VECTOR(5 DOWNTO 0); SIGNAL CLK:STD_LOGIC;BEGINPROCESS (CLK3)BEGINIF CLK3EVENT AND CLK3=1 THENCLK SEG_TEMP SEG_TEMP SEG_TEMP SEG_TEMP SEG_TEMP SEG_TEMP SEG_TEMP SEG_TEMP NULL;END CASE;END PROCESS;PROCESS (SEG_TEMP)BEGINCASE SEG_TEMP ISWHEN “0000“ = SEG_DA SEG_DA SEG_DA SEG_DA SEG_DA SEG

12、_DA SEG_DA SEG_DA SEG_DA SEG_DA SEG_DA SEG_DA SEG_DA SEG_DA SEG_DA SEG_DACLK5,RST=RST1,CNT_VAL=SEG_BUF1,COUT=COUT(0),CIN=1);U2 : CNT6 PORT MAP (CLK=CLK5,RST=RST1,CNT_VAL=SEG_BUF2,COUT=COUT(1),CIN=COUT(0);U3 : CNT10 PORT MAP (CLK=CLK5,RST=RST1,CNT_VAL=SEG_BUF4,COUT=COUT(2),CIN=COUT(1);U4 : CNT6 PORT

13、MAP (CLK=CLK5,RST=RST1,CNT_VAL=SEG_BUF5,COUT=COUT(3),CIN=COUT(2);U5 : CNT4 PORT MAP (CLK=CLK5,RST=RST1,CNT_VAL=SEG_BUF7,COUT=COUT(4),CIN=COUT(3);U6 : CNT2 PORT MAP (CLK=CLK5,RST=RST1,CNT_VAL=SEG_BUF8,COUT=COUT(5),CIN=COUT(4);END ADO;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_SIGNED.

14、ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY CNT10 ISPORT(CLK :IN STD_LOGIC;RST :IN STD_LOGIC;CIN :IN STD_LOGIC;CNT_VAL:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END CNT10;ARCHITECTURE BEHAVE OF CNT10 ISSIGNAL CNT_T:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGIN PROCESS(CLK

15、)BEGIN IF RST=1 THENCNT_T=“0000“;ELSIF CLKEVENT AND CLK=1 THENIF CIN=1 THENIF CNT_T/= 9 THENCNT_T=CNT_T+1;ELSE CNT_T=“0000“;END IF;END IF;ELSE CNT_T=CNT_T;END IF;END PROCESS;COUT=1 WHEN CNT_T=9 AND CIN=1 ELSE 0 ;CNT_VAL=CNT_T;END BEHAVE;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_SIG

16、NED.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY cnt6 ISPORT(CLK :IN STD_LOGIC;RST :IN STD_LOGIC;CIN :IN STD_LOGIC;CNT_VAL:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC );END CNT6;ARCHITECTURE ADO2 OF CNT6 ISSIGNAL CNT_T :STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL COUTD :ST

17、D_LOGIC;BEGIN PROCESS (CLK,RST)BEGINIF RST=1 THENCNT_T=“0000“;ELSIF CLKEVENT AND CLK=1 THENIF CIN=1 THENIF CNT_T 5 THENCNT_T=CNT_T+1;ELSE CNT_T=x“0“;END IF;END IF;ELSECNT_T=CNT_T;END IF;END PROCESS;COUT=1 WHEN CNT_T=5 AND CIN=1 ELSE 0;CNT_VAL=CNT_T;END ADO2; LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;

18、USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_SIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY CNT2 ISPORT(CLK :IN STD_LOGIC;RST :IN STD_LOGIC;CIN:IN STD_LOGIC;CNT_VAL:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END CNT2;ARCHITECTURE ADO3 OF CNT2 ISSIGNAL CNT_T:STD_LOGIC_VECTOR (3 DOWNTO

19、 0);BEGIN PROCESS(CLK,RST)BEGINIF RST=1 THENCNT_T=“0000“;ELSIF CLKEVENT AND CLK=1 THENIF CIN=1 THENIF CNT_T1 THEN CNT_T=CNT_T+1;ELSE CNT_T=“0000“;END IF;END IF;ELSE CNT_T=CNT_T;END IF;END PROCESS;COUT=1 WHEN CNT_T=1 AND CIN=1 ELSE 0;CNT_VAL=CNT_T;END ADO3;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE

20、 IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_SIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY CNT4 ISPORT(CLK :IN STD_LOGIC;RST:IN STD_LOGIC;CIN:IN STD_LOGIC;CNT_VAL:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);COUT:OUT STD_LOGIC);END CNT4;ARCHITECTURE BEHAVE OF CNT4 ISSIGNAL CNT_T:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(CLK,RST)BEGINIF RST=1 THENCNT_T=“0000“;ELSIF CLKEVENT AND CLK=1 THENIF CIN=1 THENIF CNT_T3 THENCNT_T=CNT_T+1;ELSE CNT_T=“0000“;END IF;END IF;ELSECNT_T=CNT_T;END IF;END PROCESS;CNT_VAL=CNT_T;COUT=1 WHEN CNT_T=3 AND CIN=1 ELSE 0;END BEHAVE;

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。