基于555定时器的电容测试仪设计
1 引言
随着电子工业的发展,电子元器件急剧增加,电子元器件的适用范围也逐渐广泛起来,在应用中我们常常要测定电容的大小[1] 。因此,一种简单、实用的电容测试工具在实际中具有一定的实用价值 。一般元件参数的数字化测量是把被测参数转换成频率后再进行测量[2],本设计采用555为核心的振荡电路,将被测电容值转化为频率,并利用AT89S51处理器测量出频率,再通过该频率值计算出电容参数值 。
2 系统的原理框图
系统主要采用了555定时器构成的RC振荡电路和单片机技术 。设计思路:被测电容C通过RC振荡转换成频率信号f,送入单片机测频,对该频率进行运算处理求出被测电容的值,并送显示器显示 。系统框图如图1所示,其主要由测量电路和控制电路两部分组成 。当接入被测电容后,由555定时器构成RC振荡器产生方波信号,把此信号通过接口传到AT89C51单片机I/O口上,对此方波信号进行测频,通过软件编程,计算出得到被测电容值,由LCD1602液晶显示 。
图1 系统框图
3 硬件设计
3.1 555振荡电路的设计
由555芯片构成的多谐振荡电路如图2,CX为被测电容,接通电源后,CX被充电,A点电压UA上升 。当UA上升到时,触发器被复位,同时555芯片内部放电三极管导通,此时U0为低电平 。CX通过R2和放电三极管放电,使UA下降 。当UA下降到时,触发器又被置位,U0翻转为高电平[3] 。CX放电所需的时间为:
图2 555构成的RC振荡电路
由上式可知,当电路设计完成后,振荡器输出f随CX的变化而改变 。改变R1、R2的值即可改变系统量程 。系统量程分为四档:(1)R1+2R2=470KΩ时,测1.0nF-10.0nF的电容值 。(2)R1+2R2=47KΩ时,测10.0nF~100.0nF的电容(3)R1+2R2=4.7KΩ时,测100.0nF~1000.0nF的电容 。(4)R1+2R2=470Ω时,测1.0μF~10.0μF的电容 。图3为R1+2R2=470KΩ时,测量电容为2μF振荡输出输出波形 。
图3 振荡电路输出的频率信号
3.2 信号处理及显示电路
信号处理电路部分采用单片机AT89S51作为系统的主控制器 。AT89S51单片机的最小系统由时钟电路、复位电路、外加电源及单片机构成[4],其硬件电路如图4所示 。555振荡电路输出的是脉冲波,接到AT89S51处理器的输入引脚P3.5,通过AT89S51内部定时/计时器T0、T1及相应的程序设计,构成一个数字式频率测量系统,测出频率后按(5)式运算处理后得到被测电容值 。
图4 单片机控制显示模块
显示模块LCD1602液晶第1、2脚接驱动电源;第三脚VL为液晶的对比度调节,通过在VCC和GND之间接一个10K多圈可调电阻,中间抽头接VL,可实现液晶对比度的调节;液晶的控制线RS、R/W、E分别接单片机的P2.5、P2.6、P2.7;D0~D7为LCD1602液晶模块的8位双向数据口,分别与STC89C52RC单片机的P1.0~P1.7相连,用于传输数据 。接在单片机的P0口;BL+、BL-为液晶背光电源[5][6] 。
4 系统软件设计
【基于555定时器的电容测试仪设计】
图5 主程序流程图
系统软件环境以Keil4.0为仿真平台,使用C语言编程编写了运行程序;包括主程序模块、显示模块和电容测试模块 。软件设计主要包括三个方面:一是初始化系统;二是按键检测;三是数据采集、数据处理并进行显示 。程序采用模块化的结构,这样便于调试和修改,易编程和易读性好,也程序结构清楚[7] 。系统程序流程如图6所示,首先对P3.5口脉冲信号频率的测量,再通过(5)式算出所测的电容值,由LCD1602显示出来 。
5 系统的测试
表1 电容测试数据
6 结束语
设计的电容测试仪硬件采用555定时器作为信号采集模块、AT89S51单片机作为信号处理器模块,软件采用Keil4.0为仿真平台,使用C语言编程编写了运行程序 。其具有性能稳定、精度高、操作简单、功耗低等优点 。经测试表明:其可以测试1.0nF-10.0uF范围的电容,误差小于0.5% 。误差产生主要原因与电路元件参数、测试环境、测试方法等因素有关 。
推荐阅读
- 基于AT89C51SND1C单片机的MP3播放器设计
- 单片机常用功能模块的使用-定时器
- 单片机倒计时定时器
- 基于MCS51设计的概念版的信号发生器
- 基于TMS320C6711-150 DSK板对Flash存储器实现编程
- 软件定时器实现原理、测试及应用设计
- 基于GSM网络的汽车防盗报警系统设计
- 基于单片机的占先式实时内核的设计与实现
- HT for Web 自主研发强大的基于 HTML5 的 2D、3D 渲染引擎
- 基于AT89C2051单片机的VCN-MIO智能节点模板电路设计