- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
FPGA课设计报告
FPGA课程设计报告 多功能数字钟电路设计报告 任务书 设计一个具有时、分、秒计时的电子钟电路,按24小时制计时。要求: 1.准确计时,以数字形式显示时、分、秒的时间; 2.具有分、时校正功能,校正输入脉冲频率为1Hz; 3.具有仿广播电台整点报时的功能,即每逢59分51秒、53秒、55秒、57秒时发出4声500Hz低音,在59分59秒发出一声1KHz高音,它们的持续时间均为1秒,最后一声高音结束时刻恰为正点时刻; 4.具有定时闹钟功能,且最长闹铃时间为1分钟。要求可任意设置闹钟的时、分;闹铃信号为500Hz和1KHz的方波信号,交替输出,且均持续1秒。设置一个停止闹铃控制键,可以停止输出闹铃信号。 摘要 数字钟是一种用数字电路技术实现日、时、分、秒计时的装置,与传统的机械式时钟相比,具有更高的准确性和直观性,且无机械传动装置,具有更更长的使用寿命,因此得到了广泛的使用。小到人们日常生活中的电子手表,大到车站、码头、机场等公共场所的大型数显电子钟。 本课程设计要用通过简单的逻辑芯片实现数字时钟。要点在于用555芯片连接成输出一秒的多谐振荡器用于时钟的秒脉冲,用74LS90(10进制计数器)74LS192(4位二进制计数器)等连接成60和12进制的计数器,再通过七段数码管显示,外加上校时电路和整点报时电路即构成了简单数字钟。扩展电路可实现定点报时功能。 原理图 概述 (一)、分频器: 分频器的作用是将脉冲频率调整为500Hz和1kHz两种脉冲频率,作为适中的输入信号。 其Verilog语言描述为: module divider(f,_500HzOut,_1KHzOut, ncR,CLOCK_50,s); input ncR,CLOCK_50,s; output _500HzOut,_1KHzOut,f; wire _1HzOut,_5HzOut; assign f=s?_5HzOut:_1HzOut; divn #(.WIDTH(26),.N) u0(.clk(CLOCK_50), .rst_n(ncR), .o_clk(_1HzOut) ); divn #(.WIDTH(17),.N(100000)) u1(.clk(CLOCK_50), .rst_n(ncR), .o_clk(_500HzOut) ); divn #(.WIDTH(16),.N(50000)) u2(.clk(CLOCK_50), .rst_n(ncR), .o_clk(_1KHzOut) ); divn #(.WIDTH(24),.N) u3(.clk(CLOCK_50), .rst_n(ncR), .o_clk(_5HzOut) ); Endmodule (二)、计数器: 时钟里,分和秒都是六十进制计数,我们利用两个十进制计数器相连组成六十进制计数器。当低级输入端全零且高位输入端从高到低依次为0110时,计数器反馈清零,即实现60进制计数需要。 同六十进制计数器,二十四进制计数器也可由八进制计数器和三进制计数器级联组成,即当从高到低排列时,高级和低级输入端分别为0011,1000时,计数器反馈清零,即实现24进制计数需要。 整个时钟的计数即由两个60进制计数器和一个24进制计数器组成,如下图: 其中,24进制计数器的Verilog语言如下: module counter24(CntH,CntL,ncR,EN,CP); input CP,ncR,EN; output [3:0]CntH,CntL; reg [3:0]CntH,CntL; always @(posedge CP,negedge ncR) begin if(~ncR) {CntH,CntL}=8h00; else if(~EN) {CntH,CntL}={CntH,CntL}; else if((CntH2)||(CntL9)||((CntH==2)(CntL=3))) {CntH,CntL}=8h00; else if((CntH==2)(CntL3)) begin CntH=CntH; CntL=CntL+1b1; end else if(CntL==9) begin CntH=CntH+1b1;
文档评论(0)