基于PC的数字电压表设计

出处:何以解忧 发布于:2006-08-16 15:26:03

      数字电压表的设计和开发,已经有多种类型和款式。传统的数字电压表各有特点,它们适合在现场做手工测量,要完成远程测量并要对测量数据做进一步分析处理,传统数字电压表是无法完成的。然而基于PC通信的数字电压表,既可以完成测量数据的传递,又可借助PC,做测量数据的处理。所以这种类型的数字电压表无论在功能和实际应用上,都具有传统数字电压表无法比拟的特点,这使得它的开发和应用具有良好的前景。

新型数字电压表的整机设计

      该新型数字电压表测量电压类型是直流,测量范围是-5~+5V。整机电路包括:数据采集电路的单片机化设计、单片机与PC接口电路、单片机时钟电路、复位电路等。下位机采用AT89S51芯片,A/D转换采用AD678芯片。通过RS232串行口与PC进行通信,传送所测量的直流电压数据。整机系统电路如图1所示。

数据采集电路的原理

      在单片机数据采集电路的设计中,做到了电路设计的化,即没用任何附加逻辑器件做接口电路,实现了单片机对AD678转换芯片的操作。

      AD678是一种的、多功能的12位ADC,由于其内部自带有采样保持器、高参考电源、内部时钟和三态缓冲数据输出等部件,所以只需要很少的外部元件就可以构成完整的数据采集系统,而且A/D转换仅需要5ms。

      在电路应用中,AD678采用同步工作方式,12位数字量输出采用8位操作模式,即12位转换数字量采用两次读取的方式,先读取其高8位,再读取其低4位。根据时序关系,在芯片选择/CS=0时,转换端/SC由高到低变化,即可启动A/D转换。再查询转换结束端/EOC,看转换是否已经结束,若结束则使输出使能/OE变低,输出有效。12位数字量的读取则要控制高字节有效端/HBE,先读取高字节,再读取低字节。整个A/D操作大致如此,在实际开发应用中调整。


图1 数字电压表的电路图

       由于电路中采用AD678的双极性输入方式,输入电压范围是-5~+5V,根据公式Vx=10(V)/4096*Dx,即可计算出所测电压Vx值的大小。式中Dx为被测直流电压转换后的12位数字量值。

RS232接口电路的设计

      AT89S51与PC的接口电路采用芯片Max232。Max232是德州仪器公司(TI)推出的一款兼容RS232标准的芯片。该器件包含2个驱动器、2个接收器和1个电压发生器电路提供TIA/EIA-232-F电平。Max232芯片起电平转换的功能,使单片机的TTL电平与PC的RS232电平达到匹配。

      串口通信的RS232接口采用9针串口DB9,串口传输数据只要有接收数据针脚和发送针脚就能实现:同一个串口的接收脚和发送脚直接用线相连,两个串口相连或一个串口和多个串口相连。在实验中,用定时器T1作波特率发生器,其计数初值X按以下公式计算:

波特率=*(T1的溢出率)


=*


      串行通信波特率设置为1200b/s,而SMOD=1,fosc=6MHz,计算得到计数初值X=0f3H。在编程中将其装入TL1和TH1中即可。

      为了便于观察,当每次测量电压采集数据时,单片机有端口输出时,用发光二极管LED指示。

软件编程

      软件程序主要包括:下位机数据采集程序、上位机可视化界面程序、单片机与PC串口通信程序。单片机采用C51语言编程,上位机的操作显示界面采用VC++6.0进行可视化编程。在串口通信调试过程中,借助“串口调试助手”工具,有效利用这个工具为整个系统提高效率。

单片机编程

      下位机单片机的数据采集通信主程序流程如图2所示、中断子程序如图3所示、采集子程序如图4所示。单片机的编程仿真调试借助WAVE2000仿真器,本系统有集成的ISP仿真调试环境。


图2 单片机采集通信主程序

      在采集程序中,单片机的编程操作要完全符合AD678的时序规范要求,在实际开发中,要不断加以调试。将下位机调试成功而生成的.bin文件固化到AT89S51的Flash单元中。

   
图3 中断服务子程序             图4 采集子程序

人机界面编程

      打开VC++6.0,建立一个基于对话框的MFC应用程序,串口通信采用MSComm控件来实现。其他操作此处不赘述,编程实现一个良好的人机界面。数字直流电压表的操作界面如图5所示。运行VC++6.0编程实现的Windows程序,整个样机功能得以实现。

功能结果

      根据上面所述工作原理及实施方案,在实践中很好地实现了整个样机的功能,各项指标达到了预先的设计要求。电路工作稳定,每次测量均伴有LED发光指示,可视化界面显示也正常。


图5 数字电压表的人机界面

      AD678转换是12位,它的分辨率为1/4096。这为整机系统的高提供了保障。为了提高测量,运用了AD678自带的校准电路,这样使其A/D转换更高。在实际测量中,整机测量达到了0.8%。



  

参考文献:

[1]. AT89S51 datasheet https://www.dzsc.com/datasheet/AT89S51_970858.html.
[2]. AD678 datasheet https://www.dzsc.com/datasheet/AD678_1055407.html.
[3]. RS232 datasheet https://www.dzsc.com/datasheet/RS232_585128.html.
[4]. Max232 datasheet https://www.dzsc.com/datasheet/Max232_1074207.html.
[5]. TTL datasheet https://www.dzsc.com/datasheet/TTL_1174409.html.


关键词:电压

版权与免责声明

凡本网注明“出处:维库电子市场网”的所有作品,版权均属于维库电子市场网,转载请必须注明维库电子市场网,https://www.dzsc.com,违反者本网将追究相关法律责任。

本网转载并注明自其它出处的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品出处,并自负版权等法律责任。

如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。

广告
上传BOM文件: BOM文件
*公司名:
*联系人:
*手机号码:
QQ:
应用领域:

有效期:
OEM清单文件: OEM清单文件
*公司名:
*联系人:
*手机号码:
QQ:
有效期:

扫码下载APP,
一键连接广大的电子世界。

在线人工客服

买家服务:
卖家服务:

0571-85317607

客服在线时间周一至周五
9:00-17:30

关注官方微信号,
第一时间获取资讯。

建议反馈

联系人:

联系方式:

按住滑块,拖拽到最右边
>>
感谢您向阿库提出的宝贵意见,您的参与是维库提升服务的动力!意见一经采纳,将有感恩红包奉上哦!