可控计数器的设计_第1页
可控计数器的设计_第2页
可控计数器的设计_第3页
可控计数器的设计_第4页
可控计数器的设计_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

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

文档简介

1、可编程器件课程设计报告课题: 可控计数器的设计 班级 学号 学生姓名 专业 电子科学与技术 系别 电子信息工程系 指导老师 淮阴工学院电子与电气工程学院2014年11月可控计数器的设计一、设计目的可编程器件课程设计是一项重要的实践性教育环节,是学生在校期间必须接受的一项工程训练。在课程设计过程中,在教师指导下,运用工程的方法,通过一个简单课题的设计练习,可是学生通过综合的系统设计,熟悉应用系统的是设计过程、设计要求、完成的工作内容和具体的设计方法,了解必须提交的各项工程文件,也达到巩固、充实和综合运用所学知识解决实际问题的目的。通过课程设计,应能加强学生如下能力的培养:(1) 独立工作能力和创

2、造力;(2) 综合运用专业及基础知识,解决实际工程技术问题的能力;(3) 查阅图书资料、产品手册和各种工具书的能力;(4) 工程绘图的能力;(5) 编写技术报告和编制技术资料的能力。二、设计要求1 1、设计一个五进制的计数器,由两个控制键SEL控制不同的计数方式2 2、当SEL=00时,按0、1、2、3、4、0、1、2,3、4···顺序计数3 3、当SEL=01时,按0、2、4、6、8、0、2、4、6、8···顺序计数 4 4、当SEL=10时,按1、3、5、7、9、1、3、5、7、9···顺序计数5 5

3、、当SEL=11时,按5、4、3、2、1、5、4、3、2、1···顺序计数6 6、由数码管分别译码显示控制信号和计数状态,分别用3 位数码管动态显示7 7、给出VHDL语言的源程序3、 一般设计要求(1) 独立完成设计任务;(2) 绘制系统硬件总框图;(3) 绘制系统原理电路图;(4) 制定编写设计方案,编制软件框图,完成详细完整的程序清单和注释;(5) 制定编写调试方案,编写用户操作使用说明书;(6) 写出设计工作小结。对在完成以上文件过程所进行的有关步骤如设计思想、指标论证、方案确定、参数计算、元器件选择、原理分析等作出说明,并对所完成得设计作出评价,对自己整

4、个设计工作中经验教训,总结收获和今后研修方向。四、设计的具体实现1、实验原理计数器是一种多功能的电子测量仪器。它利用电子学的方法测出一定时间内输入的脉冲数目,并将结果以数字形式显示出来。可控五进制计数器是每五个脉冲信号向前进一位,且当控制端不同时,产生的进位输出不同。再利用数码管显示相应的数值。首先利用进程p1来实现4种模式的计数功能,由信号sel来控制选择具体是哪种模式;再利用进程p2来扫描3个数码管,而其中1个用来显示计数值,2个用来显示控制信号的值;最后通过进程p3来对数码管进行驱动译码,将相应的五进制数值利用数码管体现出来。图1.实验原理图2、模拟框图计数器模块 扫描模块数码管 clk

5、 cnt selysmx clk duan图2.模拟结构框图3、可控计数器设计流程由sel来控制4种模式的计数功能模块扫描3数码管模块对数码管进行驱动译码模块五进制可控计数器 图3.设计流程4、各个模块(1) 计数器单元模块CLK Y3···0SEL1··0 SHENGHAO图4.计数器单元模块CLK是计时时钟,也是扫描时钟,SEL计数模式控制信号,Y接收cnt的计数值。它利用电子学的方法测出一定时间内输入的脉冲数目,并将结果以数字形式显示出来。可控五进制计数器是每五个脉冲信号向前进一位,且当控制端不同时,产生的进位输出不同。(2) 扫描单元C

6、LKCLK DUAN5··0SEL1··0 SHEJI3 图5.扫描单元模块CLK是计时时钟,也是扫描时钟,SEL计数模式控制信号,DUAN代表3个数码管。利用扫描脉冲扫描3个数码管,而其中1个用来显示计数值,2个用来显示控制信号的值。(3) 数码管译码 SHEJI3CLK SM6··0CLK DUAN5··0SEL图6.数码管译码模块CLK是计时时钟,也是扫描时钟,SEL计数模式控制信号,DUAN代表3个数码管,SM是数码管的七段是数码管数字七段,它主要用来对数码管进行驱动译码,将相应的五进制数值利用数码管体现出

7、来。5、管脚分配五、系统的源程序(VHDL)1. 计数环节library ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity LQ is port(clk,ck:in std_logic;-clk是计数时钟,ck是扫描时钟 sel:in std_logic_vector(1 downto 0);-计数模式控制信号 sm:out std_logic_vector(6 downto 0);-数码管的七段 duan:out std_logic_vector(2 downto 0);-3个数码管 end

8、LQ; architecture art of LQ is signal cnt:std_logic_vector(3 downto 0);-信号cnt用来计数 signal temp:integer range 0 to 2;signal x: std_logic_vector(3 downto 0);-数码管动态显示的值 signal y: std_logic_vector(3 downto 0);-接收cnt的计数值 begin p1:process(clk)-进程p1主要用来实现4种模式的计数功能,由信号sel来控制选择具体是哪种模式 begin if(clk'event an

9、d clk='1')then case sel is when "00"=>if(cnt>="0100")then cnt<="0000" else cnt<=cnt+1; end if; when "01"=>if(cnt>="1000" or cnt="0001" or cnt="0011" or cnt="0101" or cnt="0111")then cn

10、t<="0000" else cnt<=cnt+2; end if; when "10"=>if(cnt>="1001" or cnt="0000" or cnt="0010" or cnt="0100" or cnt="0110" or cnt="1000")then cnt<="0001" else cnt<=cnt+2; end if; When "11"

11、=>if(cnt>"0101" or cnt="0001" or cnt="0000")then cnt<="0101" else cnt<=cnt-1; end if; when others=>cnt<="1111"end case; y<=cnt; end if; end process p1; 2. 扫描单元p2:process(clk) -进程p2主要用来扫描3个数码管,其中1个用来显示计数值,2个用来显示控制信号的值begin if(clk&

12、#39;event and clk='1') then case temp is when 0=>duan<="001" case sel iswhen"00"=>x<=(4-y); when"01"=>x<=(8-y); when"10"=>x<=(10-y); when"11"=>x<=(6-y);end case; when others=>duan<="010"or"10

13、0" x<="00"&sel; end case; temp<=temp+1; end if; end process p2;3. 数码管译码部分p3:process(x) -进程p3主要用来对数码管进行驱动译码 begin case x is when "0000"=>sm<="1111110" when "0001"=>sm<="0110000" when "0010"=>sm<="1101101

14、" when "0011"=>sm<="1111001" when "0100"=>sm<="0110011" when "0101"=>sm<="1011011" when "0110"=>sm<="1011111" when "0111"=>sm<="1110000" when "1000"=>sm

15、<="1111111" when "1001"=>sm<="1111011" when others=>sm<="0000000" end case; end process p3; end art;六、程序的调试分析与仿真1、SEL=002、SEL=013、SEL=104、SEL=11七、总结为期两周的课程设计结束了,从程序的编写,到编译调试和仿真,最后得出实验结果,在这一过程中,我学到了许多,可以说是收获颇丰。首先,我便发现我学习中的一大陋习,那就是基础知识不够牢固,而原因就是我上课的时候不太认真听

温馨提示

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

评论

0/150

提交评论