第一篇:任务书11-数字钟设计
天津城市建设学院
课程设计任务书
2012 —2013 学年第 1 学期
专业班级 课程设计名称:EDA技术及应用
设计题目:数字钟设计
完成期限:自 2013 年 1月 31 日至2013年2月7日共 1周一.课程设计依据
在掌握常用数字电路原理和技术的基础上,根据EDA技术及应用课程所学知识,利用硬件描述语言(VHDL或VerilogHDL),EDA软件(QuartusⅡ)和硬件开发平台(达盛试验箱CycloneⅡFPGA)进行初步数字系统设计。
二.课程设计内容
设计一个数字钟,要求用数码管分别显示时、分、秒的计数,同时可以进行时间设置,并且设置的时间要求闪烁。
三.课程设计要求
1.要求独立完成设计任务。
2.课程设计说明书封面格式要求见《天津城市建设学院课程设计教学工作规范》附表1
3.课程设计的说明书要求简洁、通顺,计算正确,图纸表达内容完整、清楚、规范。
4.测试要求:根据题目的特点,采用相应的时序仿真或者在实验系统上观察结果。
5.课设说明书要求:
1)说明题目的设计原理和思路、采用方法及设计流程。
2)系统框图、VHDL语言设计清单或原理图。
3)对各子模块的功能以及各子模块之间的关系作较详细的描述。
4)详细说明调试方法和调试过程。
5)说明测试结果:仿真时序图和结果显示图。并对其进行说明和分析。
指导教师(签字):
教研室主任(签字):
批准日期:2013年1 月 28日
第二篇:简易数字钟-任务书(精选)
郑州科技学院
数字电子技术课程设计任务书
专业11通信工程班级 2班学号 201151050姓名 XXX
一、设计题目数字电子时钟设计
二、设计任务与要求
1.显示时、分、秒,可以24小时制,具有记忆功能。
2.具有校时功能,分别对小时和分钟单独校时,对分钟校时的时候,最大分钟不向小时进位;
3.为了保证计时准确,由晶体振荡器提供标准时间的基准信号。
三、参考文献
[1] 阎石.数字电子技术基础[M].北京:高等教育出版社,2006
[2] 陈先龙.电子技术基础实验[M].北京:国防工业出版社,2006
[3] 陈光明.电子技术课程设计与综合实训[M].北京:北京航空航天大学出版社,2007
[4] 谢自美.电子线路设计·实验·测试[M].武汉:华中科技大学出版社,2006
四、设计时间至年月日
指导教师签名:
年月日
第三篇:数字钟课设任务书
课程设计任务书
一、设计课题
数字钟
二、设计时间
2011年 6 月 20日至2011年 6 月 24日
三、设计内容及要求
1、设计要求
1)时间以24小时为一个周期; 2)能显示时、分、秒,24小时制;
3)有校时功能,可以分别对时及分进行单独校时,使其校正到标准时间; 4)计时过程具有报时功能,当时间到达整点前5秒进行蜂鸣报时; 5)为了保证计时的稳定及准确须由晶体振荡器提供表针时间基准信号。6)在完成上述设计内容的基础上,可以自行设计一些附加功能。注意:硬件资源的节约,否则器件内资源会枯竭。
2、工作任务与要求
1)搜集有关资料,进行方案设计,画出总体设计框图,说明抢答器由哪些相对独立的功能模块组成,标出各个模块之间互相联系,并以文字对原理作辅助说明。
2)进行电路参数分析、论证,以及电路可靠性分析。3)设计各个功能模块的电路图,加上原理说明。
4)在验证各个功能模块基础上,对整个电路的元器件和布线,进行合理布局,画出总体电路图。
3、设计报告正文内容要求
1)设计目的。2)设计指标。3)设计方案及论证。
4)画出设计的原理框图,并要求说明该框图的工作过程及每个模块的功能。5)画出各功能模块的电路图,加上原理说明(例如抢答门及控制电路,锁存器及译码显示原理等)。
6)画出总布局接线图(集成块按实际布局位置画,关键的连接应单独画出,集成块的引脚须按实际位置画,并注明名称。)
7)元器件清单。
胡静波
第四篇:EDA数字钟设计
数字钟
一、实验目的
1、掌握多位计数器相连的设计方法。
2、掌握十进制,六进制,二十四进制计数器的设计方法。
3、掌握扬声器的驱动及报时的设计。
4、LED灯的花样显示。
5、掌握CPLD技术的层次化设计方法。
二、实验器材
1、主芯片Altera EPF10K10LC84-4。2、8个LED灯。
3、扬声器。4、4位数码显示管。5、8个按键开关(清零,调小时,调分钟)。
三、实验内容
根据电路特点,运用层次设计概念设计。将此设计任务分成若干模块,规定每一模块的功能和各模块之间的接口。
1、时计时程序: library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity hour is
port(reset,clk : in std_logic;
daout : out std_logic_vector(7 downto 0));end hour;
architecture behav of hour is
signal count : std_logic_vector(3 downto 0);signal counter : std_logic_vector(3 downto 0);begin
p1: process(reset,clk)
begin
if reset='0' then
count<=“0000”;
counter<=“0000”;
elsif(clk'event and clk='1')then
if(counter<2)then
if(count=9)then
count<=“0000”;
counter<=counter + 1;
else
count<=count+1;
end if;
else
if(count=3)
then
counter<=“0000”;
else
count<=count+1;
count<=“0000”;
end if;
end if;
end if;
end process;
daout(7 downto 4)<=counter;daout(3 downto 0)<=count;
end behav;
2、分计时程序: library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity minute is
port(reset,clk,sethour: in std_logic;
daout : out std_logic_vector(7 downto 0);
enhour : out std_logic);end minute;
architecture behav of minute is
signal count : std_logic_vector(3 downto 0);signal counter : std_logic_vector(3 downto 0);signal carry_out1 : std_logic;signal carry_out2 : std_logic;begin
p1: process(reset,clk)begin
if reset='0' then
count<=“0000”;
counter<=“0000”;
elsif(clk'event and clk='1')then
if(counter<5)then
if(count=9)then
count<=“0000”;
counter<=counter + 1;
else
count<=count+1;
end if;
carry_out1<='0';
else
if(count=9)then
count<=“0000”;
counter<=“0000”;
carry_out1<='1';
else
count<=count+1;
carry_out1<='0';
end if;
end if;end if;end process;
p2: process(clk)begin
if(clk'event and clk='0')then
if(counter=0)then
if(count=0)then
carry_out2<='0';
end if;
else
carry_out2<='1';
end if;end if;end process;
daout(7 downto 4)<=counter;daout(3 downto 0)<=count;enhour<=(carry_out1 and carry_out2)or sethour;end behav;
3、秒计时程序: library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity second is
port(reset,clk,setmin : in std_logic;
daout : out std_logic_vector(7 downto 0);
enmin : out std_logic);end second;
architecture behav of second is
signal count : std_logic_vector(3 downto 0);signal counter : std_logic_vector(3 downto 0);signal carry_out1 : std_logic;signal carry_out2 : std_logic;begin
p1: process(reset,clk)begin
if reset='0' then
count<=“0000”;
counter<=“0000”;
elsif(clk'event and clk='1')then
if(counter<5)
then
if
(count=9)
then
count<=“0000”;
counter<=counter + 1;
else
count<=count+1;
end if;
carry_out1<='0';
else
if(count=9)
then
count<=“0000”;
counter<=“0000”;
carry_out1<='1';
else
count<=count+1;
carry_out1<='0';
end if;
end if;end if;end process;daout(7 downto
4)<=counter;
daout(3
downto
0)<=count;enmin<=carry_out1 or setmin;end behav;6
4、alert程序: library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity alert is port(clkspk : in std_logic;
second : in std_logic_vector(7 downto 0);
minute : in std_logic_vector(7 downto 0);
speak : out std_logic;
lamp : out std_logic_vector(8 downto 0));end alert;
architecture behav of alert is signal divclkspk2 : std_logic;begin p1: process(clkspk)begin
if(clkspk'event and clkspk='1')then
divclkspk2<=not divclkspk2;
end if;end process;p2: process(second,minute)begin if(minute=“01011001”)then case second is
when “01010001”=>lamp<=“000000001”;speak<=divclkspk2;when “01010010”=>lamp<=“000000010”;speak<='0';when “01010011”=>lamp<=“000000100”;speak<=divclkspk2;when “01010100”=>lamp<=“000001000”;speak<='0';when “01010101”=>lamp<=“000010000”;speak<=divclkspk2;when “01010110”=>lamp<=“000100000”;speak<='0';when “01010111”=>lamp<=“001000000”;speak<=divclkspk2;when “01011000”=>lamp<=“010000000”;speak<='0';when “01011001”=>lamp<=“100000000”;speak<=clkspk;when others=>lamp<=“000000000”;end case;end if;end process;end behav;8
5、seltime程序 library ieee;
use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;
entity seltime is port(ckdsp : in std_logic;
reset : in std_logic;
second : in std_logic_vector(7 downto 0);
minute : in std_logic_vector(7 downto 0);
hour : in std_logic_vector(7 downto 0);
daout : out std_logic_vector(3 downto 0);
sel : out std_logic_vector(2 downto 0));end seltime;
architecture behav of seltime is signal sec : std_logic_vector(2 downto 0);begin
process(reset,ckdsp)begin
if(reset='0')then sec<=“000”;
elsif(ckdsp'event and ckdsp='1')then
sec<=“000”;else
sec<=sec+1;end if;end if;end process;
process(sec,second,minute,hour)begin case sec is
when “000”=>daout<=second(3 downto 0);when “001”=>daout<=second(7 downto 4);when “011”=>daout<=minute(3 downto 0);when “100”=>daout<=minute(7 downto 4);when “110”=>daout<=hour(3 downto 0);when “111”=>daout<=hour(7 downto 4);when others=>daout<=“1111”;end case;end process;
if(sec=“111”)then
sel<=sec;end behav;
6、deled程序: LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;use ieee.std_logic_unsigned.all;
ENTITY deled IS PORT(S: IN STD_LOGIC_VECTOR(3 DOWNTO 0);
A,B,C,D,E,F,G,H: OUT STD_LOGIC);END deled;
ARCHITECTURE BEHAV OF deled IS
SIGNAL DATA:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL DOUT:STD_LOGIC_VECTOR(7 DOWNTO 0);BEGIN DATA<=S;PROCESS(DATA)BEGIN
CASE DATA IS
WHEN “0000”=>DOUT<=“00111111”;WHEN “0001”=>DOUT<=“00000110”;WHEN “0010”=>DOUT<=“01011011”;WHEN “0011”=>DOUT<=“01001111”;WHEN “0100”=>DOUT<=“01100110”;WHEN “0101”=>DOUT<=“01101101”;WHEN “0110”=>DOUT<=“01111101”;WHEN “0111”=>DOUT<=“00000111”;WHEN “1000”=>DOUT<=“01111111”;WHEN “1001”=>DOUT<=“01101111”;WHEN “1010”=>DOUT<=“01110111”;WHEN “1011”=>DOUT<=“01111100”;WHEN “1100”=>DOUT<=“00111001”;WHEN “1101”=>DOUT<=“01011110”;WHEN “1110”=>DOUT<=“01111001”;WHEN “1111”=>DOUT<=“01000000”;WHEN OTHERS=>DOUT<=“00000000”;END CASE;END PROCESS;H<=DOUT(7);
G<=DOUT(6);
F<=DOUT(5);
E<=DOUT(4);D<=DOUT(3);C<=DOUT(2);B<=DOUT(1);A<=DOUT(0);END BEHAV;
7、顶层原理图:
四、实验结果 顶层原理图仿真波形:
五、心得体会
1、系统设计进要行充分的方案论证,不可盲目就动手去做;
2、实验中对每一个细节部分都要全面思考,要对特殊情况进行处理;
3、对于数字系统,要考虑同步、异步问题;
4、数字电路的理论分析要结合时序图;
5、遇到问题,要顺藤摸瓜,分析清楚,不可胡乱改动,每做一次改变都要有充分的理由;
6、模块化设计方法的优点在于其简洁性,但是在实验设计中也发现,在实验最终电路确定之前,要尽量减少模块重叠嵌套,因为在总的电路敲定之前,电路还不成熟,很多地方需要改进,如果在开始时就进行多层模块化,里层模块电路的修改将影响其外层的全部电路,这样就是牵一发动全身,很显然,这样将导致电 数字钟课程设计 电路设计的低效,所以在设计过程中,一定要尽量减少超过两层的模块;
7、遇到问题花了很长时间没有解决掉,要学会想他人请教,别人的不经意一点,可能就能把自己带出思维死区。
第五篇:多功能数字钟设计
课程设计任务书
课程设计名称学生姓名专业班级设计题目多功能数字钟设计
一、课程设计目的1、综合运用EDA技术,独立完成一个课题的设计,考察运用所学知识,解决实际问题的能力;
2、结合理论知识,考察阅读参考资料、文献、手册的能力;
3、进一步熟悉EDA技术的开发流程,掌握文件编辑、编译、仿真、下载验证等环节的实现方法和
应用技巧;
4、锻炼撰写研究报告、研究论文的能力;
5、通过本实践环节,培养科学和严谨的工作作风。
二、设计内容、技术条件和要求
l、能进行正常的时、分、秒计时功能,分别由6个数码显示24小时、60分钟的计数器显示。
2、能利用实验系统上的按钮实现“校时”、“校分”功能;
(1)按下“SA”键时,计时器迅速递增,并按24小时循环;
(2)按下“SB”键时,计时器迅速递增,并按59分钟循环,并向“时”进位;
(3)按下“SC”键时,秒清零;抖动的,必须对其消抖处理。
3、能利用扬声器做整点报时:
(1)当计时到达59’50”时开始报时,频率可为500Hz;
计满23小时后回零;计满59分钟后回零。
(2)到达59’59”时为最后一声整点报时,整点报时的频率可定为lKHz。
4定时闹钟功能
5、用层次化设计方法设计该电路,用硬件描述语言编写各个功能模块。
6、报时功能。报时功能用功能仿真的仿真验证,可通过观察有关波形确认电路设计是否正确。
三、时间进度安排
1周:(1)完成设计准备,确定实施方案;(2)完成电路文件的输入和编译;(4)完成功能仿真。
2周:(1)完成文件至器件的下载,并进行硬件验证;(2)撰写设计说明书。
四、主要参考文献
(1)谭会生、瞿遂春,《EDA技术综合应用实例与分析》,西安电子科技大学出版社,2004
(2)曹昕燕、周凤臣等,《EDA技术实验与课程设计》,清华大学出版社,2006
指导教师签字:2012年9月1日