基于EDA实验平台的可调数字万年历的设计与实现毕业论文
2021-11-04 20:49:57
摘 要
本毕业设计是以FPGA为硬件基础,VHDL语言作为硬件描述语言来进行万年历的实现,其应用数字逻辑电路设计出了年、月、日、时、分、秒的计数和显示,由于使用的是石英晶体振荡器,所以其精确度非常高。数字万年历相对其他日历而言时间获取更方便,实现的功能更多样化,花费更少,更符合人们的生活习惯。所以数字万年历的发展是必然的趋势,其前景更为广阔。
本毕业设计有以下几个部分:分频模块、时钟模块、时分秒计时模块、公历年、月、日计时模块、显示模块、日期调整模块、按键模块、阳历与农历转换模块等等。在从分析需求到设计出程序这个过程中我进行了整体设计思路的构思、实验方案的设计和查找、各个模块的分析、各个模块和整体流程图的绘制、各个模块的测试、整体实现的功能测试以及仿真分析。
关键词:日历、FPGA、VHDL、数字万年历、农历
abstract
This calendar is based on FPGA and VHDL as the hardware description language. It uses the digital logic circuit to design the year, month, day, hour, minute and second count and display. Because the quartz crystal oscillator is used, its accuracy is very high. Compared with other calendars, digital perpetual calendar is more convenient in time acquisition, more diversified in functions, less in cost and more in line with people's living habits. Therefore, the development of digital perpetual calendar is an inevitable trend, and its prospect is more broad.
This paper will introduce several parts: clock module, hour minute second timing module, Gregorian calendar month day timing module, lunar calendar timing module, display module, date adjustment module, key module, solar calendar and lunar calendar comparison module and so on. Its specific contents include: the analysis and introduction of the overall design idea, the whole thought process of the source of the experimental scheme, the introduction and analysis of each module, the drawing and explanation of each module and the overall flow chart, the test results of each module, the functional test and simulation analysis of the overall implementation. Because the lunar calendar is much more complex than the solar calendar, so will spend a considerable part of the ink to introduce the advantages and disadvantages of the lunar calendar, as well as its size month and leap month and so on.
Keywords: Calendar, FPGA, VHDL, Digital perpetual calendar, Lunar calenda
目录
第一章 绪论 1
第二章 设计理论基础 2
2.1 FPGA 2
2.1.1 FPGA 2
2.1.3 FPGA工作原理 2
2.1.4 选用FPGA的原因 3
2.2 VHDL硬件描述语言 3
2.3 Quartus软件平台 4
2.4 历法 5
2.4.1 公历 5
2.4.2农历 5
2.5 LCD1602 5
第三章 方案设计 9
第四章 万年历单元电路程序设计及分析 12
4.1 分频模块 12
4.2 秒模块 12
4.3 分模块 12
4.4 时模块 13
4.5 天模块 14
4.6 月模块 14
4.7 年模块 15
4.8 转换模块 15
4.9 消抖模块 16
4.9 显示模块 17
第五章实物测试 18
5.1时间参数设置 18
5.2结果分析 20
第六章 总结 21
致谢 23
参考文献 24
附录A 25
附录B 26
第一章 绪论
时代不断前行,科技不断发展,人们的生活习惯,生活用品也不断变化,在过去,人们多使用挂历、台式日历,其缺点很明显,挂历需要每天撕扯一张,万一有一天或者几天忘了撕挂历,则日期就会出错误,还有可能会耽误生活中某些计划好的事情甚至因为日期问题错过重要的事情,比如:父母生日、重要节日没有给家人送祝福;工作验收时间错过等等。台式日历缺点更为明显,它只能显示一个月有多少天,具体今天是几月几日,其需要人们自己记住。以上两者虽然还有人在使用,但更多是作为一种装饰品而存在。现在人们在发展科技同时也在享受、适应科技给我们带来的便利[1]。万年历在生活中随处可见,手机、电脑、手表、甚至一些装饰品上都存在,显示方法多种多样:数码管、液晶、投影等等。本设计用到的时LCD1602液晶显示。在设计预期是完成显示公历、阳历、时、分、秒、以及二十四节气提醒、整点报时,但设计结果功能没达到设计预期那么多样,只完成里主要的功能。
第二章 设计理论基础
2.1 FPGA
2.1.1 FPGA
在1985年,当全球首款FPGA产品——XC2064诞生。最初,FPGA只是用于胶合逻辑(GlueLogic),从胶合逻辑到算法逻辑再到数字信号处理、高速串行收发器和嵌入式处理器,FPGA真正地从配角变成了主角[2]。
电子产品现在越来越多样,在电子产品的开发中,FPGA越来越受人们欢迎。FPGA应该是每个电子产品设计者都需要了解知道的,FPGA是一种可多次重复编程的逻辑门阵列器件[3]。用FPGA进行产品设计时是利在FPGA 模块功能内进行其他行业产品的设计,而不仅仅是对FPGA芯片进行研究。 其与 ASIC 不同的地方有很多,FPGA在通信行业的应用比较广泛。从芯片器件的角度讲,FPGA 是半定制电路中的典型集成电路,即FPGA可以进行重复编程,而不是像ASIC一样当程序编写好后不可修改,只能用于单一产品功能的规模生产,但ASIC应用规模比FPGA更广泛。在近期FPGA更趋向于向高集成、高性能、低功耗、低价格方向发展,所以在未来很可能FPGA会抢占更多ASIC的应用市场。FPGA含有数字管理模块、内嵌式单元、输出单元以及输入单元等。在此基础上,关于FPGA芯片有必要全面着眼于综合性的芯片优化设计,通过改进当前的芯片设计来增设全新的芯片功能,据此实现了芯片整体构造的简化与性能提升。