数字秒表源程序_第1页
数字秒表源程序_第2页
数字秒表源程序_第3页
数字秒表源程序_第4页
数字秒表源程序_第5页
全文预览已结束

下载本文档

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

文档简介

一 实验目的 秒表的逻辑结构比较简单 它主要由 显示译码器 分频器 十进制计数器 报警器和六进制计数器 组成 在整个秒表中最关键是如何获得一个精确的 100Hz 计时脉冲 除此之外 整个秒表还需要一个启 动信号和一个归零信号 以便能够随时启动及停止 秒表有六个输出显示 分别为百分之一秒 十分之一秒 秒 十秒 分 十分 所以共有 6 个计数器与之 对应 6 个个计数器全为 BCD 码输出 这样便于同时显示译码器的连接 当计时达 60 分钟后 蜂鸣器鸣 响 10 声 二 结构组成 1 四个十进制计数器 用来分别对百分之一秒 十分之秒 秒和分进行计数 2 两个 6 进制计数器 用来分别对十秒何时分进行计数 3 分频率器 用来产生 100Hz 的计数脉冲 4 显示译码器 完成对显示译码的控制 三 硬件要求 1 主芯片 EP1K100QC208 3 2 6 位八段扫描共阴极数码显示管 3 二个按键开关 归零 启动 四 实验内容及步骤 1 根据电路特点 将此设计电路分成若干模块 规定每个模块的功能和各个模块之间的接口 然后再 将各个模块和起来联试 2 了解软件各元件管理层次含义 以及模块元件之间的连接概念 对不同目录下的统一设计如何融合 3 适配划分前后的仿真内容有何不同概念 仿真信号对象有何不同 4 安适配划分的管脚定位 同相关功能块元件之间的连接概念 5 所有模块用 VHDL 语言描述 五 实验源代码如下 1 分频器代码 将 2 5MHz 脉冲变成 100Hz library ieee use ieee std logic 1164 all entity div is port clr clk in bit q buffer bit end div architecture a of div is signal counter integer range 0 to 12499 begin process clr clk begin if clk 1 and clk event then if clr 1 then counter 0 elsif counter 12499 then counter 0 q not q else counter counter 1 end if end if end process end a 2 十进制计数器代码 原理为加法计数器 计数十时由 cout 进位 library ieee use ieee std logic 1164 all use ieee std logic unsigned all entity count10 is port clr start clk in bit cout out bit daout out std logic vector 3 downto 0 end count10 architecture a of count10 is signal temp std logic vector 3 downto 0 begin process clk clr begin if clr 1 then temp 0000 cout 1001 then temp 0000 cout 1 else temp temp 1 cout 0 end if end if end if daout temp end process end a 3 六进制计数器代码 原理为加法计数器 计数六时由 cout 进位 library ieee use ieee std logic 1164 all use ieee std logic unsigned all entity c6 is port clr start clk in bit daout out std logic vector 3 downto 0 cout out std logic end c6 architecture a of c6 is signal temp std logic vector 3 downto 0 begin process clk clr begin if clr 1 then temp 0000 cout 0101 then temp 0000 cout 1 else temp temp 1 cout 0 end if end if end if end process daout temp end a 4 报警器代码 当记时到一小时时 报警器报警 并响十声 library ieee use ieee std logic 1164 all use ieee std logic unsigned all entity alarm1 is port clk I in std logic q out std logic end alarm1 ARCHITECTURE a OF alarm1 IS signal n integer range 0 TO 20 signal q0 std logic begin process clk begin if clk 1 and clk event then if i 0 then q0 0 n 0 elsif n 19 and i 1 then q0 not q0 n n 1 else q0 0 end if end if end process q q0 END a 5 数据选择和数码管选择模块代码 其功能是选择个计数端口来的数据 当相应的数据到来时数据选择器选择器数据后输出给数码管 并由数 码管显示 library ieee use ieee std logic 1164 all USE ieee std logic UNSIGNED all entity seltime is port clr clk in bit dain0 dain1 dain2 dain3 dain4 dain5 in std logic vector 3 downto 0 sel out std logic vector 2 downto 0 daout out std logic vector 3 downto 0 end seltime architecture a of seltime is signal temp integer range 0 to 5 begin process clk begin if clr 1 then daout 0000 sel 000 temp 0 elsif clk 1 and clk event then if temp 5 then temp 0 else tempsel 000 daoutsel 001 daoutsel 010 daoutsel 011 daoutsel 100 daoutsel 101 daoutledledledledledledledl

温馨提示

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

评论

0/150

提交评论