目录
……………………………………………………………………1
……………………………………………………1
…………………………………………………………………1
…………………………………………………1
确定信号源(分频)模块…………………………………………………2
确定计数模块………………………………………………………………4
………………………………………………………………6
……………………………………………………………………10
数字电子钟总原理图………………………………………………………10
4. 设计过程中出现的问题及解决方法…………………………………………11
5. 参考文献………………………………………………………………………12
6. 心得体会………………………………………………………………………13
设计任务
设计题目:基于CPLD技术、应用QuartusII软件的数字电子钟设计。
设计要求及目的
设计要求:设计的数字电子钟具有时、分、秒计数功能,以24小时循环计时;具有清零、调时功能。
设计目的:通过理论学习和实践动手操作,掌握小型数字系统的设计方法。
通过具体的数字电子钟的课程设计,领会到EDA硬件设计软件化的特点;掌握六十进制、二十四进制计数器的设计方法;同时掌握CPLD技术的层次化结构化设计方法;并能熟练使用QuartusII开发小型数字系统,解决调试过程中所遇到的一些问题。
设计说明书
确定数字电子钟系统组成
信号源(分频)模块 PIN1000HZ
PIN1HZ
频率信号输入
、 1KHZ
50MHZ
1HZ
计数模块:秒
CNTM60
计数模块:时
CNTH24
计数模块:分
CNTF60
进位
进位
CO CO
QH/QL QHa/QLa QHb/QLb
显示模块
DISPLAY
数码管输出
数字电子钟的组成框图
确定信号源(分频)模块
信号源是为了产生1Hz 的门控信号和显示模块的扫描信号,而对输入系统时钟信号CLK(50MHz)进行分频的模块,设计源代码如下:
PIN1HZ把50MHz系统输入时钟分频得到1Hz时钟信号:
LIBRARY IEEE;
USE ;
USE ;
ENTITY PIN1HZ IS
PORT (CLKIN : IN STD_LOGIC;
CLKOUT : OUT STD_LOGIC);
END PIN1HZ;
ARCHITECTURE A OF PIN1HZ IS
BEGIN
PROCESS(CLKIN)
TTEMP : INTEGER RANGE 0 TO 49999999;
BEGIN
IF CLKIN='1' AND CLKIN'EVENT THEN
TTEMP=49999999 TTEMP:=0;
ELSE
TTEMP<25000000 THEN CLKOUT<='1';
ELSE CLKOUT<='0';
END IF;
CNTTEMP:=CNTTEMP+1;
END IF;
END IF;
END PROCESS;
END A;
0 24999999 49999999( 0)
1HZ分频原理波形图
TTEMP计数和对CLKOUT的赋值转换完成分频。
TTEMP为0至24999999(<25000000)时,CLKOUT=0为低电平;当CNTTEMP为25000000到49999999(>25000000)时,CLKOUT=1为高电平。当CNTTEMP到达50000000后再次返回0,从头开始。如此循环,周期变为原来的50000000倍,则频率为50MHZ/50000000=1HZ。
PIN1000HZ把50MHz系统输入时钟分频得到1KHz时钟信号:
LIBRARY IEEE;
USE ;
USE ;
ENTITY PIN2000HZ IS
PORT (CLKIN : IN STD_LOGIC;
CLKOUT : OUT STD_LOGIC);
END PIN2000HZ;
ARCHITECTURE A OF PIN2000HZ IS
BEGIN
PROCESS(CLKIN)
EDA课程设计--数字钟 来自淘豆网m.daumloan.com转载请标明出处.