APP下载

一种基于STC10F08XE的数字电压表设计

2014-09-11张红娟

湖北工业大学学报 2014年1期
关键词:电压表按键单片机

邹 玲,张红娟

(湖北工业大学电气工程学院,湖北武汉 430068)

一种基于STC10F08XE的数字电压表设计

邹 玲,张红娟

(湖北工业大学电气工程学院,湖北武汉 430068)

围绕数字电压表的A/D转换、数据处理、显示和按键控制、通信等模块进行分析。其中A/D转换器采用芯片CS5460A对输入信号进行转换,并通过控制核心芯片STC10F08XE对转换的结果进行运算和处理,并驱动数显装置输出数字电压信号。同时可以通过按键修改参数并进行设置。

STC10F08XE;A/D转换;CS5460A;数字电压表

随着电子技术的高速发展,数字电压表已成为一种必不可少的测量仪器,广泛运用于电子、电工测量,自动化计测系统等领域。本设计是在以单片机STC10F08XE为控制中心的基础上设计的数字电压表,硬件电路简易,具有方便读数,使用误差小,稳定性好等特点,对于日常的简单测量具有较高的应用价值。

1 系统设计方案

本设计通过对数字电压表的功能要求进行分析,可以将其分为A/D转换模块、单片机控制模块、显示模块、按键模块和通信模块五部分。A/D转换模块采用CS5460A作为转换芯片[1],其作用是对待测电压进行采样分析,将模拟信号转换成24位的二进制数,并通过端口P3.5和P3.6将二进制数送至单片机控制模块。单片机控制模块的核心采用STC10F08XE,其作用是对A/D转换模块传输来的数据进行分析处理,从而驱动显示模块的数码管对测量结果进行显示[2]。系统设计框图见图1。

图1 数字电压表系统框图

2 各部分功能模块硬件设计

2.1 单片机控制电路

用单片机STC10F08XE作为系统主控电路部分(单片机控制电路见图2),可以将CS5460A所采集到的数据进行运算和控制,并对数码管及按键进行控制,它可以在提高精度的同时使控制电路变得简单,并且有利于实现对数据的交换和智能化控制。

图2 单片机控制电路

2.2 A/D转换电路

本文采用的A/D转换芯片是CS5460A(A/D采样电路见图4),该芯片是高度集成的ΔΣ模拟-数字转换器,它将两个ΔΣA/D,高速能量计算功能和一个串行接口集成在一个单芯片上[3]。它用于精确测量和计算:单相2线或3线功率表的能量,瞬间功率,IRMS和VRMS。CS5460A可以使用低成本的分流器或互感器测量电压或电流。本文采用2mA∶2mA的电流型精密微型电压互感器(电压互感电路见图3),输入输出电流比为1∶1,由于输入电压为20VAC,因此将电压互感器的二次侧电阻R28的阻值设为20K,这样就能够保证留有足够的余量,避免器件被烧坏。在给CS5460A的电压采样通道输入信号时,将电阻R1设为51Ω,这是因为CS5460A电压采样通道的输入信号范围是0~250 mV,而最大的不饱和正弦波电压输入信号的典型值应为250mV/sqrt(2)=176.78mV,为了避免超出满量程的70.7%,将R1设为51Ω。

图3 电压互感电路

图4 CS5460A电路

2.3 按键和显示电路

本文采用了四位共阳极数码管,其中P0口控制数码管的段码设置,位码分别通过P4.1,P4.4,P4.5和P4.6口控制,可以显示出所测量的数值。四个按键set,left,up和down键则是对电压表进行参数设置,分别通过P2.4,P2.5,P2.6和P2.7控制。其电路原理见图5。

图5 按键和显示电路

2.4 通信电路

本设计以单片机自带的异步通信接口,外接75176芯片转换成485总线。为了实现总线与单片机系统的隔离,在单片机的异步通信口与75176之间采用光耦隔离。电路原理见图6。通过P4.3口对485通信进行控制[4]。当P4.3口为低电平时,为读状态。本设计默认的波特率为4 800bps,可以通过按键修改波特率,其通信协议见表1。

表1 通信协议

图6 RS485接口通信电路

3 软件设计

3.1 A/D的初始化程序和数据采样的读取程序

CS5460A在工作前必须进行系统初始化,选择K为1,N为4000,电压有效值的计算以1Hz的频率进行计算,每个计算周期结束后,最新的值将存入相应的寄存器中,等待MCU进行读取。CS5460A与单片机接口简单,但初始化的寄存器命令较多,在初始化时需要特别注意。在初始化编程中,可以分模块进行编程,使用时调用,并进行调试,这样可确保程序运行的准确可靠。CS5460A的初始化程序见图7。图8则为CS5460A的数据采集子程序,在采集数据前,都需要对CS5460A进行读/写,在读/写程序之前,都需向CS5460A发送8字节的命令字,CS5460A根据所发的命令字判断是读或写操作,当判别完成后,发送24字节的数据位给单片机,再通过发送命令来计算有效值,并通过单片机读出所发出的数据。

图7 CS5460A初始化流程图

图8 数据采集子程序

3.2 按键程序

图9为按键子程序,当按下set键大于3S后,则进入密码设置子目录中,通过left,up和down键输入1111,进入各种参数设置,可以重新设置密码,电压的变比PT,实现宽范围的测量,以及电压的上下限报警,波特率和通信地址的修改。

图9 按键子程序

4 测试结果分析

测试结果如表2所示,通过对表中结果的分析,测量的精度较高,稳定性强,误差小于0.2%。该电压表的最大输入电压为20VAC,并可以通过调节电压变比,进行宽范围测量,现已将该电路做成成品,广泛应用于测量交流电压。

表2 电压表测试数据表V

5 结论

本设计是以单片机STC10F08XE为控制核心,CS5460A为A/D转换芯片,四位数码管显示的四位交流数字电压表,使用误差在0.2%左右,电路设计简洁、使用方便、测量灵敏度高、精度可靠,适用于交流电压的测量,具有一定的使用价值,现已投入生产。实物见图10所示。

图10 电压表实物图

[1] 郝建国,郑 燕,薛延侠.单片机在电子电路设计中的应用[M].北京:清华大学出版社,2006:258-295.

[2] 唐彬夏,许建明.基于单片机的数字电压表设计[J].设计与应用,2013(01):132.

[3] 徐小军,陈跃东.基于CS5460A的三相智能电能表的设计[J].安徽工程科技学院学报,2010,25(03):27-30.

[4] 余旺新.RS485远程通信电路系统设计[J].计算机与网络,2009(10):621-622.

[责任编校:张岩芳]

The Design of a Digital Voltmeter Based on a MCU of STC10F08XE

ZOU Ling,ZHANG Hong-juan
(School of Electrical﹠Electronic Engin.,Hubei Univ.of Tech.,Wuhan 430068,China)

This study analysed the digital voltmeter including A/D conversion,data processing,display and button control and communication.The A/D converter adopted chip CS5460Ato transform the input signal,and computed and processed the results of A/D conversion by controlling the core chip STC10F08XE,and drove the digital display device output voltage signal.At the same time,the parameters could be modified by set buttons.This voltmeter has high accuracy,reliable performance and low cost.

STC10FXE;A/D conversion;CS5460A;digital voltmeter

TH7

A

1003-4684(2014)01-0016-04

2013-08-29

邹 玲(1962-),女,湖北武汉人,湖北工业大学教授,研究方向为电磁场数值计算与电网络分析

猜你喜欢

电压表按键单片机
如何判断电压表的测量对象
基于有限状态机的按键检测程序设计
判断电压表测量对象有妙招
基于单片机的SPWM控制逆变器的设计与实现
基于单片机的层次渐变暖灯的研究
基于单片机的便捷式LCF测量仪
按键消抖在单片机和FPGA实验教学中的应用
一种多方向导光按键结构设计
电压表的妙用
再探电压表内阻的测量方法