毕业设计(论文)基于89C52单片机的数字式工频有效值多用表设计

上传人:仙*** 文档编号:29201685 上传时间:2021-10-01 格式:DOC 页数:47 大小:1.33MB
收藏 版权申诉 举报 下载
毕业设计(论文)基于89C52单片机的数字式工频有效值多用表设计_第1页
第1页 / 共47页
毕业设计(论文)基于89C52单片机的数字式工频有效值多用表设计_第2页
第2页 / 共47页
毕业设计(论文)基于89C52单片机的数字式工频有效值多用表设计_第3页
第3页 / 共47页
资源描述:

《毕业设计(论文)基于89C52单片机的数字式工频有效值多用表设计》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于89C52单片机的数字式工频有效值多用表设计(47页珍藏版)》请在装配图网上搜索。

1、徐州师范大学生毕业设计 数字式工频有效值多用表目 录摘要 Abstract1 绪论1 1.1 数字式工频有效值多用表的功能1 1.2 数字式工频有效值多用表的研究背景1 1.3 数字式工频有效值多用表开发意义22 总体方案论证33 硬件设计5 3.1 放大电路设计5 3.2 数据采集电路设计8 3.3 相角测量电路设计13 3.4 键盘/显示电路设计13 3.5 看门狗电路设计16 3.6 数字式工频有效值多用表的工作原理18 3.7 单片机的选用194 软件设计21 4.1 数字式工频有效值多用表的总流程图21 4.2 交流信号的相角测量22 4.3 交流信号的采集程序23 4.4 计算电压

2、、电流有效值程序24 4.5 功率因数子程序-28 4.6 看门狗子程序29 4.7 键盘/显示子程序30 4.8 数字式工频有效值多用表的自检32 4.9 数字式工频有效值多用表的自动量程转换37结论39致谢40参考文献41摘 要本次设计的数字式工频有效值多用表采用 89C52单片机作为核心 ,充分利用其内部的 8KB程序存储器和 256B的数据存储器来进行数据的实时采样与处理;外围使用12位的A/D转换器可使测量精度高;利用数字电位器实现增益自动控制,从而满足各种量程的测量精度。该表可测量电压有效值、电流有效值、有功功率、无功功率、功率因数等参数 。本文首先介绍了数字式工频有效值多用表的作

3、用,描述了系统的设计过程,给出了系统的组成框图及各部分的原理图;说明了核心部件数字式电位器X9241的结构、性能特点;简述了交流采样法的原理及实现过程;对系统的软件设计也进行了叙述,给出了部分软件流程图。该数字式工频有效值多用在器件上尽量做到使硬件线路简单,充分利用软件编程,弥补元器件的精度的不足。关键词: 多用表 单片机 数字电位器 交流采样 AbstractThe design of power frequency RMS DMM based on AT89C52 microcomputer. Data gathering and calculating only depend on th

4、e inner 8KB code-RAM and 256B data-RAM of 89C52.The exterior 12bit A/D and digital electric-device improve the precision, can measure effective value of voltage and effective value of electric current, active power, reactive power, power factor and so on.In this paper, the functions of digital alter

5、nating current parameter Multi-function meter are introduced. The system design process is described. The constitute frame diagram and each part on-lines diagram are given. The construction and function characteristics of core digitally controllable variable resistors X9241 are elucidated. The princ

6、iple with realized process of AC sampling methods are described in brief. The software design of system is described also. The part software blocks are given.The digital DMM spent on devices do as much as a simple hardware circuits, and make full use of software programming, Components make up for t

7、he lack of accuracy. Due to limited, and there is a need to improve the design of the paper. For example, before using high precision components, and measurement algorithm further perfect. Keywords : DMM single chip microcomputer Digital potentiometer Exchange sampling1 绪 论1.1 数字式工频有效值多用表的功能本设计实现了一个

8、多功能的数字多用表。此表除了能测直流电压,直流电流,还利用单片机的控制、运算功能,根据离散积分公式,基于对电力系统参数进行交流采样的思想,实现了同时对一路工频交流电的频率、电压有效值、电流有效值的测量。用软件计算出有功功率、无功功率、功率因数、利用数字电位器,使系统具有自校准、自动量程转换功能。系统充分发掘了单片机的运算能力,以软件代替硬件电路,使硬件电路大大简化。本系统利用了数字电位器调节准确方便,使用寿命长,受外部环境影响小,性能稳定等特点。1.2 数字式工频有效值多用表的研究背景所谓数字式仪表,就是将被测对象离散化、数据处理后以数字式显示的仪表。第一台数字仪表出现于20世纪50年代初,之

9、后随着电子技术的迅速发展,数字式仪表与数字化测量技术获得了迅速的发展。目前国内外已生产有许多种测量并具有很宽技术特性范围的数字仪表,如电压表、电流表、功率表、电能表、计数器、万用表、频率计等。数字仪表与模拟式指示仪表相比具有很多优点。比如:准确度高、灵敏度高、输入阻抗高、操作简单、测量速度快等。数字式仪表目前主要缺点是:结构复杂、成本高、维修困难、观察动态过程不直观。但是,随着电子工业的发展,大规模集成电路工艺水平的提高,数字式仪表的上述缺点将越来越小。从模拟到数字,从单一通道到综合多通道测量的发展,从单个仪表向测量信息系统过度,将各种电学量和非电学量变换成统一量(时间、频率、直流电压)后进行

10、测量等,是近十年来测量技术发展的主要趋势。按仪器出现的先后顺序和先进性,可将仪器仪表划分为三大类产品。第一类产品是模拟式仪器仪表。这种仪表至今仍在广泛地使用着。比如指针式的电压表、电流表、功率表等。第二类产品是数字肢仪器仪表,它在准确度和灵敏度等方面都远远优于模拟式仪表。这类仪器仪表的基本工作原理是将模拟量变为数字量,采用逻辑运算硬件电路实现测量功能。这类仪器仪表的发展很快,目前正在各个领域被广泛地使用。第三类产品是智能仪器仪表,它的基本原理是借助计算机(PC)采用软件替代部分硬件实现逻辑运算与数据传输、存储等功能,所以也被称之为微机化仪器仪表。它具有数据采集、显示数字处理及优化和控制功能。智

11、能仪器仪表将朝着开放仪器的体系结构(PC仪器系统)和虚拟仪器方向发展,是今后一个时期仪器仪表发展的一个重要方向。1.3 数字式工频有效值多用表的开发意义与普通的模拟多用表相比,数字式多用表的测量功能较多,它不但能测量直流电压、直流电流等参数,而且能测量交流电压、交流电流、功率、功率因数等。除测量功能外,还有自动量程转换、自检等功能。普通多用表具有电路简单、成本低、测量、使用方便等特点。但测量精度较差,它的使用和发展受到了一定的限制。而数字式多用表具有很高的灵敏度和准确度,显示清晰直观、功能齐全、性能稳定、可靠性好、省电、小巧轻便等优点。由于数字式多用表具有很多优点,因此,得到了迅速发展和普及,

12、具有开发的意义。2 总体方案论证方案一:系统采用对电压、电流信号分别测量,测量功率时则将电压、电流信号取出,然后进行功率计算,原理框图如图2-1所示。整个系统是采用模拟控制方式,硬件电路实现复杂,功率因数测量难以实现,系统还不能实现复杂的控制算法。图2-1 方案一原理框图方案二:采用89C52单片机来实现。单片机软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。 多用表的组成框图如图2-2所示。由四组开关来决定直流电压,直流电流,交流电压,交流电流的输入.直流部分,直流电压,直流电流经过分压后经A/D转换后送入单片机,由单片机计算电压,电流的有效值以及功率.交流部分,交流信号放大

13、后,一方面由过零比较电路转为方波信号,由单片机计数器测量出信号周期和测量出电压、电流之间的相位差;同时电压、电流信号经A/D采样转换后送入单片机。单片机系统在每个信号周期内分别采样N个电压、电流值,根据离散积分公式计算出电压、电流的有效值以及有功功率、无功功率、功率因数。在测量过程中,单片机系统根据不同的信号有效值,自动改变数字电位器的参数,以改变信号放大倍数,使系统对信号采样保持在最佳线性状态,保证了测量的精度。比较以上两种方案,方案一是模拟控制方式,而模拟控制系统难以实现复杂控制和计算,控制方案的改善也较麻烦。方案二是采用以89C52为控制核心的单片机控制系统,可以实现显示、打印、与微机通

14、讯等功能,大大提高了系统的智能化,并且系统所测结果的精度有很大提高。故经过对两种方案的比较,本设计及制作采用了方案二。图2-2 多用表的组成框图3 硬件设计3.1 放大电路设计3.1.1 放大电路的方案比较方案一:采用集成运放芯片OP07对电压、电流信号进行放大处理,如图3-1所示:图3-1 信号放大电路可根据理论公式进行计算选择不同的阻值就可以选择不同的放大倍数。R1选用4K,R2选用1K,R3选用0.8K时,放大倍数可以达到5倍,但是由于系统的影响,放大倍数不能达到准确的倍数,并且这种放大处理不能同时满足对大小信号的处理,在放大器的前端还要加上一个电压比较电路把电压信号和基准电压进行比较,

15、电压大于1V时则不需要放大处理。方案二 电路如图3-2所示,以数字电位器X9241作为运算放大器OP-07的反馈电阻,这样可根据输入信号的幅度大小,选择不同的放大倍数,实现量程的自动转 换。芯片X9241具有四个非易失性数控电位器单元,每个单元有63个可以被滑动单元访问的抽头点,单片机可通过X9241的串行接口(SCL,SDA)改变任意一个电位器的输出阻值。在本系统中,通过对不同信号幅度的判断,来调整X9241的电阻值,使运算放大器的放大倍数改变,保证系统工作于最佳线性状态,并实现了量程的自动转换。这样能同时满足对大小信号的处理,硬件电路简单,容易实现。 本设计采用了这种方案。图 3-2 信号

16、放大电路3.1.2 数字电位器X92411. X9241概述X9241是在单一芯片上集成了4个10k数字电位器,每个电位器的滑动端共有64个离散的调节节点,并有4个8bit的E2PROM数据寄存器以及一个滑刷控制寄存器(WCR)。可以通过相应指令使电位器的WCR(滑刷控制寄存器)与某个数据寄存器相关联,也可以直接控制WCR以达到改变电位器滑动端位置的目地。X9241芯片具有I2C总线接口,可以实现寄存器映射、改变滑刷位置以及进行电位器级联等操作。X9241采用20引脚双列直插封装。其中VWi(i03)为四个独立的10k电位器的滑动端;VLi(i03)分别为四个电位器的两个终端;A3,A2,A1

17、,A0为X9241芯片的设备地址;SCL,SDA分别为I2C接口的串行时钟和串行数据线。X9241的工作电压为5V。2. X9241的结构原理 a.电阻阵列X9241内部包括一个I2C接口和四个数字电位器。每个数字电位器由电阻阵列及与之对应的滑动端计数寄存器WCR、四个8位数据寄存器R0R3等部分构成。电阻阵列。每个电阻阵列由63个串联连接的分立的电阻段组成。每个电阻阵列的物理终端等效于机械电位器的固定端(VH和VL输入端)。每个阵列的VH和VL以及每个电阻段之间的接点(即抽头)通过FET开关连接滑动输出端VW;而滑动端VW在电阻阵列中的位置由WCR控制。 X9241引脚VW0、VW1、VW2

18、及VW3分别为四个电位器的滑动端;VL0、VL1、VL2及VL3分别为四个电位器的低端;VH0、VH1、VH2及VH3分别为四个电位器的高端;A0、A1、A2及A3为地址线(用来设置从属地址低4位);SDA及SCL分别为串行数据和串行时钟;VCC及VSS分别为电源和地b.滑动端计数寄存器WCR滑动端计数寄存器WCR实际上是一个6位带有译码输出的计数器,用来实现选择六十四选一的FET开关的位置,即控制滑动端在电阻阵列中的位置。WCR是一种易失性存贮器,其内容可通过指令改写,上电时装入数据寄存器R0的内容。 c.数据寄存器数据寄存器的内容可由用户读出或写入,其内容可传输到滑动计数寄存器WCR以设置

19、滑动端的位置。每个数字电位器有四个8位非易失性数据寄存器R0R3d.串行接口X9241支持I2C串行双向总线的定向规约:实际应用时X9241为从器件,由主机启动数据的传输,并为发送和接收操作提供时钟3. X9241的主要参数 X9241的主要性能参数如下: SCK,SCL或其它地址输入端相对于Vss的电压为17V; VH或VL相对于Vss的电压范围为8V; VVHVL为16V; X9241工作电压范围为5V10。因为VH或VL相对于VSS的电压范围是8V,所以X9241可以不受数字电 路05V电源窗口的制约而广泛地应用于各种具有正负电源的模拟电路。3.2 数据采集电路设计3.2.1 数据采集电

20、路的方案比较方案一:因为要测出功率值,所以一个周期内要对交流电压、电流信号同时取点采样。用单片机对信号进行测量时,程序运行需要占用时间,因而不能对电压、电流信号进行同时测量,只能分开测量,先在一个周期测电压值,再在下一个周期测电流值。方案电路简单,全部通过软件实现。但所测值与实际值有误差。因为所测电压、电流信号不为同步信号,功率值也有误差。方案二:电路如图3-3所示,通过模拟开关MC14051选择输入信号,同时为了减小采样的孔径时间引起的孔径,在A/D转换器之前加一个采样/保持电路LF398,该芯片具有采样速率高,保持电压下降慢和精度高等特点,电压信号送至A/D转换器AD574,其间以跟随器隔

21、离,这样整个电路系统避免了采样的孔径时间以及器件间影响引起的误差,保证了系统测量精度。此设计采用了这种方案。图3-3 采样/保持电路3.2.2 模拟开关CD4051多路开关的主要用途是把模拟信号分时地送入A/D转换器,或者把经计算机处理后的数据由D/A转换器转换成的模拟信号,按一定的顺序输出到不同的控制回路中去。前者 称为多路开关,完成多到一的转换;后者称为反多路开关或多路分配器,完成一到多的转换。多路开关的种类很多,例如CD4051(双向8路)、CD4066(4路单向)、CD7501(单向8路)、 CD4052(单向,差动,4路)等等。所谓单向,就是既可以实现多到一的转换,也可以完成一到多的

22、转换。而单向则只能完成多到一的转换。差动即同时有两个开关动作,从而完成差动信号的传输。CD4051是双向8通道多路开关。它由电平转换译码/驱动和开关电路三部分组成,其中电平转换可实现COMS到TTL逻辑电平的转换,因此,加到通道选择输入的控制信号的电平幅度可为3V20V.同时,最大模拟信号的峰值可达20V。CD4051带有三个通道选择输入端A,B,C和一个禁止端。当CBA为000111B时,可产生8选1控制信号,使8路通道中的某一通道的输入和输出接通。当INH为0是,允许通道接通;当INH为1是,禁止通道接通。其真值表如表2-1所示。改变CD405的 IN/OUT 07及OUT/IN的传递通道

23、方向,可用做多路开关和反多路开关。表3-1 CD4051真值表INHC B A接通通道号0000IN00001IN10010IN20011IN30100IN40101IN50110IN60111IN71XXX-通常在单组电源供电条件下工作的CMOS电路所提供的数字信号能直接控制这种多路开关,并使这种多路开关可传输峰此外,CD4051还设有另外一个电源端VEE,以作为电平位移时使用,从而使得峰值达15V的交流信号。例如,若模拟开关的供电电源VDD=5V,VSS=0V,当VEE=5V时,只要对此模拟开关施加05V的数字控制信号,就可控制幅度范围为5V5V的模拟信号。3.2.3 采样/保持器 LF3

24、98 1. 功能 在A/D转换器对模拟信号进行转换的过程中,需要有一定的稳定时间,为了保证A/D转换的精度,在转换时间内模拟信号应保持在采时的幅度不变,因此,在转换器的前端应加入采样/保持电路(S/H)。如果输入模拟量是直流量或者被测信号模拟量随时间变化缓慢,S/H电路也可以省去。2. 工作原理采样/保持电路有采样和保持两种运行状态 ,其原理由图 说明。图2-6中,电容C为保持电容,运放A1和A2都接成跟随器,其运行状态由方式控制端来决定。在采样状态下采样命令通过方式控制输入端控制S闭合,由于跟随器A1的 隔离作用,输入模拟电压以很快的速度给C充电,输出随输入变化。在保持状态下,控制 S打开,

25、此时由于跟随器 A2的隔离作用,电容C两端的电压(即输出电压)将保持在命令出时的输入电压不变,直到新的采样命令到为止。 图 3-4 采样/保持电路3. 采样/保持的技术指标孔径时间(Tap):孔径时间是指发出保持指令到开关真正打开所需要的时间。这一延迟回产生一个幅度误差(称孔径误差),显然,输入信号频率愈低,孔径误差愈小,则孔径时间对转换精度影响就愈小。孔径时间一般在10ns20ns量级。捕捉时间(Tac):所谓捕捉时间是指从开始采样至采样保持器输出达到当前输入信号的值所需要的时间。它与保持电容器的电容值,放大器的频响时间以及输入信号的变化幅度有关。显然,A/D转换的采样时间必须大于捕捉时间,

26、才能保证采样阶段充分地采集到输入模拟信号。一般采样/保持电路0.01%的捕捉时间在300ns15s。保持电压的下降:保持电压的下降是指在保持状态下,由于保持电容的漏电流和其他漏电流而引起的保持电压的下降,其值一般在0.1V/s1V/s。馈送:馈送是指在保持期间由于输入信号电压变化而引起输出电压变化的程度,其值一般在0.01%0.001%。因而仅对高精度的A/D转换器有影响。电压增益精度:电压增益精度是指当环境和电源变化时,电压增益可以保持的精度。4. LF398采样保持器LF398价格低廉,在国内应用非常广泛。它有8个引脚,结构框图如3-5所示:图3-5 LF398的结构图2脚接1k电阻,用于

27、调节漂移电压,7脚和8脚是两个控制端,控制开关的关断。7脚接参考电压,8脚接控制信号。参考电压应根据控制信号的电平来选择。如7脚接地,则8脚接控制信号大于14V时,LF398处于采样状态;如8脚为低电平, 则LF398处于保持状态。6脚外接保持电容,它的选取对采样保持电路的技术性能指标至关重要,大电容可使系统得到较高精度,但采样时间加长。小电容可提高采样频率,但精度较低。3.2.4 12位A/D转换器A/D574A/D574是12位快速逐次比较式A/D转换器,其最快转换时间为25s,转换误差为1LSB。AD574具有下述几个基本特点:片内含有基准电压的时钟电路等,因而外围电路较少;数字量输出具

28、有三态缓冲器,因而可直接微处理器接口;模拟量输入有单极性和双极性两种方式,接成单极性方式时,输入电压范围为0V10V或0V20V,接成双极性方式时,输入电压范围为5V+5V 或10V10V。 主要引脚信号定义如下:数据模式选择端,通过此引脚可选择数据纵线是12位或8位输出。 : 片选信号,低电平有效。CE: 片使能信号,高电平有效。:读/启动转换信号,高时读A/D转换结果,低时启动A/D转换。A0:A0信号具有两种含义:当为低时,A0为高,启动8位A/D转换;A0为低,启动12位A/D转换。当为高时,A0为高,输出低4位数据;A0为低,输出高8位数据。STS:工作状态信号,高表示正在转换,低表

29、示转换结果。REF IN:基准输入线。 REF OUT:基准输出线。BIP OFF:单极性补偿。DB11DB0:12位数据线。10VIN,20VIN:模拟量输入端。AD574A的CE、和A0对其工作状态的控制过程。在CE=1、=0同时满足时,AD574A才会正常工作,在AD574处于工作状态时,当=0时A/D转换,当=1是进行数据读出。和A0端用来控制启动转换的方式和数据输出格式。A0=0时,启动的是按完整12位数据方式进行的。当A0=1时,按8位A/D转换方式进行。当=1,也即当AD574A处于数据状态时,A0和控制数据输出状态的格式。当=1时,数据以12位并行输出,当=0时,数据以8位分两

30、次输出。而当A0=0时,输出转换数据的高8位,A0=1时输出A/D转换数据的低4位,这四位占一个字节的高半字节,低半字节补零。控制逻辑真值表见表3-2。 表3-2 AD574的控制逻辑真值表 CE A0操作 1 0 0 X 012位转换 1 0 0 X 18位转换 1 0 1 5V X 12位并行输出 1 0 1 接地 0输出高8位数据 1 0 1 接地 1输出低4位数据3.3 相角测量电路设计相角测量电路由过零比较器、反相器及与非门组成,电路如图3-6所示。电压、电流信号通过比较器后形成方波,分别送至单片机,引脚,由单片机计数测出其波形宽度,即可计算出周期及相位差,从而实现测量交流电频率和功

31、率因数之目的。 图3-6 相角测量电路3.4 键盘/显示电路设计3.4.1 键盘/显示电路原理图键盘/显示电路如图3-7 所示,用8255的两个端口设计的16只按键和4只七段LCD显示。16只按键的功能为测量直流电压、直流电流、交流电压、交流电流、有功功率、无功功率、功率因数,自动、手动,0.1档、1档、10档、100档、1000档,自检,复位。七段显示测量值和测试复位及自检。3.4.2 可编程并行接口82558255各引脚含义如下:D07:数据线A01:地址线,用于选择端口RD: 读控制线,低电平有效WR:写控制线,低电平有效CS:片选线,低电平有效RESET:复位信号,高电平有效。8255

32、复位后,所有I/O均处于输入状态。A口:8位数据输入锁存器和8位数据输出锁存器/缓冲器图3-7 键盘/显示电路图B口:8位数据输入锁存器和8位数据输出锁存器/缓冲器C口:8位数据输入锁存器和8位数据输出锁存器/缓冲器8255有3种工作方式,在8255中有一个控制字用来选择工作方式和A、B、C三个端口。控制字和各位含义如下:D7D6D5D4D3D2D1D0D0:C口低四位。1-输入,0-输出D1:B口。1-输入,0-输出D2:B口工作方式选择。0-方式0,1-方式1D3:C口高四位。1-输入,0-输出D4:A口。1-输入,0-输出D5:工作方式选择 3.4.3 LCD液晶显示驱动器HEF4543

33、HEF4543是一位BCD-七段译玛带数据锁存功能的驱动器,它可以驱动发光二极管LED的七段数码管,也可以驱动七段液晶显示器件。HEF4543原理框图见图3-8所示。当锁存端LD=1时,锁存器输出随数据输入端DCBA的变化而变化,当LD=0时,锁存器保存最近数据,并禁止锁存器接受数据。HEF4543还设置了显示开关信号BI。当BI=1时关显示。PH为驱动相位控制端,它连接驱动器中异或门的输入端,控制着驱动器输出的相位。HEF4543的真值表和译码表如表3-3所示。图 3-8 HEF4543原理框图表3-3 HEF4543的真值表和译码表 BI LD DCBA 显示1000x110x9 A-F

34、x无显示0-9 无显示 不变 3.5 看门狗电路设计3.5.1 看门狗电路原理图系统在运行时,通常都会遇到各种各样的现场干扰,抗干扰能力是衡量工控系统性能的一个重要指标。看门狗(Watchdog)电路是自行监测系统运行的重要保证。 看门狗电路一般有软件看门狗和硬件看门狗两种。软件看门狗不需外接硬件电路,但系统需要出让一个定时器资源,这在许多系统中很难办到,而且若系统软件运行不正常,可能导致看门狗系统也瘫痪。硬件看门狗是真正意义上的“程序运行监视器”。看门狗实际上是一个计数器,一般给看门狗一个大数,程序开始运行后看门狗开始倒计数。如果程序运行正常,过一段时间CPU应发出指令让看门狗复位,重新开始

35、倒计数。如果看门狗减到0就认为程序没有正常工作,强制整个系统复位。图3-9 看门狗电路图3-9 为AT89C52与X5045的典型接口电路。X5045与单片机的接口是通过X5045的SPI总线接口实现,由于AT89C52内部没有SPI总线接口控制器,依次通过AT89C52的P1.2、P1.3、P1.6、P1.7分别模拟SPI总线的数据输入、串行时钟、数据输出时序来实现对X5045的操作。信号一般不通过P2口选通,因为P2口工作于地址总线时,其不能保证片选持续有效。由于只能是位控方式连接,一般与单片机的P1口或P3口相接,图2-11中用的是P1.2、P1.3、P1.6 P1.7分别与X5045的

36、片选端、串行输入SI、串行时钟SLK和串行输出SO相连,二者的RESET引脚相连。按钮开关S和电阻组成复位电路,为单片机提供上电初始化和复位方式。系统时钟电路选择12MHz的晶振。3.5.2 X5045芯片X5045是一种集看门狗、电压监控和串行EEPROM 三种功能于一身的可编程电路。这种组合设计减少了电路对电路板空间的需求。X5045中的看门狗对系统提供了保护功能。当系统发生故障而超过设置时间时,电路中的看门狗将通过RESET信号向CPU 作出反应。它所具有的电压监控功能还可以保护系统免受低电压的影响,当电源电压降到允许范围以下时,系统将复位,直到电源电压返回到稳定值为止。X5045的存储

37、器与CPU 可通过串行通信方式接口,共有4096个位,可以按5128个字节来放置数据。1. 引脚介绍X5045共有8个引脚,各引脚的功能如下:CS :电路选择端,低电平有效; SO :串行数据输出端; SI :串行数据输入端; SCK:串行时钟输入端; WP :写保护输入端,低电平有效; RESET :复位输出端; VCC :电源端;VSS :接地端。2. 工作原理(1)上电复位向X5045加电时会激活其内部的上电复位电路,从而使RESET 引脚有效。该信号可避免系统微处理器在电压不足或振荡器未稳定的情况下工作。当VCC 超过器件的Vtrip门限值时,电路将在200ms(典型)延时后释放RES

38、ET 以允许系统开始工作。(2)低电压监视工作时, X5045对VCC 电平进行监测,若电源电压跌落至预置的最小Vtrip以下时,系统即确认RESET,从而避免微处理器在电源失效或断开的情况下工作。当RESET 被确认后,该RESET 信号将一直保持有效,直到电压跌到低于1V 。而当VCC 返回并超过Vtrip达200ms时,系统重新开始工作。 (3)看门狗定时器看门狗定时器的作用是通过监视WDI输入来监视微处理器是否激活。由于微处理器必须周期性的触发CS/WDI引脚以避免RESET 信号激活而使电路复位,所以CS/WDI引脚必须在看门狗超时时间终止之前受到由高至低信号的触发。3. X5045

39、的程序接口:wren_cmd:设置写允许。必须在写EEPROM 存储器阵列或写状态之前设置。写操作后,WEL位自动复位wrdi_cmd:复位写允许(写禁止)wrsr_cmd:写状态寄存器中的看门狗定时位(WD0, WD1)和块保护位(BP0, BP1)。rdsr_cmd:读状态寄存器byte_write:单字节写入到EEPROM存储器阵列byte_read:从EEPROM存储器阵列读取单字节page_write:向EEPROM存储器阵列写入3个连续字节。可很容易改为写入一页sequ_read:从EEPROM存储器阵列顺序读取字节。很容易改为读任何字节rst_wdog:复位看门狗定时器3.6 数

40、字式工频有效值多用表的工作原理 3.6.1 电压、电流有效值测量电压、电流有效值公式根据离散积分公式推导得出。电压有效值计算公式: (1)式(1)中,N为每周期采样次数,vm为第m次采样的电压瞬时值。 电流有效值计算公式: (2)式(2)中,N为每周期采样次数,im为第m次采样的电流瞬时值。3.6.2 功率、功率因数的测量若电压超前或滞后电流时间为T,电压周期为T,则电压、电流间的相位差为:=360*T/T (3) 功率因数和功率分别为: (4)有功功率: (5)视在功率: (6)无功功率: (7)3.7 单片机的选用本设计选用的是ATMEL公司的AT89C52单片机。AT89C52是美国AT

41、MEL公司生产的低电压,高性能CMOS8位单片机,片内含8Kbytes的可反复擦写的只读程序存储器(PEROM)和256bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,与标准MCS-51指令系统及8052产品引脚兼容,片内置通用8位中央处理器(CPU)和FLASH存储单元,功能强大AT89C52单片机适用于许多较为复杂控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用

42、的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。主要功能特性:兼容MCS51指令系统;8k可反复擦写(1000次)Flash ROM;32个双向I/O口;256x8bit内部RAM;3个16位可编程定时/计数器中断;时钟频率0-24MHz;2个串行中断; 可编程UART串行通道;2个外部中断源;共6个中断源;2个读写中断口线;3级加密位;低功耗空闲和掉电模式;软件设置睡眠和唤醒功能。AT89C52的编程原理:1.将RST接高电平,PSEN接低电平;2.擦除芯片,每次重新编程前都要首先把原来ROM里面的程序擦除掉,将编程模式组合为擦除模式,送ALE

43、端一个10ms宽度的低电平脉冲即可;3 在地址线上输入所需编程的存储单元的地址;4.将正确的控制信号组合为有效(写模式);5.在数据线上输入相应的字节;6. 将EA升至12V;7.给ALE一个50us的低电平脉冲;8.效验数据,将控制信号组合为读模式,数据即出现在P0口;9.改变地址和数据,重复步骤3-8步,直至程序写完。4 软件设计4.1 数字式工频有效值多用表的总流程图如图4-1所示 图 4-1 总流程图4.2 交流信号的相角测量测量相位的原理 将两个同频被测信号整形为两个方波信号,其前后沿分别对应于被测信号的正向过零点和负向过零点,然后测量出这两个同频方波的前沿(或后沿)之间的时间差比例

44、,即为这两个被测信号之间的相位差,简称相差。 要获得这个时间差比例,通常采用填充计数法,其基本原理见图4-2,A,B为工频待测的电压,电流信号,两信号经整形后形成A1和B1两路方波,若A1的两个前沿之间(一个信号周期)的计数脉冲的个数为N个A1与B1的两个相邻前沿之间的计数脉冲的个数为n个,则A,B两路之间的相位差为: n/N * 360 因此,要获得电压,电流信号间的相位差,只要获得两个计数值N和n,通过(1)式计算即可。那么相位计算的分辩率就为3600/N ,也就是表示相差的最小单位。被测信号的频率一定时,计数脉冲的频率就决定了相位测量的精度。被测信号频率为50HZ,计数脉冲频率为fa ,

45、则设计时应满足: fa360050 图4-2 相位差测量原理4.3 交流信号的采集程序系统的采样时间间隔为0.5s。采样时,在1个信号周期内对一相电压、电流等时间间隔准确采样100点并把结果存入片外数据存储器相应的存储页内,全采完后,对采到的数据进行数字滤波。数据采集子程序:SMP: MOV R0,#00H ;初始化MOV R2,#80H ;u1存放页地址送R2RET: MOV TL0,#00HMOV TH0,#00HSETB TR0MOV A,R0MOV R7,#00H ;采样点数寄存器初始化MOV R1,21H ;当前采样点的页内地址指针AD12:CLR P1.0选通当前的电压信号SH:

46、JNB 00H,SH ; CLR 00H ;准备好,清标志CLR 1.6MOV P2,#DFH ;启动A/D转换AD1: JB P1.2,AD1;未完,等待LCALL DATA ;读入转换结果存入相应页SETB P1.0;切换到电流信号MOV P2,#DFH ;启动A/D转换AD2: JB P1.2,AD2;未转换完,等待INC R2 ;页地址+1,到存放该电流的页面LCALL DATA ;读入结果INC R7 ;采样点INC R1;INC R1 ;采样点存放单元地址CJNE R7,#10H,AD12 ;未完,继续LCALL FRQCY;INC R0 ;置采样标志INC R2 ;电压存储页MO

47、V R1,21H ;存储页地址指针CJNE R1,#03H,RTE 未采完ADD 21H,#1FH ;采完RET4.4 计算电压、电流有效值程序计算电压、电流有效值的流程图如图4-3所示: 图 4-3 电压、电流有效值计算的流程图功能:加法 入口条件:字节数在R7中,被加数在R0中,加数在R0中。 出口信息:和在R1中,最高位进位在CY中。 BCDA:MOV A,R7 ;取数至R2中 MOV R2,A ADD A,R0 ;初始化数据指针 MOV R0,A MOV A,R2 ADD A,R1 MOV R1,A CLR C BCD1: DEC R0 ;调整数据指针 DEC R1 MOV A,R0

48、ADDCA,R1 ;相加 DA A ; MOV R1,A ;和存回R0中 DJNZR2,BCD1 ; RET 功能:倒数函数 入口条件:操作数在R0中。 出口信息: OV=0时,结果在R0中,OV=1时,溢出。 FRCP:MOV A,R0 MOV C,ACC.7 MOV 1FH,C ;保存数符 MOV C,ACC.6 ;绝对值传送到第二工作区 MOV ACC.7,C MOV R5,A INC R0 MOV A,R0 MOV R6,A INC R0 MOV A,R0 MOV R7,A DEC R0 DEC R0 ORL A,R6 JNZ RCP SETBOV ;零不能求倒数,设立溢出标志 RET

49、 RCP: MOV A,R6 JB ACC.7,RCP2 ;操作数格式化否? CLR C ;格式化之 MOV A,R7 RLC A MOV R7,A MOV A,R6 RLC A MOV R6,A DEC R5 SJMPRCP RCP2:MOV R2,#1 ;将数值1.00传送到第一工作区 MOV R3,#80H MOV R4,#0 LCALLDIV3 ;调用工作区浮点除法,求得倒数 LJMP MOV0 ;回传结果 功能:乘法 入口条件:被乘数在R2、R3中,乘数在 R6、R7 中。 出口信息:乘积在R2、R3、R4、R5中。 MULD:MOV A,R3 ;计算R3乘R7 MOV B,R7 M

50、UL AB MOV R4,B ;暂存部分积 MOV R5,A MOV A,R3 ;计算R3乘R6 MOV B,R6 MUL AB ADD A,R4 ;累加部分积 MOV R4,A CLR A ADDCA,B MOV R3,A MOV A,R2 ;计算R2乘R7 MOV B,R7 MUL AB ADD A,R4 ;累加部分积 MOV R4,A MOV A,R3 ADDCA,B MOV R3,A CLR A RLC A XCH A,R2 ;计算R2乘R6 MOV B,R6 MUL AB ADD A,R3 ;累加部分积 MOV R3,A MOV A,R2 ADDCA,B MOV R2,A RET 功

51、能:开平方 入口条件:被开方数在R2、R3中。 出口信息:平方根仍在R2、R3中,整数部分的位数为原数的一半,其余为小数。 SH2:MOVA,R2 ORLA,R3 JNZSH20 RET ;被开方数为零,不必运算 SH20:MOVR7,#0 ;左规次数初始化 MOVA,R2 SH22:ANLA,#0C0H ;被开方数高字节小于40H否? JNZSQRH ;不小于40H,左规格化完成,转开方过程 CLRC ;每左规一次,被开方数左移两位 MOVA,R3 RLCA MOVF0,C CLRC RLCA MOVR3,A MOVA,R2 MOVACC.7,C MOVC,F0 RLCA RLCA MOVR

52、2,A INCR7 ;左规次数加一 SJMPSH22 ;继续左规 4.5 功率因数子程序入口条件:操作数在R0中。 出口信息:结果仍在R0中。 FCOS:LCALLFABS ; COS(-X)=COSX MOV R5,#1 ;常数 1.5708(/2) MOV R6,#0C9H MOV R7,#10H CLR 1EH LCALLMVR0 CLR F0 LCALLAS1 ;+(/2) LCALLMOV0 ;保存结果. 4.6 看门狗子程序STAX: ETB CS ;启动X25045指令NOP ;先拉高CS,再拉你SCK,最后拉低CSCLR SCKNOPCLR CSNOPRETRST_DOG: S

53、ETB CS ;复位看门狗定时器NOPCLR CSNOPSETB CSRETENDX: CLR SCK ;结束X25045指令SETB CS ;先拉低SCK后拉高CSNOPNOPRET4.7 键盘/显示子程序D8255 EQU 8506H ; 8255状态/数据口地址D8255A EQU 8500H ; 8255 PA口地址D8255B EQU 8502H ; 8255 PB口地址Z8279 EQU 8701H ; 8279状态口地址D8279 EQU 8700H ; 8279数据口地址DISPTR EQU 08H ; 当前显示位置KEYVAL EQU 09H ; 读到的键码DIY:MOV SP,#60H LCALL DELAY ;延时 MOV DISPTR,#30H ;显示缓冲区头指针 MOV DPTR,#D8255 MOV A,#90H ;置8255状态 MOVX DPTR,A MOV A,#0D3H MOVX DPTR,A ;清LED显示 MOV A,#00H MOVX DPTR,A MOV A,#38H MOVX DPTR,A MOV A,#0D1HKB_DIS: LCALL RD_KB ;读键盘 MOV A,#0FFH CJNE A,KEYVAL,DISBUF ;判读到键

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!