ImageVerifierCode 换一换
格式:DOCX , 页数:24 ,大小:288.43KB ,
资源ID:12200584      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12200584.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(基于单片机和cpld的等精度频率计.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

基于单片机和cpld的等精度频率计.docx

1、基于单片机和cpld的等精度频率计学号*编号*研究类型应用研究分类号TM935.13*学士学位论文(设计)Bachelors Thesis 论文题目基于单片机和CPLD的等精度频率计作者姓名指导教师所在院系专业名称完成时间湖北师范学院学士学位论文(设计)诚信承诺书中文题目:基于单片机和CPLD的等精度频率计外文题目:Frequency meter for equal precision based on CPLD and MCU学生姓名*学 号*院系专业*班 级0503学 生 承 诺我承诺在毕业论文(设计)活动中遵守学校有关规定,恪守学术规范,本人毕业论文(设计)内容除特别注明和引用外,均为本

2、人观点,不存在剽窃、抄袭他人学术成果,伪造、篡改实验数据的情况。如有违规行为,我愿承担一切责任,接受学校的处理。 学生(签名):2009年5月15日指导教师承诺我承诺在指导学生毕业论文(设计)活动中遵守学校有关规定,恪守学术规范,经过本人核查,该生毕业论文(设计)内容除特别注明和引用外,均为该生本人观点,不存在剽窃、抄袭他人学术成果,伪造、篡改实验数据的现象。 指导教师(签名): 2009年5月15日毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其

3、他人或组织已经发表或公布过的研究成果,也不包含我为获得 及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作 者 签 名: 日 期: 指导教师签名: 日期: 使用授权说明本人完全了解 大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名: 日 期: 学位论文原创性声明本人郑重声明:

4、所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名: 日期: 年 月 日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权 大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作

5、者签名: 日期: 年 月 日导师签名: 日期: 年 月 日基于单片机和CPLD的等精度数字频率计*(*物理与电子科学学院,* * *)摘 要:在现代信号分析和处理领域中,高精度的频率测量具有非常重要的意义。本文详细论述了一种基于CPLD和单片机的等精度数字频率计的设计原理及过程,对CPLD和单片机的有关知识也作了简要介绍。本设计用51单片机作为数据处理和控制的核心,利用可编程逻辑器件ATF1504设计相应的硬件电路,实现高精度的频率测量。关键词:等精度 CPLD 单片机 定时器中图分类号:TM935.13FREQENCY METER FOR EQUAL PRECISI BASFD ON CPL

6、D AND MCU* (*, *, China)Abstract: Frequency measurement is electronic measurement technology. In modern signal analysis and processing areas, high-precision measurement of frequency is very important. In this paper, we detail the design process on the same digital frequency accuracy, and also briefl

7、y introduce CPLD and microcontroller-related knowledge. In the design, we use mini51 board as a development platform, using the programmable logic device ATF1504 to design the hardware circuit.Key words: accuracy, CPLD, microcontroller, timer基于单片机和CPLD的等精度数字频率计1前言由于频率计能够快速准确的捕捉到被测信号频率的变化,频率计拥有非常广泛的应

8、用范围。在传统的生产制造企业中,用户可以通过使用频率计能够迅速的发现有故障的晶振产品,确保产品质量。在计量实验室中,频率计被用来对各种电子测量设备的本地振荡器进行校准。在无线通讯测试中,频率计既可以被用来对无线通讯基站的主时钟进行校准,还可以被用来对无线电台的跳频信号和频率调制信号进行分析。在CMOS电路系列产品中,数字频率计是用量最大、品种很多的产品,是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器,并且与许多电参量的测量方案、测量结果都有十分密切的关系。另外,在生产过程中许多物理量,例如温度、压力、流量、液位、PH值、振动、位移、速度、加速度,乃至各种气体的百分比成分等均用传感

9、器转换成信号频率,然后用数字频率计来测量,这些物理量往往需要相当精确的数据,所以对频率计的精确度和误差稳定度的要求很高。因此,高精度频率计的设计与研究具有很大的现实意义。常用的直接测频方法主要有测频法和测周期法两种。测频法就是在确定的闸门时间内,记录被测信号的变化周期数。测周期法需要有标准信号的频率,在待测信号的一个周期内,记录标准频率的周期数得到待测频率。这两种方法的计数值会产生1个字误差,并且测试精度与计数器中记录的数值有关。为了保证测试精度,一般对于低频信号采用测周期法;对于高频信号采用测频法,因此测试时很不方便,所以人们提出等精度测频方法。等精度测频方法是在直接测频方法的基础上发展起来

10、的。融合以上两种方法的优点,可兼顾低频与高频信号,但较以上两种方法而言,等精度频率测量有较高的测量精度,且误差不会随着被测信号频率的改变而改变。因为它的闸门时间不是固定的值,而是被测信号周期的整数倍,即与被测信号同步,因此,测除了对被测信号计数所产生1个字误差,并且达到了在整个测试频段的等精度测量。2 等精度频率测量原理分析2.1 等精度频率测量原理频率测量一般原理:基准定时器加计数器,关键是如何实现高精度的基准定时与计数器同步控制,常规依靠软件查询判断控制是很难达到精度要求的,必须用硬件逻辑实现。等精度频率测量原理框图如图1所示。图1 等精度频率测量原理框图图中计数器1和计数器2是2个可控的

11、32Bit计数器,EN是它们的计数允许信号端,高电平有效。基准定时器频率信号从计数器1的时钟输入端CLK输入,设其频率为Fb;待测信号经前端放大、限幅和整形后,从计数器2的CLK输入,测量频率为Fx。测量仿真波形图如图2所示。测量开始,t0时刻单片机发出一个清零信号CLR,使2个32 b的计数器和D触发器置0,t1时刻单片机再发出测量启动信号Gate,即使图中D触发器输入置数D为高电平,这时D触发器要一直等到被测信号的上升沿t2时刻,Q端才被置1,使计数器1和计数器2的EN同时为1,将启动计数器计数,系统进入计数允许周期。这时,计数器1和2分别对被测信号和基准频率信号同时计数。当一段时间过后,

12、t3时刻单片机发出停止信号,即D触发器置数D为低电平,但此时2个32 b的计数器仍然没有停止计数,一直等到随后而至的被测信号的上升沿t4时刻到来时,才通过D触发器将这2个计算器同时关闭。图2 测量仿真波形图由图所示的测频时序图可见,Gate的宽度Tc和发生的时间都不会影响计数使能信号,允许计数的周期总是恰好等于待测信号fx的完整周期nTx,这正是确保fx在任何频率条件下都能保持恒定测量精度的关键。因为,此时Gate的宽度Tc改变以及随机的出现时间造成的误差dt最多只有基准时钟fb信号的一个时钟周期,由于fb的信号是由高稳定度的(例如100 MHz)晶体振荡器发出的,所以任何时刻的绝对测量误差只

13、有1/(10的8次方)s,这也是系统产生主要的误差。2.2 等精度频率测量的误差分析设基准时钟信号频率为,待测信号频率的测量值为,实际值为,由于计数的起停时间都是由待测信号的上升沿触发的,在Tpr 时间内对待测信号的计数值无误差;在此时间内基准时钟信号的计数值与实际值最多相差一个脉冲,即|et |1,则下式成立:所以有: 根据相对误差公式有:代入整理得: (1)由上式(1)可以得出以下结论:等精度测频方法测量精度与预置门宽度和基准频率有关,与被测信号的频率无关6;增大预置门宽度Tpr或提高基准信号频率fs,可以增大Ns,减少测量误差,提高测量精度; 3 系统方案3.1 方案提出及比较方案一:单

14、片机单独完成,在单片机内部计数器以及软件共同控制下,在设定时间内,利用单片机内部的两个计数器分别对外部被测信号和内部时钟周期信号进行同步计数,计数的结果暂存于单片机内部。在测量结束后,通过单片机进行计算得到测量结果。方案二:CLPD单独用完成,应用VHDL硬件描述语言,利用CLPD内部丰富的数据类型和层次化的结构模型, 对整个系统进行逻辑设计并用计算机仿真,生成符合要求的、在电路结构上可实现的数字逻辑, 再下载到可编程逻辑器件中, 即可完成设计任务。方案三:单片机与CPLD共同完成,利用CPLD的高速、高可靠性,完成待测信号的测量和基准时钟计数部分,利用单片机灵活的逻辑控制能力和强大的数据处理

15、能力,完成整个系统的控制及数据处理。由等精度测频原理知:若能精确地实现计数, 经过简单的乘除运算, 即可得到待测频率。然而, 在兆赫兹级的计数, 一般的单片机就无能为力了, 而CPLD的时钟频率可达纳秒级, 完全可以实现其计数功能。因此方案一不理想。但是,CPLD内部资源本身就较少,在完成计数的同时,要CPLD完成兆级以上的乘除运算, 需消耗更多的硬件资源, 而单片机在不受运行速度限制时几乎不要增加任何成本,因此方案二也不理想。所以,方案三用CPLD完成计数,用单片机完成控制、运算和显示最为理想。 3.2系统整体方案本系统主要由四部组成:控制部分、计数部分、数据处理部分及显示部分。由于所用CP

16、LD芯片内资源较少,其内部只能设置一个32位计数器,用来测量被测信号个数,另外一个计数器用单片机内部定时器。所以,各个硬件分工情况为:CPLD完成对被测信号的测量计数和总线设计;单片机完成对基准时钟的计数和对整个测量系统的控制,包括对CPLD测量过程的控制、数据的缓存、测量结果数据的处理和LCD1602的驱动;频率为 22.1184MHz 的标准晶振提供系统的基准时钟信号和单片机的时钟电路;LCD1602完成测量结果的显示。系统设计原理图如图3所示。图3 系统设计原理图(1)计数器1使用单片机内部定时器0作为计数器,对基准时钟计数。(2)计数器2为CPLD内部生成的32位计数器,对待测信号计数

17、。(3)基准时钟fo,由单片机晶振提供,频率为22.1184M/12。(4)预置闸门由单片机P0.1输出,P0.0为计数器2的清零信号,高电平有效,P3.2为计数器的使能信号,控制计数器1和计数器2计数的启动与停止。(5)数据处理,扫描显示都由单片机软件程序实现。(6)由LCD1602显示测量结果。系统的测量流程大致如下:首先,单片机发出清零信号,对外部CPLD计数器(即图中计数器2)清零,然后将内部定时器清零(即图中计数器1),配置成外部时钟控制方式,然后发出计数启动信号,当启动信号置1和外部信号上升沿到来时,计数器闸门打开,CPLD内计数器和单片机定时器同时计数,单片机通过查询计数器,判断

18、计数时间,该计数时间必须小于外部32bit计数器溢出时间,时间一到,单片机发出停止计数信号,启动信号关闭,此时当外部信号上升沿到来时,计数器闸门关闭,CPLD内计数器和单片机定时器停止计数。然后,单片机读回外部计数结果和内部计数器计数结果,计算可得到被测信号的频率,送LCD显示。3.3单片机与CPLD连接方案单片机与CPLD之间可以根据需要,采用多种不同的接口方式,这里提出一种总线接口方案,采用三总线(数据、控制、地址)结构,如图4所示,双向数据总线完成数据传输,单向控制总线和地址总线通过CPLD对外围对象控制。图4 单片机与CPLD总线结构的接口原理图单片机P0口为双向数据总线,该P0口同C

19、PLD的通用IO口连接,完成数据和低8位地址传送;控制总线包括单片机读写控制总线Rd和Wr,以及地址锁存信号Ale(Address Lock Enable),地址总线A15(P2.7)。控制总线和地址线通过CPLD的全局输入信号引脚输入,包括全局时钟Globle Clk,全局清零输入Global Clear,全局使能输入Global OE,特定输入Ded.Input。这些全局信号同CPLD里面的每一个单元相连,当用外部的时钟来触发时,用这些信号比用普通管脚速度快,保证信号到每个宏单元的延时相同并且延时最短。这里就经典51系列单片机和ATERAL公司的EPM7064接口为例,设计单片机通过CPL

20、D实现地址锁存,地址译码译码,LCD、ADC0809、DAC0832的接口设计,实现灵活可扩展地址编码。电路如图5所示。图5 单片机扩展图 3.4 单片机定时及数据处理方案51板上没有频率非常高的基准晶振源,我们只好选择单片机时钟晶振做基准源,同时考虑到Mini51B上CPLD资源有限,很难胜任完整的等精度控制逻辑,经过实验测试,我们选择单片机内部定时器做计数器1。定时计数器硬件结构如图6所示,当C/T =1时,多路开关与引脚Tn脚相连,定时器计数脉冲由外部输入,当C/T =0时,定时器计数脉冲由晶振频率经过12分频后做为定时器计数脉冲。当GATE=0时,封锁“或”门,这时“或”门输出为1,使

21、引脚INTn输入信号无效。打开“与”门,此时由TRn控制定时器的开关。若GATE=1,当TRn为1时,外部信号电平通过INTn引脚直接开启或关断定时器计数。这里将定时器设置成方式一且为外部引脚INTn做门控信号启动关闭计数器。单片机给CPLD提供启动停计数门控信号,计数器清零信号,CPLD反馈给单片机定时计时器门控信号,这样可以保证系统的设计与原理一直。测量结束,单片机根据定时器计数结果和CPLD计数结果计算出信号的频率,数据处理后送LCD显示。图6 单片机定时计数器硬件结构3.5 CPLD计数方案CPLD计数原理框图如图7所示,过程如下:当预置闸门有效时,由于DFF触发器为边沿触发器,在上升

22、沿时才将数据输出,所以DFF触发器输出端并不立即置1,只有当外部信号上升沿到来时, DFF触发器输出端才有效。这样保证了两计数器的允许信号在被测信号的上升沿到来时同时有效。当预置闸门关闭时,两计数器的允许信号只有在被测信号的上升沿到来时同时关闭。被测信号通过与门直接接在计数器的输入端,这样就保证了被测信号的计数值绝对正确,由于基准信号的计数闸门与被测信号严格同步,所以理论上只会有一个脉冲的误差。CPLD内计数器为32位,在预置时间内,只要计数器不溢出,即可准确测量被测信号个数。图7 CPLD计数原理框图4 方案实现4.1 CPLD设计这部分在Max+plusII环境下完成的,可用原理图输入和V

23、HDL硬件描语言,这里我们采用直观的原理图输入。电路如图8所示。 图8 CPLD硬件电路设计图图8中,硬件电路设计共包括四个部分:输入部分、输出部分、计数器部分和总线接口部分。mcu_ctr1模块为总线接口模块,frequency模块为测量计数控制模块。(1)信号测量部分设计,电路如图9所示。图9 Frequency模块的测量控制部分设计图图9中:P10_En为预置闸门信号输入端。fx为外部被测信号输入端。P11_Clr为counter32计数器清零信号输入端。Gate为两计数器计数允许信号输出端。dd31:0为counter32计数器的32位数据输出端。DFF触发器完成两计数器计数同步。co

24、unter32计数器对外部信号进行计数。这部分实现对两计数器计数同步的控制和对外部信号的计数功能。模块功能的实现过程如下:当P10_En预置闸门有效时,由于DFF触发器为边沿触发器,在上升沿时才将数据输出,所以计数器允许信号Gate并不立即置1,只有当外部信号上升沿到来时,计数器允许信号Gate才有效。这样保证了两计数器的允许信号在被测信号的上升沿到来时同时有效。当P10_En预置闸门关闭时,两计数器的允许信号只有在被测信号的上升沿到来时同时关闭。被测信号通过与门直接接在计数器的输入端,这样就保证了被测信号的计数值绝对正确,由于基准信号的计数闸门与被测信号严格同步,所以理论上只会有一个脉冲的误

25、差。(2)分离部分设计,电路如图10所示。图10 Frequency模块的数据分离部分设计图图10中:Y0-Y3为控制信号输入端。dd7:0dd32:24 计数器32位数据中8位。P0为数据输出端,与单片机相连。由于51系列单片机为8位单片机,不能同时读取32位数据,所以必须将32位计数器的数据分为4组,每组8位。控制选通信号Y0-Y3在单片机读信号到来且地址正确时使能,此时计数器相应的数据位与单片机P0口接通。(3)单片机与CPLD总线接口设计,电路如图11所示。 图11 总线接口模块设计图图11中:P0为单片机数据地址口,读写外部数据时,先输出地址,后输出数据。WR,RD为单片机读写控制信

26、号,低电平有效。P27为单片机第16位地址。ALE为单片机地址锁存允许输出,高电平有效。Y0-Y3为计数器32位数据选通控制信号输出端。Led2En为液晶使能信号。74373为低八位地址锁存器。74154为地址译码器。这部分完成单片机总线低8位地址的锁存和译码。低位地址锁存由74373完成,在ALE信号的配合下,总线地址在ALE高电平时锁存,在ALE低电平时维持。地址锁存后配合P27高位地址,送往74154进行译码,译码后的低四位Y0-Y3作为计数器数据分离部分的控制信号,YA和YB配合读写信号控制液晶显示。4.2单片机设计单片机部分的主要作用是:控制外部计数器和内部定时器计数器的开启与关闭;

27、外部计数器和内部定时器计数器的数据的读取;处理以及显示读取的数据。测量开始,单片机首先发出清零信号,对外部的CPLD计数器清零,然后将内部定时器清零,配置成外部时钟控制方式;然后发出计数启动信号,进入等精度频率测量计数模式,单片机通过查询计数器,判断计数时间,该计数时间必须小于外部32bit计数器溢出时间,时间一到,单片机发出停止计数信号,查询引脚Intn(P3.2),确认计数停止,读回外部计数结果和内部计数器计数结果,假设分别为N1和N2,定时器计数时间间隔为T1,那么被测信号的平率F=(N1/N2)t,将计算出的数据用液晶1602显示。程序流程如图12所示。图12 单片机程序流程4.3关键

28、源代码分析程序先将预置闸门关掉,源代码如下OPEN=0;temp1=0;while(GATE) if(temp1+65000) break;/超时跳出后清零CPLD内计数器和单片机定时器0 CLRP=1; CLRP=0; TH0=0; TL0=0;将定时器溢出寄存器清零并打开计数器、定时器,待外部信号上升沿到来后,计数器、定时器开始计数counter=0;TR0=1;OPEN=1;待定时器溢出后关闭预置闸门 while(counter65000) break;/超时跳出 TR0=0;读回计数器和定时器的值,并计算出被测信号频率 temp=counter*65536+TH0*256+TL0; f

29、x=1843200/temp;/(22118400/12=1843200) fx=fx*(REG2*65536+REG1*256+REG0);将信号频率值转换为ASIC吗,并调用lcd显示函数显示频率值sprintf(str_buff,%-8.3fHz,fx);lcd_put_xys(1,2, ); /清屏lcd_put_xys(1,2,f=); lcd_put_xys(3,2,str_buff); 5 仿真及测试5.1仿真分析使用EDA工具的一个最大好处是可以验证硬件设计是否正确,几乎每个公司的EDA产品都有仿真工具7。MAX+plus2也不例外,由于此硬件电路速度不高,我们主要进行前仿真,

30、看电路逻辑是否出错。(1)对Frequency模块结构的测量控制部分进行仿真,结果如图13。图13 Frequency测量控制部分仿真图 从图10中可以看到,单片机首先将P10_En清零,随后清零计数器,间隔一个被测信号周期后,单片机将P10_En置1,之后计数器开始计数并将Gate置1,计满后,P10_En置0,在下一个被测信号上升沿到来时,Gate信号清零通知单片机计数完毕。(2)单片机总线接口及整体模块进行仿真,结果如图11所示。图14单片机总线接口仿真图从图11中可以看出,单片机执行总线读操作后,P0口和P2口先输出地址数据,在下一个ALE高电平到来时,将P0口地址锁存,之后ALE信号一直为0,P2口地址数据一致保持不变。接着RD读信号拉低,这时读信和地址信号同时具备,P0口输出数据0x0a。5.2 测试结果与分析使用自制的等精度频率计来测量信号发生器输出的信号,所用基准频率信号频率为1.843MHz(由单片机晶振提供,频率为22.1184M/12),设在此时间内标准信号的计数值Ns误差一个脉冲,即|et |=1/1.843MHz,根据误差公式,在预置闸门时间为0.1s时,算出误差大约为1010-8,系统实际测试结果及误差如表1所示。表1 测

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1