1、 数字频率计的设计数字频率计的设计 一、课程设计的目的一、课程设计的目的 通过本课程设计使学生进一步巩固光纤通信、单片机原理与技术的基本概 念、基本理论、分析问题的基本方法;增强学生的软件编程实现能力和解决实际 问题的能力,使学生能有效地将理论和实际紧密结合,拓展学生在工程实践方面 的专业知识和相关技能。 二、课程设计的内容和要求二、课程设计的内容和要求 1 1课程设计内容课程设计内容 (硬件类)频率测量仪的设计 2 2课程设计要求课程设计要求 频率测量仪的设计 要求学生能够熟练地用单片机中定时/计数、中断等技术,针对周期性信号的 特点, 采用不同的算法, 编程实现对信号频率的测量, 将测量的
2、结果显示在 LCD 1602 上,并运用 Proteus 软件绘制电路原理图,进行仿真验证。 三三实验原理实验原理 可用两种方法测待测信号的频率 方法一: (定时 1s 测信号脉冲次数) 用一个定时计数器做定时中断,定时 1s,另一定时计数器仅做计数器使用,初始化完 毕后同时开启两个定时计数器,直到产生 1s 中断,产生 1s 中断后立即关闭 T0 和 T1(起保 护程序和数据的作用)取出计数器寄存器内的值就是 1s 内待测信号的下跳沿次数即待测信 号的频率。用相关函数显示完毕后再开启 T0 和 T1 这样即可进入下一轮测量。 原理示意图如下: 实验原理分析: 1 根据该实验原理待测信号的频率
3、不应该大于计数器的最大值 65535, 也就是说 待测信号应小于 65535Hz。 2 实验的误差应当是均与的与待测信号的频率无关。 方法二(测信号正半周期) 对于 1:1 占空比的方波,仅用一个定时计数器做计数器,外部中断引脚作待测信号输 入口,置计数器为外部中断引脚控制(外部中断引脚为“1”切 TRx=1 计数器开始计数) 。 单片机初始化完毕后程序等待半个正半周期 (以便准确打开 TRx) 打开 TRx, 这时只要 INTx (外部中断引脚)为高电平计数器即不断计数,低电平则不计数,待信号从高电平后计数器 终止计数,关闭 TRx 保护计数器寄存器的值,该值即为待测信号一个正半周期的单片机
4、机 器周期数, 即可求出待测信号的周期: 待测信号周期 T=2*cnt/(12/fsoc) cnt 为测得待测信 号的一个正半周期机器周期数;fsoc 为单片机的晶振。所以待测信号的频率 f=1/T。 原理示意图如下: 实验原理分析: 1 根据该实验原理该方法只适用于 1:1 占空比的方波信号,要测非 1:1 占空比 的方波信号 2 由于有执行 f=1/(2*cnt/(12/fsoc))的浮点运算,而数据类型转换时未用 LCD 浮点显示,故测得的频率将会被取整,如 1234.893Hz 理论显示为 1234Hz,测 得结果会有一定程度的偏小。也就是说测量结果与信号频率的奇偶有一定关 系。 3 由于计数器的寄存器取值在 165535 之间, 用该原理时, 待测信号的频率小于 单片机周期的 1/12 时,单片机方可较标准的测得待测信号的正半周期。故用 该原理测得信号的最高频率理论应为 fsoc/12 如 12MHZ 的单片机为 1MHz。 而最小频率为 f=1/(2*65535/(12/fsoc)) 如 12MHZ 的单片机为 8Hz。 四四实验