江苏大学数字逻辑专业课程设计数字时钟.doc
《江苏大学数字逻辑专业课程设计数字时钟.doc》由会员分享,可在线阅读,更多相关《江苏大学数字逻辑专业课程设计数字时钟.doc(17页珍藏版)》请在咨信网上搜索。
JIANGSU NIVERSITY 课程设计汇报 学院:计算机科学和通信工程 班级:网络工程 姓名: 学号: 指导老师: 汇报日期 :1月15日 目 录 Ⅰ.设计目标 1 Ⅱ.设计内容 1 Ⅲ.设计原理 1 Ⅳ.具体实现 2 (1)顶层图 2 (2)代码 2 1.24进制: 2 2. 60进制: 3 3.动态显示: 4 4. 分频器: 5 5. 二路选择器: 6 6.整点报时: 7 7.闹钟设置: 8 8.alarmcmp: 9 9.消抖: 9 Ⅴ.心得体会 10 Ⅰ.设计目标 设计一个拥有:正常时分秒计数功效,实现校时校分清零功效,利用扬声器实现整点报时和闹钟功效多功效数字钟。 Ⅱ.设计内容 整个系统分成七个模块进行:计时模块、校时模块、整点报时模块、分频模块、动态扫描模块,动态显示模块、闹钟模块。 l、能进行正常时、分、秒计时功效,分别由6个数码显示二十四小时、60分钟计数器显示。 2、能利用试验系统上按钮实现“校时”、“校分”功效; 3、能利用扬声器做整点报时: 4、定时闹钟功效 5、用层次化设计方法设计该电路,用硬件描述语言编写各个功效模块。 6、报时功效。报时功效用功效仿真仿真验证,可经过观察相关波形确定电路设计是否正确。 Ⅲ.设计原理 1 计时模块:使用一个二十四进制和两个六十进制计数器级联,组成数字钟基础框架。二十四进制用于计时,六十进制用于计分和计秒。给秒计数器一个1hz时钟脉冲,分计数器以秒计数器进位作为计数脉冲,时计数器以分计数器进位作为计数脉冲。 2 校时模块:分别按下校时键和校分键,计数器增至所需时分数,按下清零键,秒计数器归零。 此处注意事项:①按键“抖动”消除。利用触发器,如D触发器,利用D触发器边缘触发特征,在除去时钟边缘来之前一瞬间之外绝大部分时间全部不能接收输入,从而实现“消抖”。②校分时,分计数器计数不应对小时位产生影响,所以需要屏蔽此时分计数器进位信号。③需要设计二路选择器对于正常计数和校时进行选择。 3 整点报时模块:计时到59分50秒,每两秒一次低音报时,整点进行高音报时,将报时信号接到试验板上扬声器输出。、 4 分频模块:经过不一样进制计数将1khz时钟脉冲分频出不一样频率时钟脉冲,以实现系统对多频率时钟信号需求。 5 动态显示模块:利用6个数码管,将时分秒根据高低位输出到数码管上。其中扫描频率超出人眼视觉暂留频率就能够实现六个管同时显示视觉效果。 6 闹钟模块:需要新计数器进行定时闹钟信号存放,和正常计时状态实现切换,设计一个比较模块使闹钟和计时相等时,开始鸣叫,同时需要一个按键能够控制闹钟开关。 Ⅳ.具体实现 (1)顶层图 图一:顶层图 (2)代码 1.24进制: 时计数器:模块图图。24进制无进位计数器,当计数信号计到23后再检测到计数信号时会自动归零。带清零,clk输入为分秒进位相和结果。qh为十位,ql为个位。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity cnt24 is port(clk:in std_logic; qh,ql:out std_logic_vector(3 downto 0); tc:out std_logic); end cnt24; architecture one of cnt24 is begin process(clk) variable iql,iqh:std_logic_vector(3 downto 0):="0000"; begin if clk'event and clk='1' then iql:=iql+1; if iql="1010" then iqh:=iqh+1; iql:="0000"; end if; if (iqh="0010")and(iql="0100") then iqh:="0000"; iql:="0000"; end if; end if; ql<=iql; qh<=iqh; end process; end one; 2. 60进制: 秒计数器模块设计:六十进制带进位计数器,可清零,clk输入信号为1Hz脉冲,当ql计满9后qh增加1,当ql满9且qh记满5,ql、qh同时归零,co输出为高电平。qh为十位ql为个位。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity cnt60 is port(clk,clr:in std_logic; ql,qh:buffer std_logic_vector(3 downto 0); tc:out std_logic ); end cnt60; architecture behavor of cnt60 is begin tc<='0' when(clk='1' and ql="0000" and qh="0110") else '1'; process(clk,clr,ql,qh) variable iql,iqh:std_logic_vector(3 downto 0); begin if(clr='0'or (iql="0000" and iqh="0110"))then iql:="0000"; iqh:="0000"; else if(clk'event and clk='1')then iql:=iql+1; if(iql="1010")then iql:="0000"; iqh:=qh+1; end if; end if; end if; ql<=iql;qh<=iqh; end process; END behavor; 分计数器同上。注:不一样之处为分clk输入信号为秒进位信号。 3.动态显示: LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY dtsm is port( clk:in std_logic; h:in std_logic_vector(7 downto 0); m:in std_logic_vector(7 downto 0); s:in std_logic_vector(7 downto 0); seg7out:out std_logic_vector(6 downto 0); sel:buffer std_logic_vector(2 downto 0) ); END dtsm; ARCHITECTURE beha of dtsm is signal key:std_logic_vector(3 downto 0); BEGIN PROCESS(clk) variable dount:std_logic_vector(2 downto 0):="000"; BEGIN IF(rising_edge(clk))then IF dount="111" then dount:="000"; ELSE dount:=dount+1; END IF; END IF; sel<=dount; end process; PROCESS(sel) BEGIN CASE sel IS when "000"=>key<=h(7 downto 4); when "001"=>key<=h(3 downto 0); when "010"=>key<="1010"; when "011"=>key<=m(7 downto 4); when "100"=>key<=m(3 downto 0); when "101"=>key<="1010"; when "110"=>key<=s(7 downto 4); when "111"=>key<=s(3 downto 0); when others=>null; END CASE; END PROCESS; PROCESS (key) BEGIN case key is when"0000"=>seg7out<="0111111"; when"0001"=>seg7out<="0000110"; when"0010"=>seg7out<="1011011"; when"0011"=>seg7out<="1001111"; when"0100"=>seg7out<="1100110"; when"0101"=>seg7out<="1101101"; when"0110"=>seg7out<="1111101"; when"0111"=>seg7out<="0000111"; when"1000"=>seg7out<="1111111"; when"1001"=>seg7out<="1101111"; when"1010"=>seg7out<="1000000"; when others=>null; END CASE; END PROCESS; END beha; 4. 分频器: 模块图图。由四个分频器组成,输入信号in_clk为1024Hz脉冲信号。把输入1024Hz信号分频为四个脉冲信号,即1Hz秒脉冲,4Hz校时、校分脉冲,64Hz消抖脉冲,和512Hz蜂鸣器低音输入。 : LIBRARY IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY freq_divider IS PORT(clk : IN STD_LOGIC; hz1 : OUT STD_LOGIC; hz4 : OUT STD_LOGIC; hz64 : OUT STD_LOGIC; hz512 : OUT STD_LOGIC); END freq_divider; ARCHITECTURE rtl OF freq_divider IS SIGNAL count : STD_LOGIC_VECTOR(9 DOWNTO 0); BEGIN PROCESS(clk) BEGIN IF (clk'event and clk='1') THEN IF(count="") THEN Count <= (OTHERS =>'0'); ELSE Count <= count +1; END IF ; END IF ; END PROCESS; hz512 <= count(0); hz64 <= count(3); hz4 <= count(7); hz1 <= count(9); END rtl; 5. 二路选择器: 模块图图。用以进行正常计时和校时/分选择。alarm为经过消抖校时/分信号。当按键未曾按下时,即校时/分信号没有到来时,二选一选择器会选择输出a(正常计时输入)信号,不然当alarm按键按下时输出y为校时/分输入信号——4Hz。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity sel2 is port(sel:in std_logic; ip: in std_logic; a,b:out std_logic); end sel2; architecture beh of sel2 is begin process(sel) begin if(sel='0')then a<=ip; else b<=ip; end if; end process; end beh; 6.整点报时: 整点报时及闹时:模块图图在59分52秒、54秒、56秒、58秒给扬声器赋以低音512Hz信号,在00分00秒给扬声器赋以高音1024Hz信号,当系统时间和闹铃时间相同时给扬声器赋以高音1024Hz信号。闹时时间为一分钟。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity zdbs is port(mh,ml,sh,sl:in std_logic_vector(3 downto 0); sig500,sig1k: out std_logic ); end zdbs; architecture behavior of zdbs is begin sig500<='1' when mh="0101"and ml="1001"and sh="0101" and( sl="0000"or sl="0010" or sl="0100"or sl="0110"or sl="1000") else '0'; sig1k<='1' when mh="0000"and ml="0000"and sh="0000"and sl="0000" else '0'; end behavior; 7.闹钟设置: 闹钟时间设定:模块图图。由开关K1选择闹钟和时间。由S1、S2脉冲键调整时、分。 library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity alarmset is port(sel:in std_logic; hclo,mclo,sclo,halr,malr,salr: in std_logic_vector(7 downto 0); h,s,m:out std_logic_vector(7 downto 0)); end alarmset; architecture beh of alarmset is begin process(sel) begin if(sel='0')then h<=hclo; m<=mclo; s<=sclo; else h<=halr; m<=malr; s<="00000000"; end if; end process; end beh; 8.alarmcmp: library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; entity alarmcmp is port( h,m,halr,malr: in std_logic_vector(7 downto 0); stop:in std_logic; sig:out std_logic); end alarmcmp; architecture beh of alarmcmp is begin process(h,m,halr,malr,stop) begin if stop='0'then sig<='0'; end if; if h=halr and m=malr and stop='1' then sig<='1'; else sig<='0'; end if; end process; end beh; 9.消抖: 模块图图。分频出用64Hz信号对s1校时信号、s2校分信号、s3秒清零信号、s4秒清分。是由四个两级d触发器组成,分别对输入sa、sb、sc信号相邻两个上升沿进行比较以确定按键按下,从而达成消抖目标。 Ⅴ.心得体会 经过此次课程设计,使我愈加扎实掌握了相关数字逻辑方面知识,在设计过程中碰到了部分问题,比如在画顶层原理图时,最大问题就是根本没有把各个模块VHD文件和生成器件全部全部放在顶层文件文件夹内,还有就是程序设计时候考虑不够全方面,没有联络着各个模式和试验板情况来编写程序,以至于多考虑编写了译码电路而浪费了很多时间。暴露除了我在这方面知识有所欠缺和经验不足,实践出真知,经过亲自动手制作,使我们掌握知识不再是纸上谈兵。 课程设计诚然是一门专业课,给我很多专业知识和专业技能上提升,同时也给我很多新想法,部分在课上学习不到思绪,让我感慨颇深。经过这次课程设计,我掌握了相关数字钟方面相关知识,能够独立设计一个数字钟,而且了解了它原理。思绪即出路,有什么不懂地方要立即弄懂,世上无难事,只怕有心人。只要认真专研,动手实践,就没有弄不懂知识。- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 江苏 大学 数字 逻辑 专业 课程设计 时钟
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【天****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【天****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文