版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、数字秒表设计控制科学与工程学院自动化0803电子设计自动化大作业数字秒表设计控制科学与工程学院自动化0803题目学院班级姓名学号OO一一年五月十二日题目:数字秒表的设计题目:数字秒表的设计一、设计要求:数字秒表的计时精度是10ms;复位开关可以在任何情况下使用,计时在计时过程中,只要按一下复位开关,计时器就清零,并做好下次计时的准备;具有启/停开关,即按一下启/停开关,启动计时器开始计时,再按一下启/停开关则停止计时。数字秒表的计时范围是0秒59分59.99秒,显示的最长时间为59分59秒、总体设计:1、总体结构图2、各模块功能SEL模块:将扫描信号输给选择(CHOICE)模块选择模块:按扫描
2、信号的指定选择输出3-8译码模块:通过SEL给的信号来控制8位数码管位的亮灭计时模块:分别对毫秒,秒,分计时显示模块:通过CHOICE模块的输出信号来控制三、单元模块设计1、模块名:sel模块设计sei!relks-elout2.0inst5i(D模块功能:CLK为扫描时钟脉冲,SELOUT端不停的发出扫描到的信号端口定义:CLK为信号输入端SELOUT2.0为选择到的信号输出VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entityselisport(clk:instd_logic;s
3、elout:outstd_logic_vector(2downto0);endsel;architectureoneofselissignalcount:std_logic_vector(2downto0);beginprocess(clk)beginifclkeventandclk=1thenif(count二101)thencount二000;elsecount二count+1;endif;endif;endprocess;selout二count;endone;(4)仿真结果2、模块名:选择模块设计CHOICEdata丄2dat.a23.00chout3.CdA+.A330data43C
4、HOICEdata丄2dat.a23.00chout3.CdA+.A330data430da+.a53.0djit.aG3.0y.6III11(1)模块功能:按扫描信号的指定选择输出(2)端口定乂:a,b,c为控制信号;datal3.O,data23.O,data33.O,data43.O,data53.O,data63.O分别是毫秒的低位,毫秒的高位,秒的低位,秒的高位,分的低位,分的高位的数据值;ch_out3.0为选择输出端。(3)VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;en
5、titychoiceisport(a,b,c:instd_logic;datal,data2,data3,data4,data5,data6:instd_logic_vector(3downto0);ch_out:outstd_logic_vector(3downto0);endchoice;architecturebehaveofchoiceissignalch:std_logic_vector(2downto0);beginch(2)=c;ch(1)=b;ch(0)ch_out二datai;when001=ch_out二data2;when010=ch_out二data3;when011=
6、ch_outch_outch_outnull;endcase;endprocess;endbehave;(4)仿真结果imid宜9“-ai”UQm.3*5iUlibwramale1HID*XDllTH.I.XXnoXinIXwiXausXrai.pnioHDIXIcaa5fphiXoctiItncriInmJfrenQU.UJJDK!IK4LQW.-iZjroiiK4Ljm?)Mu.-iHIHOtOO0m怎taoi说明:abc的值递增,ch_out选择输出data1,data2,data3,data4,data5,data6的值,证明模块是正确的3、模块名:3-8译码模块设计1SEL2.OQ7
7、.O1iinstGr-i-:模块功能:通过SEL给的信号来控制8位数码管位的亮灭。端口定义:输入端SEL2.O值大小来选择输出Q的值输出端Q7.O来控制灯哪位亮VHDL源程序LIBRARYieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;ENTITYdecode3_8ISPORT(SEL:INstd_logic_vector(2downto0);Q:OUTstd_logic_vector(7downto0);ENDdecode3_8;ARCHITECTUREaOFdecode3_8ISBEGINQUD50.p%EiXL
8、pke70.D91Dis40DICQ0m:I:1H0IMLH弱:;血KU鏗Hi血KU鏗HiOEILLlilR:MJ5Nl.Cffl(IlxJCOxJO.xJJII11LT(MxNX1mimi;1111口囂】JLLIIJM】IJLUlIL】HLLUIIL1口山和儿J/lJHL获LLIHLlIHLI.U:1IMLIlILqIJJLLLi:!工LUlftlLL说明:Sel的值递增,Q的相应位会亮,证明模块是正确的。41模块名:毫秒计时模块设计模块功能:对毫秒位的计数端口定乂:elk为信号时钟输入端reset为复位端pause为暂停端co为进位信号输出端qh:毫秒信号的高位输出端ql:毫秒信号的低位输
9、出端VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitym100isport(clk:instd_logic;reset:instd_logic;pause:instd_logic;co:outstd_logic;qh:bufferstd_logic_vector(3downto0);ql:bufferstd_logic_vector(3downto0);endm100;architecturebehaveofm100isbeginco=1when(qh=1001andql=100
10、1)else0;process(clk,reset,pause)beginif(reset=0)thenqh=0000;ql=0000;elsif(pause=0)thenqh=qh;ql=ql;elsif(clkeventandclk=1)thenif(ql=1001)thenql=0000;if(qh=1001)thenqh=0000;elseqh=qh+1;endif;elseql=ql+1;endif;endif;endprocess;endbehave;说明:毫秒为100进制,高位和地位都是10进制,高位到10会有进位,可以证明模块的正确性4.2模块名:秒计时模块设计模块功能:对毫秒
11、位的计数端口定乂:elk为信号时钟输入端reset为复位端pause为暂停端co为进位信号输出端qh:毫秒信号的高位输出端ql:毫秒信号的低位输出端(3)VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitym60_secisport(reset:instd_logic;pause:instd_logic;ci:instd_logic;co:outstd_logic;qh:bufferstd_logic_vector(3downto0);ql:bufferstd_logic_vect
12、or(3downto0);endm60_sec;architecturebehaveofm60_secisbeginco=1when(qh=0101andql=1001andci=1)else0;process(reset,pause,ci)beginif(reset=0)thenqh=0000;ql=0000;elsif(pause=0)thenqh=qh;ql=ql;elsif(cieventandci=1)thenif(ql=1001)thenql=0000;if(qh=0101)thenqh=0000;elseqh=qh+1;endif;elseql=ql+1;endif;endif;
13、endprocess;endbehave;(4)仿真结果4.3模块名:分计时模块设计模块功能:对毫秒位的计数端口定乂:elk为信号时钟输入端reset为复位端pause为暂停端co为进位信号输出端qh:毫秒信号的高位输出端ql:毫秒信号的低位输出端(3)VHDL源程序libraryieee;useieee.std_logic_1164.all;useieee.std_logic_unsigned.all;entitym60_minisport(reset:instd_logic;pause:instd_logic;ci:instd_logic;qh:bufferstd_logic_vector
14、(3downto0);ql:bufferstd_logic_vector(3downto0);endm60_min;architecturebehaveofm60_minisbeginprocess(reset,pause,ci)beginif(reset=0)thenqh=0000;ql=0000;elsif(pause=0)thenqh=qh;ql=ql;elsif(cieventandci=1)thenif(ql=1001)thenql=0000;if(qh=0101)thenqh=0000;elseqh=qh+1;endif;elseqlq_showv=1111110;when0001
15、=q_showv=0110000;when0010=q_showq_showq_showq_showq_showq_showq_showq_shownull;endcase;endprocess;endbehave;(4)仿真结果Jith-roi仙回drI133Jith-roi仙回drI133MQ”勉EldnxI:(xmIhki:Imidkm2aiyurnoin3ioooTimiIiffiicXull10_r1_j1iiipJijBJUlIdDjjLLijOnIiLLiiKiHi.伽LjLOdiXLXidiniLHi劇LijjLLIJ.illXiLIXdHLilXLLijD|.J11:iii1
16、bikit1111阳说明:随着adr的值增加,q_show输出相应的值,数码管相应的段会亮,证明模块是正确的四、数字秒表整体组装1、顶层原理图1.工作情况输入信号经过分频器输给计时模块,计时模块的各位输给选择(CHOICE)模块,选择模块选择输出,再经过转码(BCD_7)模块控制数码管段的亮灭;输入信号的另一路经过分频器给扫描(SEL)模块,SEL的输出信号一方面给CHOICE模块提供提供选择信号,另一方面又给译码器(decode3_8)模块提供译码信号来控制灯位的亮灭。,pause和reset分别控制暂停和复位。2模块间的连接关系:扫描(SEL)模块的输出端接译码(decode3_8)模块和选择(CHOICE)模块,计时模块接选择(CHOICE)模块,选择(CHOICE)模块将选到的信号给转码(BCD_7模块控制数码管段的亮灭2、仿真结果说明:输入信号后,数码管会不停的被扫描,段和位会选择亮,可以证明模块的正确性管脚分配
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025版新能源项目安全风险评估与管理服务合同范本3篇
- 2024年版的摄影摄像服务协议
- 2025版原料药生产废弃物处理与环保设施建设合同2篇
- 2024深圳房地产买卖合同
- 2024年私人买卖自住型住宅定金及物业服务协议3篇
- 2024年虚拟现实内容创作与分成协议
- 2024片石石材加工废弃物资源化利用合作合同3篇
- 2024模具设计外包合同补充协议范本3篇
- 2024年设备购销协议
- 二零二五年度医疗贷款债权转让及健康保障协议3篇
- MOOC 国际商务-暨南大学 中国大学慕课答案
- 商业发票INVOICE模板
- (完整版)食堂管理制度及流程
- 超声波焊接作业指导书(共8页)
- 某医院后备人才梯队建设方案
- 二年级上册英语教案Unit6 Lesson22︱北京课改版
- 桂枝加龙骨牡蛎汤_金匮要略卷上_方剂加减变化汇总
- 电机与电气控制技术PPT课件
- 废弃钻井泥浆和压裂返排液无害化处理研究报告
- 论文-基于单片机的抢答器.doc
- 《AFM简介实验》ppt课件
评论
0/150
提交评论