电阻、电容、电感测试仪的系统硬件设计
果送入数码管显示。 4.3 频率参数计算的原理
本设计频率的计算采用单片机外部中断 ,对外触发电路产生的脉冲频率的测量,再通过对测量数据的校正来完成。
单片机对频率测量的原理如下图4-3所示。
图4-3 测频率原理图示
说明:图4-3中t1时刻检测到高电平开定时器1,开始计数;t2时刻等待检测低电平;t3时刻第二次检测到高电平时关定时器停止计数。
利用GATE=1,TR1=1,只有 引脚输入高电平时,T1才允许计数,利用此,将外部输入脉冲经 引脚上输入,等待高电平的到来,当检测到高电平时开定时器开始计数,然后检测低电平,当检测到低电平时已经测得脉冲的脉宽,但我们测得是频率,故在程序中药继续检测等待下一个高电平的到来,此时关定时器停止计数,用此计数值乘以机器的周期数(晶振频率已知),得出触发电路产生的周期,然后再经过数据处理便得到输入信号的频率。程序流程图如图4-4所示。
电阻、电容、电感测试仪的系统硬件设计
开始 程序初始化 N
fw是否为1 Y 开定时器TR=1 N
fw是否为0 Y N
fw是否为1 Y 数据处理 结束
图4-4 频率计算程序流程图
6 结论与展望
通过对电阻、电容、电感测试仪的课程设计,锻炼了我的实际动手能力,增强了我们解决实际工程问题的能力,同时也提高我查阅文献资料、设计规范以及电脑制图等其他专业能力水平。
本设计的硬件电路图简单,可降低生产成本。采用单片机可提高系统的可靠性和稳定性,缩小系统的体积,调试和维护方便,而且以MCS-51单片机最小系统为核心的设计能够满足了整个系统的工作需求,555振荡器实现了被测电阻和被测电容参数的频率化,电容三点式振荡电路实现了被测电感参数的频率化,被测频率通过CD4052模拟开关送入单片机计
电阻、电容、电感测试仪的系统硬件设计
数,再经过显示电路显示被测参数的测量值,软件用C语言编程,根据具体情况控制启动被测参数的相应程序,能灵活控制被测参数的档位切换。经过测试,系统各个模块都能正常共组,成功地达到了设计的硬件要求。
系统的软件部分是系统实现各种工作状态的关键。通过结合硬件电路,在Keil51的平台上,使用C语言与汇编语言混合编程编写了系统应用程序,使程序能够正常运行,实现了设计的要求。
总之,整个系统的工作正常,完成了设计任务的全部要求。
虽然本系统完成了设计设计要求,但其中仍然存在着很多需要改进的地方。作品实测中,测量电容值有一定的误差,而且C值越大时误差越大,该误差则是来源于振荡电路产生的频率和单片机程序上的误差。希望在之后的设计之中能够得到进一步解决。在人机交换方面,显示部分可以改用显示效果更好的液晶屏显示,使系统工作状态和数据显示更加清晰、更加人性化。
电阻、电容、电感测试仪的系统硬件设计
附 录
附录一 系统原理图
附图1
电阻、电容、电感测试仪的系统硬件设计
附录二 源程序 源程序:
#include
//频率值溢出定时器值
//频率相对应的计数值
unsigned long int uu=0; unsigned long int ff=0;
typedef unsigned char uchar; typedef unsigned int uint; uchar key1;
//实际频率值
int m=0,w=0,q=0,b=0,s=0,g=0;
#define LEDSEG #define LEDDAT
/*** 按键 ***/ sbit sl=P1^0; sbit sc=P1^1; sbit sr=P1^2; sbit fw=P3^5; sbit srg=P1^5; sbit srd=P1^6;
void delay_5ms() { }
void delay_50us() {
uchar i,j; for(j=0;j<5;j++)
for(i=0;i<125;i++){;}
XBYTE[0xbfff] XBYTE[0xdfff]