fpga数字钟实训报告(具有8点报时,按键调时功能).

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

桂林电子科技大学职业技术学院FPGA应用实训报告

数字钟

学院(系):电子信息工程系

专业:电子信息工程技术

学号: 1212220217

学生姓名:李建军

指导教师:叶俊明

目录

摘要 (2)

1 绪论 (3)

2 课题背景 (4)

2.1设计任务与要求 (4)

2.2 设计目的 (4)

2.3总体设计方案 (4)

3 程序方案论证 (5)

3.1分频方案论证 (5)

3.1.1分频模块方案I (5)

3.1.2分频模块方案II (5)

3.2计时模块方案论证 (6)

3.2.1计时模块方案I (6)

3.2.2计时模块方案 II (6)

3.3方案总结 (7)

4 系统软件设计 (7)

4.1程序流程图 (7)

4.2计时模块 (8)

4.3闹钟模块 (8)

4.4显示模块 (8)

5系统硬件设计 (9)

5.1 FPGA的介绍 (9)

5.1.1 FPGA概述 (9)

5.1.2 FPGA基本结构 (9)

5.2原理框图 (11)

6调试 (12)

6.1调时程序调试 (12)

6.2闹钟程序调试 (12)

总结 (13)

致谢 (14)

参考文献 (15)

附录 (16)

摘要

数字钟是由振荡器、分频器、计数器、译码器、数码显示器等几部分组成。振荡电路:主要用来产生时间标准信号,因为时钟的精度主要取决于时间标准信号的频率及稳定度,所以采用石英晶体振荡器。

分频器:因为振荡器产生的标准信号频率很高,要是要得到“秒”信号,需一定级数的分频器进行分频。

计数器:有了“秒”信号,则可以根据60秒为1分,24小时为1天的制,分别设定“时”、“分”、“秒”的计数器,分别为 60进制,60进制,24进制计数器,并输出一分,一小时,一天的进位信号。译码显示:将“时”“分”“秒”显示出来。将计数器输入状态,输入到译码器,产生驱动数码显示器信号,呈现出对应的进位数字字型。

由于计数的起始时间不可能与标准时间(如北京时间)一致,故需要在电路上加一个校时电路可以对分和时进行校时。另外,计时过程要具有报时功能,当时间到达整点时开始响,蜂鸣器不停地响1分钟后不响。

关键词:数字钟,振荡,计数,校正,报时

1 绪论

数字钟是采用数字电路实现对时、分、秒,数字显示的计时装置,广泛用于个人家庭,车站,码头、办公室等公共场所,成为人们日常生活中不可少的必需品,由于数字集成电路的发展和石英振荡器的广泛应用,使得数字钟的精度远远超过老式钟表,钟表的数字化给人们生产生活带来了极大地方便,而且大大地扩展了钟表原先的报时功能。诸如定时自动报警、校时自动打铃、时间程序自动控制、定是广播、自动启闭路灯、定时开关烘箱、通断动力设备,甚至各种定时电气的自动启用等,所有这些,都是以钟表数字化为基础的。因此,研究数字钟及扩大其应用有着非常现实的意义。

伴随着集成电路技术的发展, 电子设计自动化(EDA)技术逐渐成为数字电路设计的重要手段。基于FPGA的EDA技术的发展和应用领域的扩大与深入,使得EDA技术在电子信息,通信,自动控制,计算机等领域的重要性日益突出。本设计给出了一种基于FPGA的多功能数字钟方法,测试结果表明本设计实现了一个多功能的数字钟功能,具有时、分、秒计时显示功能,以24小时循环计时;具有校正小时和分钟的功能;以及清零,整点报时功能。

2 课题背景

数字化的钟表给人们带来了极大的方便。近些年,随着科技的发展和社会的进步,人们对数字钟的要求也越来越高,传统的时钟已不能满足人们的需求。多功能数字钟不管在性能还是在样式上都发生了质的变化,有电子闹钟、数字闹钟等等。

利用EDA技术进行电子系统的设计具有以下几个特点:采用自顶向下的设计方法;用软件的形式设计硬件;用软件的方式设计过程中可用相关软件进行仿真;系统可现场编程,在线升级;整个系统集成在一个芯片上,体积小,功耗低,可靠性高.因此,EDA技术是现代电子设计的发展趋势.

用硬件描述语言结合FPGA可编程器件可以极大地方便集成电路的设计,使其成为集成电路的发展趋势,也是每一个电子工程师必须掌握的技术,故基于FPGA(现场可编程门阵列)的设计型实验成为高校电类专业学生的必修且重要环节。

2.1设计任务与要求

(1)设计一个数码管实时显示时、分、秒的数字时钟(24小时显示模式)(2)到点报时、闹钟时间固定为8:00

(3)同时设置按键调时。

2.2 设计目的

为了更好的运用掌握FPGA多功能数字钟编程知识,学会自我找到问题、分析问题并解决问题的方法,培养认真学习和工作的作风,锻炼自己的思考能力和团结合作能力。充分发挥思维创造性,开发功能多样的扩展功能电路并锻炼自己的动手能力。

2.3总体设计方案

(1)方案一用数电制作一个数字钟,通过74L74芯片实现数码管计数功能用与非门结合,用按键来设置实现闹钟和整点报时的功能。

(2)方案二用fpga来制作一个数字钟,通过编写程序来控制fpga芯片输出输入来得到数字钟的功能,同时用fpga板来实现该功能。(3)方案三用单片机来控制数字钟,通过编写程序来实现时钟计时功能,通过单片机试验箱来实现该功能,最终达到相应的结果。

总结:

方案一用数电的方式做数字钟,用的芯片多同时之制作麻烦,不适合制做数字钟。方案二制作比较便捷,只需要写程序,制作业是比较方便,也比较实现功能。方案三用单片机虽然也是编写程序,可是和FPGA相比我个人觉得还是比单片机好做一点。综合上述我选择FPGA来制作该程序

3 程序方案论证

3.1分频方案论证

3.1.1分频模块方案I

定义变量并且设定一个上限值,每次加计数到该上限值时,输出该计数值的最高位

parameter DIV_SIZE=25;

always@(posedge clock)

counter=counter+1;

assign clkdiv=counter[DIV_SIZE-1];

3.1.2分频模块方案II

定义一个变量,使得counter_1hz==20 000 000,使得输入1hz信号,让counter_1hz自加

always@(posedge clk)

Begin if(counter_1hz==20 000 000)

begin counter_1hz=0;clk_1hz<=~clk_1hz;end

else counter_1hz=counter_1hz+1;

if(counter>=10000)

begin counter<=0;clk_1khz<=~clk_1khz;end

else begin counter<=counter+1;

End

相关文档
最新文档