通过红外设置时间的数字时钟_第1页
通过红外设置时间的数字时钟_第2页
通过红外设置时间的数字时钟_第3页
通过红外设置时间的数字时钟_第4页
通过红外设置时间的数字时钟_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、通过红外设置时间的数字时钟姓 名: 江泽炜、王贲专 业: 通 信 工 程2015-8-20摘要随着电子设计自动化技术和可编程逻辑器件的出现和飞速发展,在设计周期得到大大的缩短的同时系统成本也有了大幅度的降低,显然标准逻辑器件的组装已远不能满足这方面的要求。而Verilog HDL能提供高阶电路描述语言的方式,让复杂的电路可以通过Verilog HDL编辑器的电路合成方式,轻易而且快速的达到设计的规格。由于Verilog HDL电路描述语言能涵盖的范围相当广,能适用于各种不同阶层的设计工程师的需要,所以Verilog HDL电路设计毫无疑问的成为硬件设计工程师的必备工具。本系统是用Verilog

2、编写的通过红外设置时间的数字时钟。该设计采用了现场可编程逻辑器件FPGA设计,并基于硬件描述语言Verilog HDL在Altera公司的Quartus 软件上实现仿真。通过红外遥控器在数码管上设置时间以及年月日,确定后开始计时。关键词:Verilog ,红外信号,计时器目 录第1章 绪 论41.1 项目的背景和意义41.3 项目的主要内容错误!未定义书签。1.4 项目的结构安排5第2章 设计方案错误!未定义书签。2.1各模块详细说明72.1.1红外接收模块72.1.2按键驱动模块82.1.3 数码管显示模块72.1.4 8563模块 第3章 实验结果与数据处理10结 论错误!未定义书签。参考

3、文献错误!未定义书签。附 录 14第1章 绪 论1.1 项目的背景和意义20 世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高, 同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快。现代生活的人们越来越重视起了时间观念,可以说是时间和金钱划上了等号。对于那些对时间把握非常严格和准确的人或事来说,时间的不准确会带来非常大的麻烦, 所以以数码管为显示器的时钟比指针式的时钟表现出了很大的优势。数码管显示的时间简单明了而且读数快、时间准确显示到秒。而机械式的依赖于晶体震荡器,可能会导致误差。数字钟是采用

4、数字电路实现对“时”“分”“秒”数字显示的计时装置。数字钟的精度、稳定度远远超过老式机械钟。1.2 项目的主要内容上电后显示为00-00-00,开始计时,通过红外遥控器来设置时间,发出开始设置信号,计时停止,然后从秒、分、小时、星期、日、月、年开始设置,设置完毕后发出确定命令,数码管从设置的时间开始计时,按按键可以切换显示内容,设置时间时可以设置到某一位进行确定并开始计时。1.3 项目的结构安排程序总体上分为6个模块:顶层模块、键盘按键驱动模块、红外接收模块、数码管显示模块、8563模块,时间设置模块。6个模块并行执行。顶层模块:只对底层模块进行例化,不做逻辑设计。键盘按键驱动模块:对按键进行

5、相关处理,切换显示的时间红外接收模块:对遥控器发射的红外进行译码后传给时间设置模块。8563模块:将时间设置模块出来的数据通过I2C总线传输给8563时钟芯片,再从8563读取时间的数据,然后通过数码管来显示时间。数码管显示模块:显示从8563模块传递过来的数码管显示值。 总体设计框图如下:第2章 设计方案2.1 I²c协议 发送到SDA线上的每个字节必须为8位。每次传输可以发送的字节数量不受限制。每个字节后必须跟一个响应位首先传输的是数据的最高位(MSB) 如果从机要完成一些其他功能后 (例如一个内部中断服务程序)才能接收或发送下一个完整的数据字节,可以使时钟线SCL保持低电平迫使

6、主机进入等待状态。当从机准备好接收下一个数据字节并释放时钟线SCL后,数据传输继续。数据传输必须带响应。相关的响应时钟脉冲由主机产生。在响应的时钟脉冲期间,发送器释放SDA(线高)。在响应的时钟脉冲期间,接收器必须将SDA线拉低,使它在这个时钟脉冲的高电平期间保持稳定的低电平。当然必须考虑建立和保持时间。当从机不能响应从机地址时(例如它正在执行一些实时函数不能接收或发送),从机必须使数据线保持高电平。主机然后产生一个停止条件终止传输或者产生重复起始条件开始新的传输。 如果从机接收器响应了从机地址但是在传输了一段时间后不能接收更多数据字节,主机必须再一次终止传输。这个情况用从机在第一个字节后没有

7、产生响应来表示。从机使数据线保持高电平 ,主机产生一个停止或重复起始条件 。 如果传输中有主机接收器,它必须过在从机不产生时钟的最后一个字节不产生一个响应,向从机发送器通知数据结束。从机发送器必须释放数据线,允许主机产生一个停止或重复起始条件。2.2各模块详细说明2.2.1总体设计RTL图2.2.2红外接收模块当按下遥控器的按键时,遥控器将发出如图1的一串二进制代码,称它为一帧数据。根据各部分的功能,可将它们分为5部分,分别为引导码、用户码、用户反码、数据码、数据反码。遥控器发射代码时,均是低位在前,高位在后。红外接收头会将高低电平变反,所以实际从IR端出来的电平是上述格式图中的波形取反,即停

8、止状态时 IR为高电平,然后接收到9ms左右的低电平后进 入准备状态。我们这里取32位中的第17-24进行数据的译码输出。2.2.3按键驱动模块输入:按键输入一个信号key_in;输出:下降沿的判断使能输出;我们在这里调用我们以前做过的按键驱动模块,按下之后数码管进行时分秒界面和年月日界面之间的相互切换。2.2.4数码管显示模块输入:由8563模块输出的时钟,按键的下降沿的使能输入,全局时钟,全局复位信号;输出:数码管的段选和位选输出;程序分为5个always语句块,always语句块之间并行执行。 我们这里在为选的always语句块中定义两个状态,一个是时分秒的状态,一个是年月日状态。我们通

9、过按键的方式来实现时分秒和年月日之间的切换 2.2.5时间设置模块输入:红外接收模块中的译码输出,红外模块的标志位输出,全局时钟,全局复位信号;输出:设定的想要的时间;我们这里由于标志位比数据输入块一拍,我们先把标志位延时1拍产生新的标志位,在时间设定的always语句块中以该标志位进行使能判断,然后判断设置时间的信号是否产生,最后设置时间从秒的地位设置到年的高位,每设置完一个数按键跳到下一个数。设置完之后按下确定按钮,时钟设置完毕。2.2.6 8563模块输入:时间设置模块的设定时间输出,全局时钟输入,全局复位信号输入,I2C总线的数据输入,红外的时间开始确定信号的输入。输出:时间的输出,I2C总线的数据和时钟,三态门的使能信号输出。我们通过I2C总线来实现FPGA与8563时钟芯片之间的数据传输,这里FPGA是主机,8563是从机。我们把时间设定模块的数据通过I2C总线

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论