基于FPGA的智能数字时钟电子信息.docx
- 文档编号:14404979
- 上传时间:2023-06-23
- 格式:DOCX
- 页数:56
- 大小:1.70MB
基于FPGA的智能数字时钟电子信息.docx
《基于FPGA的智能数字时钟电子信息.docx》由会员分享,可在线阅读,更多相关《基于FPGA的智能数字时钟电子信息.docx(56页珍藏版)》请在冰点文库上搜索。
基于FPGA的智能数字时钟电子信息
毕业设计(论文)
题目基于FPGA的智能数字时钟
学生毕业设计(论文)原创性声明
本人以信誉声明:
所呈交的毕业设计(论文)是在导师的指导下进行的设计(研究)工作及取得的成果,设计(论文)中引用他(她)人的文献、数据、图件、资料均已明确标注出,论文中的结论和结果为本人独立完成,不包含他人成果及为获得重庆工程学院或其它教育机构的学位或证书而使用其材料。
与我一同工作的同志对本设计(研究)所做的任何贡献均已在论文中作了明确的说明并表示了谢意。
毕业设计(论文)作者(签字):
年月日
摘要
本设计完成了一款基于FPGA的智能数字时钟,该数字时钟具有以下功能:
实时时间的显示,时间的校对,整点报时,定时闹钟,实时温度显示,MP3播报功能,智能控制外接设备等附属功能。
本设计主要包括以下7个模块:
主控模块,温度采集模块,显示模块,语音模块,附属功能模块,电源模块,按键控制模块;其中,主控模块采用Altera的Cyclone II系列EP2C5T144C8N芯片;温度采集采用DS18B20温度传感器模块;显示模块由16数码管和8个LED灯构成;语音模块为XY-V17B串口语音模块,蓝牙解码版MP3音频接收器模块,3W+3W的功放模块与8欧0.5瓦的扬声器构成。
本设计使用FPGA采集50MHZ时钟信号生成的年月日等时间数据、DS18B20温度传感器采集的温度数据、通过内部处理后通过数码管与LED灯智能显示;同时控制语音模块智能播报。
并且,相比传统时钟本设计具备以下优点:
显时精准;可靠性高;智能语音播报;可实现智能控制外接设备如LED台灯、小型风扇。
关键词:
FPGA数字时钟智能
ABSTRACT
ThisdesignrealizesanintelligentdigitalclockbasedonFPGA.Thedigitalclockhasthefollowingfunctions:
real-timetimedisplay,timeproofreading,timingalarmclock,real-timetemperaturedisplay,MP3broadcastfunction,intelligentcontrolofexternalequipmentandotherancillaryfunctions.Thisdesignmainlyincludesthefollowingsevenmodules:
maincontrolmodule,temperatureacquisitionmodule,displaymodule,voicemodule,auxiliaryfunctionmodule,powersupplymoduleandkeycontrolmodule.Amongthem,themaincontrolmoduleadoptsAltera'sCyclone IIseriesEP2C5T144C8Nchip;DS18B20temperaturesensormoduleisusedfortemperatureacquisition.Thedisplaymoduleconsistsof16digitaltubesand8LEDlamps.ThevoicemoduleconsistsofXY-V17Bserialportvoicemodule,BluetoothdecodedMP3audioreceivermodule,3W+3Wpoweramplifiermoduleand8W0.5Wloudspeaker.
Inthisdesign,FPGAisusedtocollectthedate,month,year,etc.timedatageneratedby50MHZclocksignal,temperaturedatacollectedbyDS18B20temperaturesensor,andafterinternalprocessing,itisintelligentlydisplayedbydigitaltubeandLEDlamp.Atthesametime,itcontrolsthevoicemoduletobroadcastintelligently.Inaddition,comparedwiththetraditionalclockdesign,theclockhasthefollowingadvantages:
accuratetiming,intelligentvoicebroadcasting,MP3musicplaying,Bluetoothmusicplaying,andintelligentcontrolofexternalequipmentsuchasLEDtablelampsandsmallfans.
Keyword:
FPGA;Digitalclock;Intelligent
1绪论
1.1课题研究的背景
在当今的数字时代背景下,智能数字钟的身影已经遍布各个领域。
数字时钟也更加智能和多功能。
据调查,国内制造商的数字时钟产品具备时间、温度、打盹功能、计时、夜灯、省电模式、多组闹钟、多档亮度调节、12/24小时转换、遥控操作等功能[1]。
据监测数据显示,2011年,我国多功能时钟的产量高达2.89亿只。
虽然我国的多功能时钟产业取得了巨大进步,多功能数字时钟生产量已经位居世界前列;然而,国内多功能钟表公司及其品牌在国际市场上的声誉和影响力仍然微不足道。
虽然产出比例已经达到80%以上,但产出比例还不到30%,仍然没有发言权和定价权。
而国外企业中,日本理光公司推出的时钟芯片甚至出现了时基软件校准功能(TTF)以及振荡器停止和振动的自动检测功能,芯片价格非常低。
目前,这些芯片已经被客户广泛使用。
在最新一代的时钟芯片产品中,除了第二代产品的功能之外,它们还添加了复合功能,例如低压检测、主电池和备用电池之间的切换以及印刷电路板的防泄漏功能,并且它们的封装更小(高度为0.85mm,面积仅为2mm×2mm),例如理光的代表性产品R2051[2]。
1.2课题研究的目的与意义
当今社会是数字化的社会,是数字集成电路被普遍应用的社会。
微电子技术高速发展,设计和制造集成电路并不完全由半导体制造商承担。
系统设计者更偏向于设计独有的专业集成电路(ASIC)芯片,并希望设计周期尽可能短。
最好在实验室设计一个合适的ASIC芯片,并立即投入实际使用,这样就出现了现场可编程器件(FPLD)。
现场可编程门阵列(FPGA)即属其中应用最广泛的一种[3]。
电子产品的日新月异,传统的手工设计过程已经被先进的自动化设计工具所代替。
熟悉和掌握这些现代设计工具已经成为电子信息设计师的一项必要技能[4]。
在这个时间就是金钱的年代里,多功能数字时钟普及在生产生活中的各个领域,只要有计时,便就需用到数字时钟的原理及结构;同时,它因其体积小、价格低、精度高、使用方便、功能多、易于集成而受到消费者的欢迎。
随着人类科技文明的发展,人们对钟表的需求不断增加。
由此可见,数字时钟不仅是显示时间的工具,并且被广泛应用在许多实际应用中。
体积小、功能多、精度高、功耗低,是现代时钟发展的趋势。
在这种趋势下,时钟的数字化和多功能化已经成为时钟生产研究的主流设计方向[5]。
1.3课题研究的方法与主要内容
本课题以智能数字钟为研究对象,采取基于FPGA的嵌入式设计方案。
通过前期的文献资料查阅和生活实际调研,绘制了系统的初步功能框图,并提出了智能数字钟的总体设计思想;以EP2C5T144芯片为主控芯片,结合定时器计数技术、传感器技术、数数码管数字显示技术、串口控制语音播报技术,PWM调控技术等来实现时间、温度的实时显示,智能语音播报,功能模式切换,按键校时、MP3音乐播放控制、附属功能模式控制等功能。
论文的组成框架如下:
第一章绪论;
第二章系统设计方案;
第三章设计方案的实现;
第四章测试方案与测试结果;
第五章总结。
2系统设计方案
2.1功能需求
本设计的功能需求为:
实时显示年、月、日等时间数据,所处环境的实时温度;对显示的时间数据进行校对,整点报时,闹钟设置并具有铃声提醒,播放MP3音乐与蓝牙音乐,智能控制外部设备等附属功能。
根据智能数字时钟的功能需求,分别主要功能进行功能分析与实现。
1.时间与温度的显示
本设计需实现年、月、日、周、时、分、温度的实时显示,常见的显示方式有1602液晶显示屏显示和LED数码管显示,经考对比与分析后最终决定采用数码管的显示方式满足设计需求。
2.实时温度的采集
实时温度数据的采集需要通过温度传感器进行采集温度模拟信号,通过模数转换为数字信号后由主控芯片译码后通过数码管等显示器显示[6]。
3.音频文件的播报
MP3播放的实现需通过SD卡读取模块输出音频电信号,再通过功放模块将此音频信号通过扬声器输出。
蓝牙音乐播放报功能的实现需使移动设备与蓝牙解码模块通信并输出音频电信号,功放模块将此音频电信号通过扬声器输出。
整点报时与定时响铃:
整点报时即再整点时刻向外界释放特定的音频信号,定时响铃即在用户设定的特定时刻向外界释放音频信号。
音频信号的产生方式可通过无源蜂鸣器、有源蜂鸣器生成[7],或者通过语音模块向外界释放语音音频信号。
由于有源蜂鸣器的发声方式单一,无源蜂鸣器虽然可以发出不同的声音,但是程序将及其复杂;而且,由以上可知本设计需播报的音频有以下三种:
整点报时音频,闹钟铃声,MP3音频。
经对比与分析后最终决定采用XY-V17B串口语音模块满足功能需求。
4.智能控制外部设备
本功能设计模块预想的功能如下:
可通过按键控制外接LED的亮度或外接风扇的风速,根据用户需求可控制外接设备的电源开关;经分析对比,前者采用PWM技术改变正负极两端电压实现,后者通过倒计时设计思路的方式实现。
2.2系统的整体设计思路
根据智能数字时钟的功能需求分析,本设计是一款基于FPGA的智能数字时钟,以FPGA主控芯片、DS18B20温度传感器、XY-V17B语音模块、PWM电压调控模块等器件组成系统的硬件电路组成部分。
采用VerilogHDL语言分别编写显示模块、时钟信号模块、按键控制模块、语音控制模块等模块的程序;并将各模块工程文件编译后生成模块符号文件作为独有的模块文件符号在顶层调用;可实现实时时间的显示、校对,整点报时与定时响铃,实时温度的采集、处理与显示,工作模式切换,MP3播报功能,智能控制外部设备等附属功能。
智能数字时钟的整体系统框图2.1如下。
图2.1智能数字时钟的整体系统框图
由智能数字时钟的整体系统框图与功能需求分析可知,本系统可分为时间校对模式、闹钟设置模式、MP3模式和附属功能模式四种工作模式。
主模式切换按键S1:
通过一个满4归1的计数器实现时间校对模式,闹钟设置面试,MP3模式,附属功能模式四种模式之间循环切换。
1.时间校对模式:
光标切换按键S2:
通过一个满7归0计数器实现在年设置,月设置,日设置,星期设置,时设置,分设置,设置完成并赋值给计时寄存器、将实时时间赋值给时间校对寄存器八个档位之间切换;
增加1按键S3:
实现数值增加1;
减少1按键S4:
实现数值减少1。
2.闹钟设置模式:
光标切换按键S2:
通过一个满4归0的计数器实现在闹钟时设置,闹钟分设置,闹钟铃声设置,闹钟开启和闹钟关闭五种模式之间循环切换;
增加1按键S3:
实现数值增加1;
减少1按键S4:
实现数值减少1;
一键关闭闹钟铃声键S5:
实现在任何模式下当铃声响起即可通过此按键一键关闭闹钟铃声的操作。
3.MP3模式:
播放/暂停按键S3:
实现MP3音乐的播放或暂停;
上一首按键S2:
实现播放前一首歌曲的操作;
下一首按键S4:
实现播放后一首歌曲的操作。
4.附属功能模式:
次模式切换按键S2:
通过一个满4归1的计数器实现在蓝牙控制模式,USB端口1控制模式,USB端口2控制模式和扩展功能控制模式四种模式之间循环切换;
功能按键S3,S4:
实现对外接设备的智能控制。
数码管的显示说明:
当处于闹钟设置模式时时、分的显示数码管将显示设置的闹钟时间;其余情况数码管将显示实时时间和实时温度。
LED灯的显示说明:
系统处于不同的工作模式时,8个LED灯进行不同的显示。
2.3时钟自动计时的实现
方案一:
采用时钟芯片DS1302
实时时钟电路DS1302的控制单一、价格低廉、应用方便被广泛地采用。
它是美国DALLAS公司推出的一种高性能、低功耗、带RAM的实时时钟电路;可以对年、月、日、周、时、分、秒进行计时与校对,具有闰年,平年转换功能[8]。
方案二:
采用外部有源晶振实现时钟功能
由有源晶振分频后得到秒时钟信号;可知秒、分都为60进制,故由60进制计数器完成;时为24进制,即由24进制计数器完成;星期为7进制,即由7进制计数器完成;日为28/29/30/31进制,即由28/29/30/31进制计数器完成;月为12进制,即由24进制计数器完成;年可看作是9999进制,即由9999进制计数器完成[9]。
由于本系统的主控模块具有能产生稳定的50MHZ的时钟信号的有源晶振,可由此分频得到稳定的秒钟时钟信号。
由此,从设计需求、设计成本等因素对比与分析后最终决定采用方案二。
设计框图如图2.2所示。
图2.2时钟计时模块设计框图
2.4主要功能模块介绍
2.4.1温度采集模块
经对比与分析后决定采用DALLAS公司生产的DS18B20型1-wire数字温度传感器实现实时温度实时显示功能。
本设计中只应用了一个DS18B20传感器实现实时温度的检测,因此,只需要初始化后跳过ROM命令进行温度转换,即可通过读暂存寄存器命令获取实时温度数据。
再将温度传感器采集到实时温度数据BCD码转换后由数码管译码显示。
温度传感器模块的设计框图如图2.3所示。
图2.3温度传感器模块设计框图
2.4.2语音模块
XY-V17B串口语音模块是一款高性能的智能语音模块,集IO分段触发,UART串口控制,one-line单总线串口控制,标准MP3等功能于一体。
最大支持32GTF卡存储,文件格式支持MP3、WAV解码格式,且可通过USB数据线连接电脑更新TF卡存储音频文件。
本设计中应用了XY-V17B串口语音模块的IO触发模式实现整点报时音频、闹钟铃声的播报和标准MP3模式播报MP3音频。
1.IO触发模式:
该模式分为I/O组合模式和I/O独立模式,每种模式下又有两种方式,按键触发模式和电平触发模式,低电平有效。
按键触发是指低电平触发后随即释放电平,类似于按键按下后弹起,故称为按键触发;电平触发是指低电平触发后持续低电平,释放电平后立即停止触发,故称为电平触发。
I/O组合模式可以选择播放255首曲目,以8个I/O输出电平的不同组合形式实现;I/O独立模式可以播放8首曲目,分别由8个I/O单独控制。
本设计方案采用的是按键触发组合模式(000)。
控制I/O组合触发(低电平有效)指定的曲目后释放(IO0-IO7恢复高电平),播放完当前曲目后将停止;若播放中途重产生新触发条件则播放新的曲目;若保持触发(不释放电平)状态,将循环播放。
曲目选择控制如表2.1所示。
表2.1按键触发组合模式功能控制对照表
控制引脚
I/O电平输入
播放曲目
CON3
CON2
CON1
I/O7
I/O6
I/O5
I/O4
I/O3
I/O2
I/O1
00001.mp3
0
0
0
1
1
1
1
1
1
0
00002.mp3
1
1
1
1
1
0
1
00003.mp3
1
1
1
1
1
0
0
00004.mp3
1
1
1
1
0
1
1
…
…
…
…
…
…
…
…
00255.mp3
0
0
0
0
0
0
0
2.标准MP3模式(101):
该模式可通过按键控制XY-V17B的8个I/O的电平输入实现音乐的播放,暂停,上一首,下一首等操作。
详细描述如表2.2所示。
表2.2MP3模式功能控制对照表
配置引脚
I/O说明
CON3
CON2
CON1
I/O1
I/O2
I/O3
1
0
1
NEXT/V+
PREV/V
P/P/MODE
NEXT/V+:
短按切换到下一首曲目,长按音量+;
PREV/V-:
短按切换到上一首曲目,长按音量-;
P/P/MODE:
短按暂停/播放,长按切换播放设备(U盘/TF卡)。
整个语音播报模块以PAM8403迷你5V数字小功放板模块为核心;蓝牙解码板MP3音频接收器模块和XY-V17B串口语音模块为音频信号的信源端,可利用三极管的电子开关特性控制信源的选择;发声端采用的是8欧0.5瓦的扬声器实现左右声道发声。
语音模块设计框图如图2.4所示。
图2.4语音模块设计框图
2.4.3显示模块
数码管的显示方式分为静态显示和动态显示。
静态显示数字电路是在数码管的公共端连接的条件下,即共阳极接电源VCC,共阴极接地GND,数码管的段选码(即a,b,c,d,e,f,g,dp)与微处理器的I/O引脚一对一相连;当微处理器的I/O口输出不同的电平组合时,数码管将显示相对应的图像。
本设计方案采用的是八段共阳极数码管,因此,将着重介绍本款数码管的编码方式,其编码方式如表2.3所示。
表2.3共阳数码管的编码方式
字形
0
1
2
3
4
5
6
7
8
9
黑屏
编码
0xC0
0xF9
0xA4
0xB0
0x99
0x92
0x82
0xF8
0x80
0x90
0xFF
动态显示数字电路将计数器输出的8421BCD码转换为数码管需要的逻辑状态,同时,输出数码管的片选信号和位选信号。
所谓动态扫描显示就是将数码管的段选线并联,由位选线选择某一位数码管[10]。
当数码管的某一位需要显示数据的时,使其余位都不显示,同理,当数码管的另外某一位需要显示数据的时,也使其余位都不显示,通过这种方法就可以实现数码管的每一位都能单独显示对应的数据。
又由于人的眼睛具有视觉暂留的现象,只要保证数码管的每一位在合理时间间隔显示,就可以造成数码管多位数据同时显示的假象。
一般每一位显示的时间间隔设置为1^10ms,就可以实现数码管动态显示的功能。
本款智能数字时钟采用15位数码管动态显示的方式显示实时时间和实时温度,所谓动态显示就是数码管在频率为100Hz—1KHz的时钟信号驱动下每一位被逐一点亮,而本系统的震荡电路设计采用外部有源晶振为50MHz,因此,本设计将采用时钟计数分频的办法,即将占空比为50%的50MH时钟信号先经过5万分频得到1KHz时钟,从而实现年、月、日、周、时、分、温度的实时显示。
设计框图如图2.5所示。
图2.5数码管的显示模块设计框图
3设计方案的实现
3.1开发环境介绍
本设计所用软件首要是QuartusII,在此对它进行简洁介绍。
QuartusII是Altera提供的FPGA/CPLD开发集成环境,为设计者们提供了一种与构造无关的设计环境,使设计者能便利地进行设计输入、快速编译和器件编程。
Altera公司的QuartusII开发工具使用简单、性能良好,并自带仿真、编译功能。
QuartusII软件完全支持Verilog语言程序设计,编译。
QuartusII也可以利用第三方的综合工具,如Modelsim,并能直接调用这些工具[11]。
3.2设计方案的整体实现
将分频模块,按键控制模块,温度传感器模块,时钟校对模块,时钟计时模块,闹钟设置模块,MP3控制模块,附属功能模块,语音播报模块和显示模块等创建的符号文件在新建的顶层模块图形编辑文件中调用,进行模块符号间的连线,设置输入,输出引脚。
编写好顶层模块后,进行编译、仿真、验证程序的正确性。
下面给出顶层模块的逻辑框图3.1。
图3.1顶层模块设计框图
3.3分频模块
本系统的有源晶振OSC提供一个频率稳定的50MHz时钟信号,初步分析系统将需要的时钟信号有秒信号、毫秒信号、微秒信号等,即将原有的50MHZ的时钟信号生成需要的1MHZ、1KHZ、1HZ的时钟信号。
分频电路模块结构图如图3.2所示。
图3.2分频电路模块结构图
端口引脚信号说明如表3.1所示。
表3.1分频电路模块引脚信号说明
引脚名称
类型
功能描述
clk
输入
输入50MHZ的系统时钟信号。
reset
输入
高电平无效的复位信号,为器件提供异步复位信号。
clk_1HZ
输出
输出1HZ的时钟信号。
clk_1KHZ
输出
输出1KHZ的时钟信号。
clk_1MHZ
输出
输出1MHZ的时钟信号。
该模块的时序图如图3.3所示,满足设计要求。
图3.3分频电路的模块时序图
3.4按键控制模块
依照按设计方案,按键消抖方式采用状态机消抖,其原理和延时消抖的原理基本一样,只需要检测一个低电平信号持续5毫秒就可以判断按键被按下去了[12]。
一共用了4个输入按键:
一个主模式切换按键S1和三个在不同模式下有不同响应的功能按键S2、S3、S4,CLK的输入时钟信号是50MHZ。
该模块的结构图如图3.4所示。
图3.4按键控制模块结构图
端口引脚信号说明如表3.2所示。
表3.2按键控制模块引脚信号说明
引脚名称
类型
功能描述
clk
输入
输入50MHZ的系统时钟信号。
reset
输入
高电平无效的复位信号,为器件提供异步复位信号。
key1
输入
按键S2的输入信号。
key2
输入
按键S3的输入信号。
key3
输入
按键S4的输入信号。
key4
输入
按键S1的输入信号。
key1_out1
输出
时间校对模式时,与输入引脚key1的输入信号一致。
key2_out1
输出
时间校对模式时,与输入引脚key2的输入信号一致。
key3_out1
输出
时间校对模式时,与输入引脚key3的输入信号一致。
key1_out2
输出
闹钟设置模式时,与输入引脚key1的输入信号一致。
key2_out2
输出
闹钟设置模式时,与输入引脚key2的输入信号一致。
key3_out2
输出
闹钟设置模式时,与输入引脚key3的输入信号一致。
key1_out3
输出
MP3模式时,与输入引脚key1的输入信号一致。
key2_out3
输出
MP3模式时,与输入引脚key2的输入信号一致。
key3_out3
输出
MP3模式时,与输入引脚key3的输入信号一致。
key1_out4
输出
附属功能模式时,与输入引脚key1的输入信号一致。
key2_out4
输出
附属功能模式时,与输
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 FPGA 智能 数字 时钟 电子信息