首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 维修教程知识 > 单片机栏
基于AT89C2051单片机的数字电容表设计
来源:本站整理  作者:佚名  2009-11-16 09:49:15



设计任务
   
设计并制作一个数字电容表,系统实现的功能及要求如下:
    (1)设计的电容表可测量容量小于2μF的电容。
    (2)设计的电容表采用3位半数字显示,最大显示值为1 999。
    (3)设计的电容表读数单位统一采用nF,量程分4档,实际电容值为读数乘以相应的倍率。

2 方案论证
2.1 电路方案
    (1)方案一:基本电路搭建
    用基本电路来实现数字显示的电容表,电路结构复杂,故障系数大,不易调试,误差也较大。
    (2)方案二:单片机编程
    用单片机设计电路,由于使用软硬件结合的方式,所以电路结构简单、调试也相对方便。与第一种方案比较优点是非常明显的。
2.2 显示方案
    (1)方案一:静态显示
    静态显示,显示驱动电路具有输出锁存功能,单片机将所要显示的数据送出后就不用再管,直到下一次显示数据需要更新时再传送一次数据。
    此方案编程容易,管理简单,显示亮度高,显示数据稳定,占用很少的CPU时间。但是引线较多,线路复杂,硬件成本较高。
    (2)方案二:动态显示
    动态显示需要CPU时刻对显示器件进行数据刷新,显示数据会有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。
    这两种显示方式各有利弊,静态显示虽然数据稳定,占用很少的CPU时间,但每个显示单元都需要单独的显示驱动电路,使用的硬件较多;动态显示虽然有闪烁感,占用的CPU时间多,但使用的硬件少,能节省线路板空间。
2.3 系统框图
    根据上述分析,该系统以AT89C2051单片机为核心,系统框图如图1所示。

3 AT89C205l简介
    AT89C2051是Atmel公司生产的低电压、高性能CMOS 8位单片机,片内含2 KB可反复擦写的只读程序存储器(EPROM)和128 B的随机数据存储器。器件采用AtmeI公司的高密度、非易失性存储技术生产,兼容标准MCS51指令系统,片内置通用8位中央处理器和FLASH存储单元。AT89C2051作为AT89C51的简化版虽然去掉了P0,P2等端口,使I/O口减少了,但是却增加了一个电压比较器,因此其功能在某些方面反而有所增强。引脚图如图2所示。

4 电路工作原理
   
该数字电容表以电容器的充电规律作为测量依据,测试原理见图3。电源电压E+经电阻R给被测电容CX充电,CX两端原电压随充电时间的增加而上升。当充电时间t等于RC时间常数τ时,CX两端电压约为电源电压的63.2%,即0.632E+。数字电容表就是以该电压作为测试基准电压,测量电容器充电达到该电压的时间,便能知道电容器的容量。例如,设电阻R的阻值为1 kΩ,CX两端电压上升到0.632E+所需的时间为1 ms,那么由公式τ=RC可知CX的容量为1微法。具体测量电路如图4所示。

    图4中,A为AT89C2051内部构造的电压比较器,AT89C2051的P1.0和P1.1口除了作为I/O口外,还有一个功能是作为电压比较器的输入端,P1.0为同相输入端,P1.1为反相输入端,电压比较器的比较结果存入P3.6口对应的寄存器。电压比较器的基准电压设定为0.632E+,在CX两端电压从0升到0.632E+的过程中,P3.6口输出为0,当电池电压CX两端电压一旦超过0.632E+时,P3.6口输出变为1。以P3.6口的输出电平为依据,用AT89C2051内部的定时器T0对充电时间进行计数,再将计数结果显示出来即得出测量结果。
    整机电路见图5。电路由单片机电路、电容充电测量电路和数码显示电路等部分组成。

    AT89C2051内部的电压比较器和电阻R2~R7等组成测量电路。其中R2~R5为量程电阻,由波段开关S1选择使用,电压比较器的基准电压由5 V电源电压经R6,RP1,R7分压后得到,调节RP1可调整基准电压。当P1.2口在程序的控制下输出高电平时,电容Cx即开始充电。量程电阻R2~R5每档以10倍递减,故每档显示读数以10倍递增。由于单片机内部P1.2口的上拉电阻经实测约为200 kΩ,其输出电平不能作为充电电压用,故用R5兼作其上拉电阻,由于其他三个充电电阻和R5是串联关系,因此R2,R3,R4应由标准值减去1 kΩ,分别为999 kΩ,99 kΩ,9 kΩ。由于999 kΩ和1 MΩ相对误差较小,所以R2还是取1 MΩ。
    数码管DS1~DS4、电阻R8~R14等组成数码显示电路。本机采用动态扫描显示的方式,用软件对字形码译码。P3.0~P3.5,P3.7口作数码显示七段笔划字形码的输出,P1.3~P1.6口作四个数码管的动态扫描位驱动码输出。在此采用了共阴数码管,由于AT89C2051的P1.3~P1.6口有25 mA的下拉电流能力,所以不用三极管就能驱动数码管。R8~R14为P3.0~P3.5,P3.7口的上拉电阻,用以驱动数码管的各字段,当P3的某一端口输出低电平时其对应的字段笔划不点亮,而当其输出高电平时,则对应的上拉电阻即能点亮相应的字段笔划。

[1] [2]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)
Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:84,929.69000 毫秒