VHDL计时秒表实验报告.docx

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
可编程逻辑器件应用 项目报告书 项目名称: 计时秒表指导老师: 姓名: 学号: (以后写报告要包含以下一些内容:) 一、设计要求 二、设计目的 三、设计方案 四、设计程序 五、管脚分配 六、硬件下载实现现象描述------------------------------------------ 七、体会、对设计工作的总结与展------------------------------------------- 一、设计要求: 计时秒表是我们经常见的,在体育运动上也应用非常广的一种工具。譬如我们在进行 50 米、100 米短跑运动中,需要一个计时非常经准的秒表来测速。在这里,我们需设计一个计时秒表,具有以下功能: ① 有启/停开关,用于开始/结束计时操作; ② 用六个七段数码管显示计时数; ③ 秒表计时长度为 59.59.59,超过计时长度,有溢出则报警; ④ 设置复位开关,在任何情况下,只要按下复位开关,秒表都要无条件地进行复位清 0 操作。 三、设计方案: 时钟源使用频率为1Hz的连续脉冲。 时钟显示使用LED数码管显示。 计数器有计数允许和复位输入及进位输出功能。 秒表计时长度为 59.59.59,超过计时长度,有溢出则报警; 用仿真和测试两种手段来验证计数器的功能。 四、 程序语言: ------------------------------------库------------------------------------------ library ieee; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.all; 实体 entity jishumiaobiao is port (en,rst,clk:in std_logic; dian:out std_logic; duan:out std_logic_vector(5 downto 0); cout:out std_logic_vector(6 downto 0)); end; 结构体 architecture one of jishumiaobiao is signal clk_1k:std_logic; signal clk_100h:std_logic; signal cnt6:integer range 0 to 5; signal data:std_logic_vector(3 downto 0); 0); signal data1:std_logic_vector(3 downto 0); signal dout:std_logic_vector(5 downto 0); signal s:std_logic_vector(6 downto 0); signal led1,led2,led3,led4,led5,led6:std_logic_vector(3 downto begin -----------------------------1KHz 分频----------------------------------- process(clk) variable cnt1 : integer range 0 to 250; variable cnt2 : integer range 0 to 200; begin if clkevent and clk=1 then if cnt1=250 then cnt1:=0; if cnt2=200 then cnt2:=0; clk_1k=not clk_1k; else cnt2:=cnt2+1; end if; else cnt1:=cnt1+1; end if; end if; end process; -----------------------------100Hz 分频程序----------------------------- process(clk) variable cnt1 : integer range 0 to 500; variable cnt2 : integer range 0 to 500; begin if clkevent and clk=1 then if cnt1=500 then cnt1:=0; if cnt2=500 then cnt2:=0; clk_100h=not clk_100h; else cnt2:=cnt2+1; end if; else cnt1:=cnt1+1; end if; end if; end process; 数码管地址扫描 process(cl

文档评论(0)

dqy118 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体上海海滋实业有限公司
IP属地湖北
统一社会信用代码/组织机构代码
91310115MA7DL1JF2N

1亿VIP精品文档

相关文档