基于单片机和CPLD的等精度频率计学士学位论文.doc_第1页
基于单片机和CPLD的等精度频率计学士学位论文.doc_第2页
基于单片机和CPLD的等精度频率计学士学位论文.doc_第3页
基于单片机和CPLD的等精度频率计学士学位论文.doc_第4页
基于单片机和CPLD的等精度频率计学士学位论文.doc_第5页
已阅读5页,还剩26页未读 继续免费阅读

下载本文档

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

文档简介

学号 编号 研究类型 应用研究 分类号TM935 13 学士学位学士学位论论文 文 设计设计 Bachelor s Thesis 论文题目 基于单片机和 CPLD 的等精度频率 计 作者姓名 指导教师 所在院系 专业名称 完成时间 I 湖北师范学院学士学位论文 设计 诚信承诺书 中文题目 基于单片机和 CPLD 的等精度频率计 外文题目 Frequency meter for equal precision based on CPLD and MCU 学生姓名 学 号 院系专业 班 级0503 学学 生生 承承 诺诺 我承诺在毕业论文 设计 活动中遵守学校有关规定 恪守学术规范 本人毕业论文 设计 内容除特别注明和引 用外 均为本人观点 不存在剽窃 抄袭他人学术成果 伪 造 篡改实验数据的情况 如有违规行为 我愿承担一切责 任 接受学校的处理 学生 签名 2009 年 5 月 15 日 指导教师承诺指导教师承诺 我承诺在指导学生毕业论文 设计 活动中遵守学校有 关规定 恪守学术规范 经过本人核查 该生毕业论文 设 计 内容除特别注明和引用外 均为该生本人观点 不存在 剽窃 抄袭他人学术成果 伪造 篡改实验数据的现象 指导教师 签名 2009 年 5 月 15 日 湖北师范学院 2009 届物理与电子科学学院学士学位论文 设计 II 毕业设计 论文 原创性声明和使用授权说明毕业设计 论文 原创性声明和使用授权说明 原创性声明原创性声明 本人郑重承诺 所呈交的毕业设计 论文 是我个人在指 导教师的指导下进行的研究工作及取得的成果 尽我所知 除文 中特别加以标注和致谢的地方外 不包含其他人或组织已经发表 或公布过的研究成果 也不包含我为获得 及其它教育 机构的学位或学历而使用过的材料 对本研究提供过帮助和做出 过贡献的个人或集体 均已在文中作了明确的说明并表示了谢意 作 者 签 名 日 期 指导教师签名 日 期 使用授权说明使用授权说明 本人完全了解 大学关于收集 保存 使用毕业设计 论文 的规定 即 按照学校要求提交毕业设计 论文 的印 刷本和电子版本 学校有权保存毕业设计 论文 的印刷本和电 子版 并提供目录检索与阅览服务 学校可以采用影印 缩印 数字化或其它复制手段保存论文 在不以赢利为目的前提下 学 湖北师范学院 2009 届物理与电子科学学院学士学位论文 设计 III 校可以公布论文的部分或全部内容 作者签名 日 期 湖北师范学院 2009 届物理与电子科学学院学士学位论文 设计 IV 学位论文原创性声明学位论文原创性声明 本人郑重声明 所呈交的论文是本人在导师的指导下独立进 行研究所取得的研究成果 除了文中特别加以标注引用的内容外 本论文不包含任何其他个人或集体已经发表或撰写的成果作品 对本文的研究做出重要贡献的个人和集体 均已在文中以明确方 式标明 本人完全意识到本声明的法律后果由本人承担 作者签名 日期 年 月 日 学位论文版权使用授权书学位论文版权使用授权书 本学位论文作者完全了解学校有关保留 使用学位论文的规 定 同意学校保留并向国家有关部门或机构送交论文的复印件和 电子版 允许论文被查阅和借阅 本人授权 大学 可以将本学位论文的全部或部分内容编入有关数据库进行检索 可以采用影印 缩印或扫描等复制手段保存和汇编本学位论文 涉密论文按学校规定处理 作者签名 日期 年 月 日 导师签名 日期 年 月 日 湖北师范学院 2009 届物理与电子科学学院学士学位论文 设计 V 目录 摘 要 1 1 前言 2 2 等精度频率测量原理分析 3 2 1 等精度频率测量原理 3 2 2 等精度频率测量的误差分析 4 3 系统方案 5 3 1 方案提出及比较 5 3 2 系统整体方案 6 3 3 单片机与 CPLD 连接方案 7 3 4 单片机定时及数据处理方案 8 3 5 CPLD 计数方案 9 4 方案实现 9 4 1 CPLD 设计 9 4 2 单片机设计 12 4 3 关键源代码分析 13 5 仿真及测试 14 5 1 仿真分析 14 5 2 测试结果与分析 15 6 致谢 16 参考文献 17 学士学位论文 设计 评审表 18 2009 届物理与电子科学学院学士学位论文 设计 1 基于单片机和 CPLD 的等精度数字频率计 物理与电子科学学院 摘 要 在现代信号分析和处理领域中 高精度的频率测量具有非常重要 的意义 本文详细论述了一种基于 CPLD 和单片机的等精度数字频 率计的设计原理及过程 对 CPLD 和单片机的有关知识也作了简要 介绍 本设计用 51 单片机作为数据处理和控制的核心 利用可编 程逻辑器件 ATF1504 设计相应的硬件电路 实现高精度的频率测 量 关键词 等精度 CPLD 单片机 定时器 中图分类号 TM935 13 FREQENCY METER FOR EQUAL PRECISI BASFD ON CPLD AND MCU China Abstract 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 briefly 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 KeyKey words words accuracy CPLD microcontroller timer 2009 届物理与电子科学学院学士学位论文 设计 2 基于单片机和 CPLD 的等精度数字频率计 1 前言 由于频率计能够快速准确的捕捉到被测信号频率的变化 频率计拥有 非常广泛的应用范围 在传统的生产制造企业中 用户可以通过使用频率 计能够迅速的发现有故障的晶振产品 确保产品质量 在计量实验室中 频率计被用来对各种电子测量设备的本地振荡器进行校准 在无线通讯测 试中 频率计既可以被用来对无线通讯基站的主时钟进行校准 还可以被 用来对无线电台的跳频信号和频率调制信号进行分析 在 CMOS 电路系列 产品中 数字频率计是用量最大 品种很多的产品 是计算机 通讯设备 音频视频等科研生产领域不可缺少的测量仪器 并且与许多电参量的测量 方案 测量结果都有十分密切的关系 另外 在生产过程中许多物理量 例如温度 压力 流量 液位 PH 值 振动 位移 速度 加速度 乃至各种气体的百分比成分等均用传感 器转换成信号频率 然后用数字频率计来测量 这些物理量往往需要相当 精确的数据 所以对频率计的精确度和误差稳定度的要求很高 因此 高 精度频率计的设计与研究具有很大的现实意义 常用的直接测频方法主要有测频法和测周期法两种 测频法就是在确 定的闸门时间内 记录被测信号的变化周期数 测周期法需要有标准信号 的频率 在待测信号的一个周期内 记录标准频率的周期数得到待测频率 这两种方法的计数值会产生 1 个字误差 并且测试精度与计数器中记录的 数值有关 为了保证测试精度 一般对于低频信号采用测周期法 对于高 频信号采用测频法 因此测试时很不方便 所以人们提出等精度测频方法 等精度测频方法是在直接测频方法的基础上发展起来的 融合以上两 种方法的优点 可兼顾低频与高频信号 但较以上两种方法而言 等精度 频率测量有较高的测量精度 且误差不会随着被测信号频率的改变而改变 因为它的闸门时间不是固定的值 而是被测信号周期的整数倍 即与被测 2009 届物理与电子科学学院学士学位论文 设计 3 信号同步 因此 测除了对被测信号计数所产生 1 个字误差 并且达到了 在整个测试频段的等精度测量 2 等精度频率测量原理分析 2 1 等精度频率测量原理 频率测量一般原理 基准定时器加计数器 关键是如何实现高精度的 基准定时与计数器同步控制 常规依靠软件查询判断控制是很难达到精度 要求的 必须用硬件逻辑实现 等精度频率测量原理框图如图 1 所示 图 1 等精度频率测量原理框图 图中计数器 1 和计数器 2 是 2 个可控的 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 分别对被测信号和基准频率信号同时计数 当一段时间过后 t3 时刻单片机发出停止信号 即 D 触发器置数 D 为低电平 但此时 2 个 32 b 的计数器仍然没有停止计数 一直等到随后而至的被测信号的上升沿 t4 时刻到来时 才通过 D 触发器将这 2 个计算器同时关闭 2009 届物理与电子科学学院学士学位论文 设计 4 Tc t0t1t2t3 dtdt t4 nTx 图 2 测量仿真波形图 由图所示的测频时序图可见 Gate 的宽度 Tc 和发生的时间都不会影响 计数使能信号 允许计数的周期总是恰好等于待测信号 fx 的完整周期 nTx 这正是确保 fx 在任何频率条件下都能保持恒定测量精度的关键 因 为 此时 Gate 的宽度 Tc 改变以及随机的出现时间造成的误差 dt 最多只有 基准时钟 fb 信号的一个时钟周期 由于 fb 的信号是由高稳定度的 例如 100 MHz 晶体振荡器发出的 所以任何时刻的绝对测量误差只有 1 10 的 8 次方 s 这也是系统产生主要的误差 2 2 等精度频率测量的误差分析 设基准时钟信号频率为 待测信号频率的测量值为 实际值为 xfxef 由于计数的起停时间都是由待测信号的上升沿触发的 在 Tpr 时间内对待 测信号的计数值无误差 在此时间内基准时钟信号的计数值与实际值xNsN 最多相差一个脉冲 即 et 1 则下式成立 ssxxNfNf etNfNfssxxe 所以有 etNNffsxsx 根据相对误差公式有 xexxexexefffff 代入整理得 1 sxexeNetff 2009 届物理与电子科学学院学士学位论文 设计 5 由上式 1 可以得出以下结论 等精度测频方法测量精度与预置门宽度和基准频率有关 与被测信号的 频率无关 6 增大预置门宽度Tpr或提高基准信号频率fs 可以增大Ns 减 少测量误差 提高测量精度 3 系统方案 3 1 方案提出及比较 方案一 单片机单独完成 在单片机内部计数器以及软件共同控制下 在设定时间内 利用单片机内部的两个计数器分别对外部被测信号和内部 时钟周期信号进行同步计数 计数的结果暂存于单片机内部 在测量结束 后 通过单片机进行计算得到测量结果 方案二 CLPD 单独用完成 应用 VHDL 硬件描述语言 利用 CLPD 内部丰富的数据类型和层次化的结构模型 对整个系统进行逻辑设计并用 计算机仿真 生成符合要求的 在电路结构上可实现的数字逻辑 再下载 到可编程逻辑器件中 即可完成设计任务 方案三 单片机与 CPLD 共同完成 利用 CPLD 的高速 高可靠性 完成待测信号的测量和基准时钟计数部分 利用单片机灵活的逻辑控制能 力和强大的数据处理能力 完成整个系统的控制及数据处理 由等精度测频原理知 若能精确地实现计数 经过简单的乘除运算 即可得到待测频率 然而 在兆赫兹级的计数 一般的单片机就无能为 力了 而 CPLD 的时钟频率可达纳秒级 完全可以实现其计数功能 因 此方案一不理想 但是 CPLD 内部资源本身就较少 在完成计数的同时 要 CPLD 完成兆级以上的乘除运算 需消耗更多的硬件资源 而单片机 在不受运行速度限制时几乎不要增加任何成本 因此方案二也不理想 所 以 方案三用 CPLD 完成计数 用单片机完成控制 运算和显示最为理想 2009 届物理与电子科学学院学士学位论文 设计 6 3 2 系统整体方案 本系统主要由四部组成 控制部分 计数部分 数据处理部分及显示 部分 由于所用 CPLD 芯片内资源较少 其内部只能设置一个 32 位计数器 用来测量被测信号个数 另外一个计数器用单片机内部定时器 所以 各 个硬件分工情况为 CPLD 完成对被测信号的测量计数和总线设计 单片机 完成对基准时钟的计数和对整个测量系统的控制 包括对 CPLD 测量过程 的控制 数据的缓存 测量结果数据的处理和 LCD1602 的驱动 频率为 22 1184MHz 的标准晶振提供系统的基准时钟信号和单片机的时钟电路 LCD1602 完成测量结果的显示 系统设计原理图如图 3 所示 图 3 系统设计原理图 1 计数器 1 使用单片机内部定时器 0 作为计数器 对基准时钟计数 2 计数器 2 为 CPLD 内部生成的 32 位计数器 对待测信号计数 3 基准时钟 fo 由单片机晶振提供 频率为 22 1184M 12 4 预置闸门由单片机 P0 1 输出 P0 0 为计数器 2 的清零信号 高 电平有效 P3 2 为计数器的使能信号 控制计数器 1 和计数器 2 计数的启 动与停止 5 数据处理 扫描显示都由单片机软件程序实现 6 由 LCD1602 显示测量结果 系统的测量流程大致如下 首先 单片机发出清零信号 对外部 CPLD 计数器 即图中计数器 2 清零 然后将内部定时器清零 即图中计数器 1 配置成外部时钟控制方式 然后发出计数启动信号 当启动信号置 1 和外部信号上升沿到来时 计数器闸门打开 CPLD 内计数器和单片机定 2009 届物理与电子科学学院学士学位论文 设计 7 时器同时计数 单片机通过查询计数器 判断计数时间 该计数时间必须 小于外部 32bit 计数器溢出时间 时间一到 单片机发出停止计数信号 启 动信号关闭 此时当外部信号上升沿到来时 计数器闸门关闭 CPLD 内计 数器和单片机定时器停止计数 然后 单片机读回外部计数结果和内部计 数器计数结果 计算可得到被测信号的频率 送 LCD 显示 3 3 单片机与 CPLD 连接方案 单片机与 CPLD 之间可以根据需要 采用多种不同的接口方式 这里 提出一种总线接口方案 采用三总线 数据 控制 地址 结构 如图 4 所示 双向数据总线完成数据传输 单向控制总线和地址总线通过 CPLD 对外围对象控制 CPLD 单向控制总线 单向地址总线 双向数据总线 MCU P0 Wr Rd Ale A15 IO Ded Input Global OE Global CLK Global Clear 图 4 单片机与 CPLD 总线结构的接口原理图 单片机 P0 口为双向数据总线 该 P0 口同 CPLD 的通用 IO 口连接 完 成数据和低 8 位地址传送 控制总线包括单片机读写控制总线 Rd 和 Wr 以及地址锁存信号 Ale Address Lock Enable 地址总线 A15 P2 7 控制总线和地址线通过 CPLD 的全局输入信号引脚输入 包括全局时钟 Globle Clk 全局清零输入 Global Clear 全局使能输入 Global OE 特定输 入 Ded Input 这些全局信号同 CPLD 里面的每一个单元相连 当用外部的 时钟来触发时 用这些信号比用普通管脚速度快 保证信号到每个宏单元 的延时相同并且延时最短 这里就经典 51 系列单片机和 ATERAL 公司的 EPM7064 接口为例 设 计单片机通过 CPLD 实现地址锁存 地址译码译码 LCD ADC0809 DAC0832 的接口设计 实现灵活可扩展地址编码 电路 如图 5 所示 2009 届物理与电子科学学院学士学位论文 设计 8 IN3 1 IN4 2 IN5 3 IN6 4 IN7 5 START 6 EOC 7 D3 8 OE 9 CLK 10 VCC 11 REF 12 GND 13 D1 14 D2 15 REF 16 D0 17 D4 18 D5 19 D6 20 D7 21 ALE 22 ADD C 23 ADD B 24 ADD A 25 IN0 26 IN1 27 IN2 28 U3ADC0809 P1 5 7 P1 6 8 P1 7 9 P3 0 RxD 11 P3 1 TxD 13 P3 2 INT0 14 P3 3 INT1 15 P3 4 T0 16 P3 5 T1 17 P3 6 WR 18 P3 7 RD 19 P2 0 A8 24 P2 1 A9 25 P2 2 A10 26 P2 3 A11 27 P2 4 A12 28 P2 5 A13 29 P2 6 A14 30 P2 7 A15 31 ALE 33 P0 7 AD7 36 P0 6 AD6 37 P0 5 AD5 38 P0 4 AD4 39 P0 3 AD3 40 P0 2 AD2 41 P0 1 AD1 42 P0 0 AD0 43 P1 0 2 P1 1 3 P1 2 4 P1 3 5 P1 4 6 U189C5X IO 4 IO 5 IO 6 IO 8 IO 9 IO 11 IO 12 IO 14 IO 16 IO 17 IO 18 IO 19 IO 20 IO 21 IO 24 IO 25 IO 26 IO 27 IO 28 IO 29 IO 31 IO 33 IO 34 IO 36 IO 37 IO 39 IO 40 IO 41 Global Clk 43 Global Clear 1 Global OE 44 Ded Input 2 U2EPM7064SLC44 P00 P01 P02 P03 P04 P05 P06 P07 P00 P01 P02 P03 P04 P05 P06 P07 P00 P01 P02 VCC VREF 8 RFB 9 IOUT1 11 IOUT2 12 DI7 13 DI6 14 DI5 15 DI4 16 DI0 7 CS 1 WR1 2 DI3 4 DI2 5 DI1 6 XFER 17 WR2 18 ILE 19 VDD 20 U2DAC0832 P00 P01 P02 P03 P04 P05 P06 P07 1 3 2 1 U4A LM358N VCC VCC VCC RW DB 7 0 2 x 16 Liquid Crystal DisplayVo LIGHT RS En IO1 IO2 IO3 IO4 IO1 IO2 IO3 IO4 Vo 图 5 单片机扩展图 3 4 单片机定时及数据处理方案 51 板上没有频率非常高的基准晶振源 我们只好选择单片机时钟晶振 做基准源 同时考虑到 Mini51B 上 CPLD 资源有限 很难胜任完整的等精 度控制逻辑 经过实验测试 我们选择单片机内部定时器做计数器 1 定时 计数器硬件结构如图 6 所示 当 C T 1 时 多路开关与引脚 Tn 脚相连 定时器计数脉冲由外部输入 当 C T 0 时 定时器计数脉冲由晶振频率经 过 12 分频后做为定时器计数脉冲 当 GATE 0 时 封锁 或 门 这时 或 门输出为 1 使引脚 INTn 输入信号无效 打开 与 门 此时由 TRn 控制定时器的开关 若 GATE 1 当 TRn 为 1 时 外部信号电平通过 INTn 引脚直接开启或关断定时器计数 这里将定时器设置成方式一且为外部引脚 INTn 做门控信号启动关闭计 数器 单片机给 CPLD 提供启动停计数门控信号 计数器清零信号 CPLD 反馈给单片机定时计时器门控信号 这样可以保证系统的设计与原理一直 测量结束 单片机根据定时器计数结果和 CPLD 计数结果计算出信号的频 率 数据处理后送 LCD 显示 2009 届物理与电子科学学院学士学位论文 设计 9 图 6 单片机定时计数器硬件结构 3 5 CPLD 计数方案 CPLD 计数原理框图如图 7 所示 过程如下 当预置闸门有效时 由于 DFF 触发器为边沿触发器 在上升沿时才将数据输出 所以 DFF 触发器输 出端并不立即置 1 只有当外部信号上升沿到来时 DFF 触发器输出端才 有效 这样保证了两计数器的允许信号在被测信号的上升沿到来时同时有 效 当预置闸门关闭时 两计数器的允许信号只有在被测信号的上升沿到 来时同时关闭 被测信号通过与门直接接在计数器的输入端 这样就保证 了被测信号的计数值绝对正确 由于基准信号的计数闸门与被测信号严格 同步 所以理论上只会有一个脉冲的误差 CPLD 内计数器为 32 位 在预 置时间内 只要计数器不溢出 即可准确测量被测信号个数 D触发器 32位计数器 D Q CLK CK EN Q 31 0 预置闸门 Fx 数据输出 nGATE 图 7 CPLD 计数原理框图 4 方案实现 4 1 CPLD 设计 这部分在 Max plusII 环境下完成的 可用原理图输入和 VHDL 硬件描 语言 这里我们采用直观的原理图输入 电路如图 8 所示 2009 届物理与电子科学学院学士学位论文 设计 10 图 8 CPLD 硬件电路设计图 图 8 中 硬件电路设计共包括四个部分 输入部分 输出部分 计数 器部分和总线接口部分 mcu ctr1 模块为总线接口模块 frequency 模块为 测量计数控制模块 1 信号测量部分设计 电路如图 9 所示 图 9 Frequency 模块的测量控制部分设计图 图 9 中 P10 En 为预置闸门信号输入端 fx 为外部被测信号输入端 P11 Clr 为 counter32 计数器清零信号输入端 Gate 为两计数器计数允许信号输出端 dd 31 0 为 counter32 计数器的 32 位数据输出端 DFF 触发器完成两计数器计数同步 counter32 计数器对外部信号进行计数 这部分实现对两计数器计数同步的控制和对外部信号的计数功能 模 块功能的实现过程如下 当 P10 En 预置闸门有效时 由于 DFF 触发器为 2009 届物理与电子科学学院学士学位论文 设计 11 边沿触发器 在上升沿时才将数据输出 所以计数器允许信号 Gate 并不立 即置 1 只有当外部信号上升沿到来时 计数器允许信号 Gate 才有效 这 样保证了两计数器的允许信号在被测信号的上升沿到来时同时有效 当 P10 En 预置闸门关闭时 两计数器的允许信号只有在被测信号的上升沿到 来时同时关闭 被测信号通过与门直接接在计数器的输入端 这样就保证 了被测信号的计数值绝对正确 由于基准信号的计数闸门与被测信号严格 同步 所以理论上只会有一个脉冲的误差 2 分离部分设计 电路如图 10 所示 图10 Frequency模块的数据分离部分设计图 图 10 中 Y0 Y3 为控制信号输入端 dd 7 0 dd 32 24 计数器 32 位数据中 8 位 P0 为数据输出端 与单片机相连 由于 51 系列单片机为 8 位单片机 不能同时读取 32 位数据 所以必 须将 32 位计数器的数据分为 4 组 每组 8 位 控制选通信号 Y0 Y3 在单片 机读信号到来且地址正确时使能 此时计数器相应的数据位与单片机 P0 口 接通 3 单片机与 CPLD 总线接口设计 电路如图 11 所示 2009 届物理与电子科学学院学士学位论文 设计 12 图 11 总线接口模块设计图 图 11 中 P0 为单片机数据地址口 读写外部数据时 先输出地址 后输出数 据 WR RD 为单片机读写控制信号 低电平有效 P27 为单片机第 16 位地址 ALE 为单片机地址锁存允许输出 高电平有效 Y0 Y3 为计数器 32 位数据选通控制信号输出端 Led2En 为液晶使能信号 74373 为低八位地址锁存器 74154 为地址译码器 这部分完成单片机总线低 8 位地址的锁存和译码 低位地址锁存由 74373 完成 在 ALE 信号的配合下 总线地址在 ALE 高电平时锁存 在 ALE 低电平时维持 地址锁存后配合 P27 高位地址 送往 74154 进行译码 译码后的低四位 Y0 Y3 作为计数器数据分离部分的控制信号 YA 和 YB 配合读写信号控制液晶显示 2009 届物理与电子科学学院学士学位论文 设计 13 4 2 单片机设计 单片机部分的主要作用是 控制外部计数器和内部定时器计数器的开 启与关闭 外部计数器和内部定时器计数器的数据的读取 处理以及显示 读取的数据 测量开始 单片机首先发出清零信号 对外部的 CPLD 计数 器清零 然后将内部定时器清零 配置成外部时钟控制方式 然后发出计 数启动信号 进入等精度频率测量计数模式 单片机通过查询计数器 判 断计数时间 该计数时间必须小于外部 32bit 计数器溢出时间 时间一到 单片机发出停止计数信号 查询引脚 Intn P3 2 确认计数停止 读回外 部计数结果和内部计数器计数结果 假设分别为 N1 和 N2 定时器计数时 间间隔为 T1 那么被测信号的平率 F N1 N2 t 将计算出的数据用液晶 1602 显示 程序流程如图 12 所示 清零计数器和定时器 关闭闸门 Lcd初始化 定时器初始化 外部信号 上升沿到来 否 是 开启计数器和定时器 预置时间到 关闭计数器和定时器 数据处理和显示频率 否 是 外部信号 上升沿到来 是 否 关闭闸门 开始 图 12 单片机程序流程 2009 届物理与电子科学学院学士学位论文 设计 14 4 3 关键源代码分析 程序先将预置闸门关掉 源代码如下 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 fx 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 2009 届物理与电子科学学院学士学位论文 设计 15 5 仿真及测试 5 1 仿真分析 使用 EDA 工具的一个最大好处是可以验证硬件设计是否正确 几乎每 个公司的 EDA 产品都有仿真工具 7 MAX plus2 也不例外 由于此硬件电 路速度不高 我们主要进行前仿真 看电路逻辑是否出错 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 信 2009 届物理与电子科学学院学士学位论文 设计 16 号一直为 0 P2 口地址数据一致保持不变 接着 RD 读信号拉低 这时读 信和地址信号同时具备 P0 口输出数据 0 x0a 5 2 测试结果与分析 使用自制的等精度频率计来测量信号发生器输出的信号 所用基准频 率信号频率为 1 843MHz 由单片机晶振提供 频率为 22 1184M 12 设 在此时间内标准信号的计数值 Ns 误差一个脉冲 即 et 1 1 843MHz 根 据误差公式 在预置闸门时间为 0 1s 时 算出误差大 sxexeNetff 约为 10 10 8 系统实际测试结果及误差如表 1 所示 表 1 测量结果及误差 实际实际 频率频率 测量频率测量频率误差误差 绝对绝对 误差误差 实际实际 频率频率 测量频率测量频率误差误差 绝对绝对 误差误差 20 Hz 19 9999951 Hz 0 00000 49Hz 2 42 10 5 20 kHz 19 99999376 kHz 0 0062 4Hz 3 12 10 5 200 Hz 199 999952 8Hz 0 00004 72Hz 2 36 10 5 200 kHz 199 9999396 kHz 0 0604 Hz 3 02 10 5 2 kHz 1999 99957 2Hz 0 00042 8Hz 2 14 10 5 15 MHz 14 99999619 MHz 3 81 Hz 2 54 10 5 通过对比测试和结果分析 输入信号在该等精度频率计上均可精确显 示频率误差较小 达到了10 7 与理论值较接近 由于系统采用8位的51单 片机定时器作为基准信号计数器 基准信号频率较低 对精度有一定影响 采用高频率基准信号可提高精度 6 致谢 本论文是在导师田开坤老师的指导下完成的 导师严谨的治学态度 精益求精的工作作风 科学的工作方法以及平易近人的人格魅力给了我极 大的帮助和影响 使我在这段时间受益匪浅 也使我在顺利完成本课题的 研究的同时让我在科研能力与专业知识方面都有了长足的进步 另外 也 感谢给予我帮助的其他老师和同学们 2009 届物理与电子科学学院学士学位论文 设计 17 参考文献 1 周立功 夏宇文 单片机与 CPLD 综合应用技术 M 北京 北京航空航天 大学出版社 2003 45 49 2 何立民 单片机高级教程 M 北京 北京航空航天大学出版社 2000 87 91 3 谢小东 李良超 基于FPGA的等精度数字频率计 J 实验科学与技术 2005 24 2 177 179 4 潘松 基于Quartus 的FPGA CPLD数字系统设计 M 北京 北京航空 航天大学出版社 2005 146 152 5 侯媛彬 袁益民 霍汉平 凌阳单片机原理及其毕业设计精选 M 北京 北 京科学出版社 2006 93 101 6 徐成 刘彦 李仁发 一种全同步数字频率测量方法的研究 J 电子技术应 用 2004 38 12 43 46 7 谭会生 张昌凡 EDA技术及应用 M 西安 西安电子科技大学出版社 2001 153 167 8 高远 信号数字处理技术及其应用 M 哈尔滨 黑龙江科学技术出版社 1983 83 86 9 马炫 等精度频率脉冲信号采集测试系统 D 西安理工大学 1997 11 3 50 52 10 王凤银 基于 FPGA 的数字频率计设计与仿真 J 信息技术 2008 10 33 153 156 11 焦阳 频率测量方法的改进 J 仪器仪表学报 2004 S1 11 12 2009 届物理与电子科学学院学士学位论文 设计 18 学士学位论文 设计 评审表 系部 名称 学生 姓名 班级 名称 评阅人 姓名 专业 方向 学生 学号 提交 时间 2009 年 5 月 15 日 评阅人 职称 实验师 论文题目基于单片机和 CPLD 的等精度数字频率计 论文 或设 计的 主要 内容 本文详细介绍了 CPLD 和单片机的有关知识 传统频率测量原理以及等 精度测频原理 基于 CPLD 和单片机的等精度数字频率计的设计过程 相应 开发软件的使用 测试的结果及分析 本设计用 mini51 板作为开发平台 利用可编程逻辑器件 ATF1504 设计相应的硬件电路 实物电路已经搭建并 测试成功 论文初稿已定 现在恳请导师帮忙修改论文 并申请论文答辩 评阅 人评 语 评阅人 签名 2009 年 5 月 15 日 学院 评审 意见 院学术委员会主席 签章 2009 年 5 月 29 日 备注 2009 届物理与电子科学学院学士学位论文 设计 19 学位论文原创性声明 本人郑重声明 所呈交的学位论文 是本人在导师的指导下进行的研究工 作所取得的成果 尽我所知 除文中已经特别注明引用的内容和致谢的地方外 本论文不包含任何其他个人或集体已经发表或撰写过的研究成果 对本文的研 究做出重要贡献的个人和集体 均已在文中以明确方式注明并表示感谢 本人 完全意识到本声明的法律结果由本人承担 学位论文作者 本人签名 年 月 日 学位论文出版授权书 本人及导师完全同意 中国博士学位论文全文数据库出版章程 中国优秀 硕士学位论文全文数据库出版章程 以下简称 章程 愿意将本人的学 位论文提交 中国学术期刊 光盘版 电子杂志社 在 中国博士学位论文 全文数据库 中国优秀硕士学位论文全文数据库 中全文发表和以电子 网络形式公开出版 并同意编入 C CN NK KI I 中国知识资源总库 在 中国博硕士 学位论文评价数据库 中使用和在互联网上传播 同意按 章程 规定享受相 关权益 论文密级 论文密级 2009 届物理与电子科学学院学士学位论文 设计 20 公开 保密 年 月至 年 月 保密的学位论文在解密后应遵守此协 议 作者签名 导师签名 年 月 日 年 月 日 2009 届物理与电子科学学院学士学位论文 设计 21 独 创 声 明 本人郑重声明 所呈交的毕业设计 论文 是本人在指导老 师的指导下 独立进行研究工作所取

温馨提示

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

评论

0/150

提交评论