频率计程序设计及仿真_第1页
频率计程序设计及仿真_第2页
频率计程序设计及仿真_第3页
频率计程序设计及仿真_第4页
频率计程序设计及仿真_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

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

文档简介

1、武汉理工大学FPGA课程设计说明书课程设计任务书学生姓名: 龙威 专业班级: 通信1103 指导教师: 陈适 工作单位: 信息工程学院 题 目: 频率计程序设计与仿真 课程设计要求1采用测频法2设计一个4位十进制数字显示的数字频率计3其测量范围为1-9999kHz指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目录1.概述32.数字频率计原理与框图43.数字频率计的设计53.1 放大整形电路53.2 时基电路63.3 逻辑控制电路73.4 计数、锁存、译码显示电路的设计84.Proteus仿真115.心得体会156.参考文献16附录一 数字频率计总图17附录二 元件清单18附录

2、三 仿真图19附录四 程序21摘要在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案测量结果都有十分密切的关系,因此频率的测量就显得更为重要。测量频率的方法有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。电子计数器测频有两种方式:一是直接测频法,即在一定闸门时间内测量被测信号的脉冲个数;二是间接测频法,如周期测频法。直接测频法适用于高频信号的频率测量,间接测频法适用于低频信号的频率测量。本文阐述了用数字电路设计了一个简单的数字频率计的过程。频率测量中直接测量的数字频率计主要由四个部分构成:时基(T)电路、输

3、入电路、计数显示电路以及控制电路。在一个测量周期过程中,被测周期信号在输入电路中经过放大、整形、微分操作之后形成方波信号,加到与非门的另一个输入端上.该与非门起到主阀门的作用,在与非门第二个人输入端上加阀门控制信号,控制信号为低电平时阀门关闭,无信号进入计数器;控制信号为高电频时,阀门开启整形后的信号进入计数器,若阀门控制信号取1s,则在阀门时间1s内计数器得到的脉冲数N就是被测信号的频率。频率计能够快速准确的捕捉到被测信号频率的变化,因此,频率计拥有非常广泛的应用范围。在传统的生产制造企业中,在计量实验室中,在无线通讯测试中都需要用到频率计。本频率计是由ne555产生时基信号,控制闸门与非门

4、的导通,计数器74ls90计数,单稳态触发器74ls123触发锁存数据,七段共阴数码管显示频率。该设计方案简单、实用、经济,能够测量010KHz幅度为0.25V的方波信号的频率,且精度为1Hz。关键字:频率计、计数器、锁存器、脉冲形成电路1.概述 数字频率计是通过一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常是计算每秒内的脉冲个数,也就是我们所称的闸门时间为1秒。闸门时间不定,但闸门时间影响频率计的准确度,闸门时间越长,得到的频率值就越准确,但闸门时间越长则没测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。数字频率计是用数字显示被测信号

5、频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。如配以适当的传感器,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。因此,数字频率计是一种应用很广泛的仪器。本次课程设计中画图与仿真主要用到了Proteus软件,Proteus是一款电路分析实物仿真系统,可仿真各种电路和IC,元件库齐全,有各种虚拟仪器,如示波器、逻辑分析仪、信号发生器。具有模拟电路仿真、数字电路仿真、单片机及其外围电路组成的系统的仿真,使用和操作起来非常方便。2.数字频率计原理与框图所谓频率,就是周期性信号在单位时间内变化的次数若在一定时间间隔t内测得这个周期性信号的重复变化次数为

6、n,则其频率可表示为 若在闸门时间1S内计数器计得的脉冲个数为n,则被测信号频率等于nHz。数字频率计是用数字显示被测信号频率的仪器,被测信号可以是正弦波,方波或其它周期性变化的信号。它一般由放大整形电路、时基电路、逻辑控制电路、闸门电路、计数器、锁存器、译码器、显示器等几部分组成。其基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。计数信号并与锁存信号和清零复位信号共同控制计数、锁存和清零三个状态,然后通过数码显示器件进行显示。译码显示器锁存器计数器逻辑控制电路闸门电路时基电路放大整形电路图2-1 数字

7、频率计整体框图3.数字频率计的设计3.1 放大整形电路放大整形电路由晶体管 放大器与74LS00等组成,放大器将输入频率为的周期信号如正弦波、三角波等进行放大。与非门74LS00构成施密特触发器,它对放大器的输出信号进行整形,使之成为矩形脉冲。以便进行测量。其中由端输入未知频率的波,74LS00组成的施密特触发器将从晶体管放大器放大的信号进行整形变换,得到需要的方波。电路图如图3-1所示。图3-1 放大整形电路3.2 时基电路时基电路的作用是产生一个标准时间信号,高电平持续时间是1s,由定时器555构成的多谐震荡器产生,当标准时间的精度要求较高时,应通过晶体震荡器分频获得。若震荡器的频率,其中

8、。由公式和,可计算出电阻R1、R2及电容C的值。若取电容C=10uF,则kk所以取为36 k,为107 k。时基电路图如图3-2所示。图3-2 时基电路3.3 逻辑控制电路在时基信号结束时产生的负跳变用来产生锁存信号,锁存信号的负跳变又用来产生清“0”信号。脉冲信号可由两个单稳态触发器74LSl23产生,它们的脉冲宽度由电路的时间常数决定。 设锁存信号和清“0”信号的脉冲宽度相同,如果要求tw=0.02s ,则有tw=0.45Rx/Cx=0.02s,若取Rx=10k,则Cx=tw/0.45Rx=4.4uf,取标称值4.7uf,由74LSl23的功能表可得,当, 触发脉冲从 1A端输入时,在触发

9、脉冲的负跳变作用下,输出端1Q可获得一正脉冲端,一非Q端可获得一负脉冲,其波形关系正好满足要求。逻辑控制电路图如图3-3所示。:图3-3 逻辑控制电路逻辑控制电路中用的芯片是74LS123,74LS123是常用的可重触发单稳态触发器。3.4 计数、锁存、译码显示电路的设计这部分电路是频率计内作重要的电路部分,由计数器、锁存器、译码器、显示器和单稳态触发器组成。其中计数器按十进制计数,由2个异步十进制计数器74ls90构成,一次从个位开始计数,向上位发出进位信号进而使高位开始计数。计数输出如果电路中不接锁存器,则显示器上的显示数字就会随计数器的状态不停地变化,要使计数器停止计数时,显示器上的数字

10、显示能稳定,就必须在计数器后接入锁存器。锁存器的工作是受单稳态触发器控制的。门控信号的下降沿使单稳态触发器1进入暂稳态,单稳1的上升沿作为锁存器的时钟脉冲。为了使计数器稳定、准确的计数,在门控信号结束后,锁存器将计数结果锁存。单稳1的暂态脉冲的下降沿使单稳2进入暂态,利用2的暂态对计数器清零,清零后的计数器又等待下一个门控信号到来重新计数。锁存器的作用是将计数器在1s结束时所得的数进行锁存,使显示器稳定地显示此时计数器的值。1s计数时间结束时,逻辑控制电路发出锁存信号,将此时计数器的值送至数码显示器。选用锁存器74LS273可以完成上述功能。当时钟脉冲CP的正跳变来到时,锁存器的输出等于输入,

11、即Q=D,从而将计数器的输出值送到锁存器的输出端。正脉冲结束后,无论D为何值,输出端Q的状态仍保持原来的状态不变。所以在计数期间内,计数器的输出不会送到译码显示器。锁存器在一个有效脉冲到来后将计数器输出信号锁存,并输出到数码管译码器,4片译码器用74LS48实现。电路图如图3-4所示。图3-4 计数、锁存、译码电路表3-6 7490功能表复位输入输出R1 R2 S1 S2QD QC QB QAH H LH H L H HX LLL LL L L LL L L LL L L LH L L H计 数计 数计 数计 数图3-5 数字频率计电路图4.Proteus仿真 绘制好电路图后,进行仿真运行,首

12、先调节输入波的频率,如图4-1所示。设置为50Hz,点击OK后对电路进行仿真,数码显像管的显示值为50,如图4-2所示。图4-1 频率设置窗口图4-2 仿真结果 再改变输入波的频率,如图4-3所示,设置为1000HZ。进行仿真结果为993HZ,如图4-4所示。误差在允许的范围内。图4-3 频率设置窗口图4-4 仿真结果该仿真结果表明:上述电路符合实验任务要求,且精确度较高.能够准确的测量。5.心得体会回顾起此次课程设计,至今我仍感慨颇多,的确,从选题到定稿,从理论到实践,在短短的两个星期的日子里,有苦有甜。同时也学到很多很多新的东西,虽然时间有限但是自己很多方面都有了提升,如动手能力和解决问题

13、的能力。 课程设计刚开始拿到题目时,对于理论知识学习不够扎实的我深深感到了自己的不足,便重新看了教材,对知识进行了梳理,掌握了基本理论知识。这样对平时学习的不足和缺陷就有所弥补。遇到过各种各样的问题,没有扎实的理论知识是无法解决的。只有把所学的理论知识与实践相结合起来,从理论中得出结论,通过实际动手去验证理论,在这二者的配合下,我们不仅可以成功的完成课程设计,而且还可以掌握和巩固所学知识,充实自己的知识储备。同时也可以使自己的实际动手能力和独立思考的能力在一定程度上得到提升,使自己能更好的适应社会的要求。通过本次课程设计,我在发现问题、分析问题和解决问题的能力得到了提升。培养了我的设计思维,提

14、高了我们的逻辑思维能力,使我们在逻辑电路的分析与设计上有了很大的进步。同时也让我在面对问题的时候不在像以前那样惊慌失措,而是慢慢分析问题,逐步去解决问题,实现各个击破。培养我们独立思考的能力,和逻辑的分析能力.例如设计前必须胸有轮廓,首先该了解频率计数器的基本原理,各单元组成.进而理解各电路单元的组成结构,如何运用已知的器件实现某个条件,达到目的.总之,通过本次课程设计,我收获颇丰,一方面使自己各方面能力在一定程度上得到提升,另一方面是自己切身体会到数字电子技术的实用性和有效性,增加了自己对数电学习和电子制作的兴趣。同时在让我体会到了设计的艰辛的同时,更让我体会到成功的喜悦和快乐。6.参考文献

15、1谢自美编.电子线路设计.华中科技大学出版社,20032康华光编.电子技术基础数字部分(第五版).华中科技大学出版社,20063李响初编.数字电路基础与应用.机械工业出版社,20084刘洪涛编.电子制作实用教程.电子科技大学出版社,20015朱清慧编.电子线路设计.清华大学出版社,20086周跃庆编.数字电子技术基础教程.天津大学出版社,20067傅劲松编.电子制作实例集锦.福建科学技术出版社,20068沈小丰编.数字线路实验-数字电路实验.清华大学出版社,2007附录一 数字频率计总图附录二 元件清单174LS1232片25551片374LS484片474LS904片574LS2732片67

16、4LS921片774LS002片8数码显示器4只93DG1001只10电阻 电容若干附录三 仿真图 1频率计仿真全图2频率计仿真开始计数部分3频率计仿真结束结束,动态显示部分附录四 程序library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity plj is port ( start:in std_logic; -复位信号 clk :in std_logic; -系统时钟 clk1:in std_logic; -被测信号 yy1:out std_logic_vector(7 downto 0);

17、 -八段码 w1 :out std_logic_vector(3 downto 0); -数码管位选信号end plj;architecture behav of PLj issignal b1,b2,b3,b4,b5,b6,b7:std_logic_vector(3 downto 0); -十进制计数器signal bcd:std_logic_vector(3 downto 0); -BCD码寄存器signal q :integer range 0 to 49999999; -秒分频系数 signal qq : integer range 0 to 499999; -动态扫描分频系数sign

18、al en,bclk:std_logic; -使能信号,有效被测信号signal sss : std_logic_vector(3 downto 0); -小数点signal bcd0,bcd1,bcd2,bcd3 : std_logic_vector(3 downto 0); -寄存7位十位计数器中有效的高4位数据beginsecond:process(clk) -此进程产生一个持续时间为一秒的的闸门信号 begin if start=1 then q=0; elsif clkevent and clk=1 then if q49999999 then q=q+1; else q=49999

19、999; end if; end if; if q49999999 and start=0 then en=1; else en=0; end if;end process;and2:process(en,clk1) -此进程得到7位十进制计数器的计数脉冲begin bclk=clk1 and en;end process; com:process(start,bclk) -此进程完成对被测信号计脉冲数begin if start=1 then -复位b1=0000;b2=0000;b3=0000;b4=0000;b5=0000;b6=0000;b7=0000; elsif bclkevent

20、 and bclk=1 then if b1=1001 then b1=0000; -此IF语句完成个位十进制计数 if b2=1001 then b2=0000; -此IF语句完成百位十进制计数 if b3=1001 then b3=0000; -此IF语句完成千位十进制计数 if b4=1001 then b4=0000; -此IF语句完成万位十进制计数 if b5=1001 THEN b5=0000; -此IF语句完成十万位十进制计数 if b6=1001 then b6=0000; -此IF语句完成百万位十进制计数 if b7=1001 then b7=0000; -此IF语句完成千万

21、位十进制计数 else b7=b7+1; end if; else b6=b6+1; end if; else b5=b5+1; end if; else b4=b4+1; end if; else b3=b3+1; end if; else b2=b2+1; end if; else b10000 then bcd3=b7; bcd2=b6; bcd1=b5; bcd0=b4; sss0000 then bcd3=b6; bcd2=b5; bcd1=b4; bcd0=b3; sss0000 then bcd3=b5; bcd2=b4; bcd1=b3; bcd0=b2; sss=1011; else bcd3=b4; bcd2=b3; bcd1=b2; bcd0=b1; sss=111

温馨提示

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

评论

0/150

提交评论