数字电子时钟实验报告2..doc
文本预览下载声明
重庆大学光电工程学院系列课程
实 验 报 告 本
课程名称 可编程逻辑电路技术
实验学期 2014 年至 2015 第 1 学期
学生所在学院 光电工程学院
年级 12级 专业班级 光电信息02班
学生姓名 闫昊 学号
指导教师签名
实验最终成绩
重庆大学光电工程学院教学实验中心制
实验题目 数字电子钟实验 实验时间 2014年9月28日星期日 实验地点 主教1118 实验成绩 实验性质 □验证性 □设计性 √综合性 教师评语:
□出勤率好 □原理正确 □ 方案合理
□实验结果正确 □ 回答问题正确 □ 报告规范 一、实验目的
1、掌握VHDL程序的基本设计技巧。
2、掌握各类计数器以及他们相连的设计方法。
3、掌握VHDL的并行语句和顺序语句的设计方法。
4、掌握矩阵键盘原理和数码管动态显示方法。 二、实验内容
1、采用层次化设计方法,设计一个数字电子钟,能够正常进行时、分、秒计时,并用数码管显示计时结果。
2、所设计的数字电子钟应具有校时功能。
3、时、分、秒以及较时功能模块采用VHDL语言实现,顶层采用原理图输入方式,把时、分、秒以及较时功能模块按照一定的组合逻辑连接起来,组成数字电子时钟。
实验原理
图1.数字电子钟原理图
实验原理上图所示,实验箱的标准信号源模块为计数器提供基准时钟,校准按键由矩阵键盘实现,显示用实验箱上面的8位数码管实现。在校时状况下,是对需要调整的时间模块进行计数,控制按键用来选择是正常计数还是校准时间计数,并决定调整时、分、秒;置数按键按下时,表示相应的调整模块要加1,如需要对小时调整时,显示时间的LED管闪烁且当置数键按下时,相应的小时显示要加1,。
三、使用仪器、器材
(1)PC机一台,HP-FPGA11实验箱一套。
(2) QuartusⅡ软件。 四、实验步骤
1、用文本输入法,实现时、分、秒以及较时功能,并生成实体图。
2、利用生成的底层实体图,设计出数字电子时钟的顶层实体图。
3、编译,绑定引脚,下载程序,通过实验箱验证程序的正确性。
五、实验过程原始记录(数据、图标、计算等)
秒计时模块的设计:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
use ieee.std_logic_unsigned.all;
ENTITY SIXSEC IS
PORT(CLK:IN STD_LOGIC;
KONG:IN STD_LOGIC;
OUTS:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
OUTG:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);
CO:OUT STD_LOGIC);
END SIXSEC;
ARCHITECTURE beh OF SIXSEC IS
SIGNAL SHI,GE:STD_LOGIC_VECTOR (3 DOWNTO 0);
SIGNAL CO1:STD_LOGIC;
BEGIN
CO1=1when(SHI=0000and GE=0000) else0;
CO=(CO1 AND KONG);
PROCESS(CLK)--时钟作用
BEGIN
IF CLKEVENT AND CLK=1 THEN
IF SHI=0101 THEN
IF GE=1001 THEN
SHI=0000;
GE=0000;
ELSE GE=GE+1;
END IF;
ELSE IF GE=1001 THEN
SHI=SHI+1;
GE=0000;
ELSE GE=GE+1;
END IF;
END IF;
END IF;
OUTS=SHI;
OUTG=GE;
END PROCESS;
END ARCHITECTURE beh;
秒计数器器件图:
秒计数器仿真:
由图可知:当KONG为1时可产生进位信号,当KONG为0时进位信号被屏蔽。
分计数模
显示全部