资源描述
基于LabVIEW的设计的电压表的设计正式版
实验报告
( 2021/2021 学年 第 二 学期)
课程名称
图形化程序设计语言(双语)
实验名称
LabWINDOWS /CVI实验
实验时间
2021
年
3
月
1
日
指导单位
自动化学院
指导教师
戴尔晗
学生姓名
班级学号
学院(系)
自动化学院
专 业
测控技术与仪器
基于LABVIEW的数字电压表的设计
一、 实验要求
1.掌握数字电压表的基本原理和方法;
2.基于LabView设计数字电压表并实现;
二、 实验原理
电压是电路中常用的电信号,通过电压测量,利用基本公式可以导出其他的参数。因此,电压测量是其他许多电参数和非电参数量的基础。测量电压相当普及的一种测量仪表就是电压表,但常用的是模拟电压表。模拟电压表根据检波方式的不同。分为峰值电压表、均值电压表和平均值电压表,它们都各自做成独立的仪表。这样,使用模拟电压表进行交流电压测量时,必须根据测量要求选择仪表。另外,多数电压表的表头是按正弦交流有效值刻度的,而测量非正弦波时,必须经过换算才能得到正确的测量结果,从而给实际工作带来不便。
采用虚拟电压表,可将表征交流电压特征的峰值、平均值和有效值集中显示在一块面板上,测量时可根据波形在面板上选择仪表,用户仅通过面板指示值就能对测量结果进行分析比较,大大简化了测量步骤。
三、设计思路
LabVIEw 8.5版本的工程技术比以往任何一个版本都丰富.它采用了英文界面,各个控件的功能一目了然。利用它全新的用户界面对象和功能,能开发出专业化、可完全自定义的前面板。LabVIEW 8.2对数学、信号处理和分析也进行了重大的补充和完善,信号处理分析和数学具有更为全面和强大的库,其中包括500多个函数。所以在LabVIEW 8.5版本下能够更方便地实现虚拟电压表的设计。
该电压表主要用于电路分析和模拟电子技术等实验课的教学和测量仪器,能够让使用者了解和掌握电压的测量和电压表对各种波形的不同响应。因此,虚拟电压表应具备电源开关控制、波形选择,以及显示峰值、有效值和平均值三种结果,且输入信号的大小可调节等功能。所以,用软件虚拟了一个信号发生器。该信号发生器可产生正弦波、方波和三角波,还可以输入公式,产生任意波形。根据需要,可调节面板上的控件来改变信号的频率和幅度等可调参数,然后检测电压表的运行情况。因此,在LabVIEW图形语言环境下设计的虚拟电压表主要分为两个部分:第一部分是虚拟电压表前面板的设计;第二部分是虚拟电压表流程图的设汁。
(1) 前面板的设计
前面板模拟真实电压表的前面板,用于设置输入数值和观察输出量。由于虚拟面板直接面向用户,是虚拟电压表控制软件的核心。设计这部分时,主要考虑界面美观、操作简洁,用户能通过面板上的各种按钮、开关等控件来控制虚拟电压表进行测量工作。根据传统电压表面板控件的功能,利用LabVIEW中的控制模板,分别在设计面板上放入模拟实际电压表控件的数据输入控件、显示器、数据输出控件、开关、选择器,显示器用于显示输入的信号波形;数据输入控件主要用于输入被测信号的信号频率、采样频率、采样数、振幅和相位;数据输出控件则用于输出被测信号经过处理后得到的峰值、平均值和有效值及标准频率的有效显示。
打开LabVIEW前面板的编辑窗口,点击鼠标右键,显示控制模板,选择图形一波形图,作为电压表的显示器。在显示器模板上点击鼠标右键,对其进行属性设置,例如根据示波器的频率与幅度值的变化,利用工具模板中的文字工具,对示波器横(时间)、纵(幅度)坐标的刻度进行重新设置。用Graph控件设计的示波器是完全同步的,且波形稳定。
选择控件→数值→数值输入控件/数值显示控件,作为电压表参数设置中输入和测试结果的数据显示。
选择控件→下拉列表与枚举→菜单下拉列表,放置对输入波形选择开关,在下拉列表中单击鼠标右键,选择“编辑项”对其进行编辑。
“电源开关”控件选择经典→经典布尔→方形按钮,当按下开关时,虚拟电压表开始运行,同时电源开关的指示灯亮。同样,当弹起开关时,虚拟电压表停止运行。前面板如图1所示。
显示界面:
模拟信号生成:
3 流程图的设计
每一个前面板都对应一个流程图程序。前面板的设计完成后,可对流程图程序进行设计。打开LabVIEW设计环境中的窗口→显示程序框图,进入流程图编辑窗口,与前面板各控件对应的端口图标自动出现在流程图编辑窗口中。利用LabVIEW中的功能模块,根据虚拟示波器前面板各控件的作用和联系,虚拟示波器运作后数据流的控制,分别在流程图设计面板中放置各个功能模块,合理摆放后,在用连线工具依次连接,以实现虚拟示波器的功能。数据流的编辑主要是对端口图标的连接。用连线工具进行连线时,如果端口闪烁,说明相连的数据类型匹配,否则不能连接。
(1)虚拟信号发生器的实现
由于虚拟电压表主要用于演示,所以为了方便,可直接利用LabVIEW软件产生仿真信号。在该设计中,设置了正弦波、锯齿、波方波和三角波以及由公式确定的任意波形等基本波形。
在程序设计框图中,使用一个Case(选择)语句对四种波形进行选择。Case语句中,每一个数字(0,1,2,3,4)都代表一种波形,与前面板控件中5种状态相对应。至于Case语句的制作,只需将5个图标中的一个,例如正弦波发生程序,用Case框起来,然后在上面的空白处写上相应的数字,例如1;然后点击箭头,可以设置第二个图标,如果要添加一个Case的话,可以点击鼠标右键,直接添加,编辑相应的基本信号发生器VI中相应的节点即可。在添加公式波时,要把基本信号发生器VI换成公式波形VI,本文给出了Case结构的一个分支,公式波形的流程图如图2所示。该子Ⅵ可使用指定时间函数的公式字符串生成一个函数波形,它要求公式的自变量必须是t,它所支持的运算符和常用的函数。具体函数如下图:
基本函数发生器:
由信号类型可以选择生成波形的类型
一般,0 —— 正弦波;
1 —— 三角波;
2 —— 方波;
3 —— 锯齿波;
采样信息包含每秒采样率,和波形的采样数。(默认值都为1000)。
波形从信号输出中输出来。
公式波形:
公式是用于生成信号输出波形的表达式,一般f为频率,a为幅度,n为目前生成的采样数,n为已经过去的秒数,w为2*pi*f。
另外,在模拟状态下,信号频率以赫兹或者每秒周期数为单位。但是在数字系统中,通常使用数字频率,它是信号频率与采样频率的比值,被称为标准频率。所以,在框图程序中,应当在信号频率与采样频率之间加载一个除法器。
在波形发生程序按照规定的参数产生波形后,如果将波形直接输入波形显示控件,那将是错误的。因为波形显示控件,并不像数据显示控件那样只需要一个或一组数据,因此波形能否按规定显示出来,取决于输入的几组不同且具有决定性的数据,例如周期、相位等。
(2) 数据处理部分
数据处理部分的作用,就是将产生出的信号通过不同形式的检波、计算,得出规定的不同的结果。在该设计中同时显示交流有效值、峰值和平均值。对于一个纯粹的交流电压,正半周期信号与负半周期信号对称,U的平均值等于零,所以一般不直接测量平均值。在设计时,按函数→数值→绝对值取交流电压的绝对值,然后求平均值,取全波平均值。交流电压中的最大值,即为峰值。可以通过比较数据求出最大值,这需要使用波形最大、最小子虚拟仪器来处理框图。有效值显示:在函数→信号处理→波形测量中选择基本平均直流均方根。其框图符号如图所示。
上图中,DC 均值为测量的直流分量;均方根测量有效值;reset用于重启过去记录的时间信号、平均测量的参数;在单个模块VI中,可依据输入记录长度自动设置平均时间;Window是在DC/RMS计算之前,用于记录时间的窗;erroe in是在该VI运行之前描述错误环境,默认值为no error。如果错误已经发生,该VI在errorout端返回错误代码,子VI在无错误时才正常运行。
(3)开关部分
用一个while条件语句设计整个框图程序,当模拟电压开关为“1”时,虚拟电压表工作,条件语句中的程序开始运行;当模拟开关为“0”即关时,条件语句中的程序停止运行,虚拟电压表不工作。设计好的流程图如图所示。
四、实验结果
(1)生成信号设置:
(2) 实验数据:
(3)数据分析:
由上述结果可得出:
由于电压信号的对称性和周期性,它的直流平均为零;
有效值等效于模拟电压表所测的数值。
五、性能分析:
该软件可以准确的测出正弦,方波,三角波,锯齿波以及任意波形 的电压有效值,直流平均值等等。(如下图)
该软件界面简单易操作;并加了错误设置,可分析出由于不当操作而引起的错误。(如下图)
六、实验小结:
经过实际使用,虚拟电压表所有的控制键和功能正常,符合使用要求。需要指出的是,在设计该虚拟电压表时,签于标其使用的目的,仅从功能上考虑,并未对虚拟电压表的技术指进行深入研究。事实上,峰值是取样值的最大值,而取样点不可能取得太多,否则运行速度太慢,因此显示的峰值与理论值是有差别的,在设计时应注意合理选择参数。
数字电压表的设计
第1章 引言
在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常.而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器.数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、精度高、误差小、测量速度快等特而得到广泛应用.
传统的指针式刻度电压表功能单一,精度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要.采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC实时通信。数字电压表是诸多数字化仪表的核心与基础.以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。目前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。
目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字电压表的准确度,因而,以后数字电压表的发展就着眼在高精度和低成本这两个方面。
本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块.
第2章 系统总体方案设计选择与说明
2.1 设计要求
1、增强型MCS—51系列单片机STC12C5A60S2为核心器件,组成一个简单的直流数字电压表.
2、采用1路模拟量输入,能够测量0—10V之间的直流电压值.
3、电压显示采用LCD1602显示.
4、尽量使用较少的元器件。
2.2 设计思路
1、根据设计要求,选择STC12C5A60S2单片机为核心控制器件。
2、A/D转换采用STC12C5A60S2内部自带A/D实现。
3、电压显示采用LCD1602显示。
2.3 设计方案
硬件电路设计由7个部分组成:STC12C5A60S2单片机系统,数码管显示系统、时钟电路、复位电路档位调节电路以及测量电压输入电路.硬件电路设计框图如图1所示。
时钟电路
测量电压输入
入
LCD1602显示
STC12C5A60S2
P1
P0
P2
P2
P0
复位电路
图2.1 数字电压表系统硬件设计框图
第3章 硬件电路设计
3.1 STC12C5A60S2单片机
图3。1STC12C5A60S2单片机引脚图及实物图
3。2 STC12C5A60S2系列单片机主要性能
1)高速:1个时钟/机器周期,增强型8051内核,速度比普通8051快6~12倍。
2)宽电压:5。5~3。3V,2.2~3.6V(STC12LE5A60S2系列)。
3)增加第二复位功能脚/P4.6(高可靠复位,可调整复位门槛电压,频率<12MHz时,无需此功能)。
4)增加外部掉电检测电路/P4。6,可在掉电时,及时将数据保存进EEPROM,正常工作时无需操作EEPROM。
5)低功耗设计:空闲模式(可由任意一个中断唤醒)。
6)低功耗设计:掉电模式(可由外部中断唤醒),可支持下降沿/上升沿和远程唤醒。
7)支持掉电唤醒的管脚:INT0/P3。2,INT1/P3.3,T0/P3.4,T1/P3.5,RxD/P3.0,
CCP0/P1。3(或P4.2),CCP1/P1。4(或P4。3),EX_LVD/P4。6.
8)工作频率:0~35MHz,相当于普通8051:0~420MHz。
9)时钟:外部晶体或内部RC振荡器可选,在ISP下载编程用户程序时设置。
10)8/16/20/32/40/48/52/56/60/62K字节片内Flash程序存储器,擦写次数10万次以上。
11)1280字节片内RAM数据存储器。
12)芯片内EEPROM功能,擦写次数10万次以上。
13)ISP / IAP,在系统可编程/在应用可编程,无需编程器/仿真器。
14)8通道,10位高速ADC,速度可达25万次/秒,2路PWM还可当2路D/A使用。
15)2通道捕获/比较单元(PWM/PCA/CCP),也可用来再实现2个定时器或2个外部中断(支持上升沿/下降沿中断).
16)4个16位定时器,兼容普通8051的定时器T0/T1,2路PCA实现2个定时器。
17) 可编程时钟输出功能,T0在P3。4输出时钟,T1在P3.5输出时钟,BRT在P1。0输出时钟.
18) 硬件看门狗(WDT)。
19)高速SPI串行通信端口。
20)全双工异步串行口(UART),兼容普通8051的串口。
21)通用I/O口(36/40/44个),复位后为:准双向口/弱上拉(普通8051传统I/O口).可设置成四种模式:准双向口/弱上拉,推挽/强上拉,仅为输入/高阻,开漏.每个I/O口驱动能力均可达到20mA,但整个芯片最大不得超过120mA.
3.3 STC12C5A60S2系列单片机的A/D转换器的结构
STC12C5A60S2系列单片机的A/D转换口在P1口(P1。7-P1。0),有8路10位高速A/D转换器,速度可达到250KHz(25万次/秒)。8路电压输入型A/D,可做温度检测、电源电压检测、按键扫描、频谱检测等。上电复位后P1口为弱上拉型I/O口,用户可以通过软件设置将8路中的任何一路设置为A/D转换,不需作为A/D使用的I/O口可以继续作为I/O口使用。
STC12C5A60S2系列单片机ADC的结构如下图所示
图3。2 STC12C5A60S2系列单片机ADC的结构
图3。3 当AUXR.1/ADRJ=0时,A/D转换结果寄存器格式
图3.4 当AUXR.1/ADRJ=1时,A/D转换结果寄存器格式
STC12C5A60S2系列单片机ADC由多路选择开关、比较器、逐次比较寄存器、10位ADC转换寄结果存器(ADC_RES和ADC_RESL)以及ADC_CONTR构成。
STC12C5A60S2系列单片机的ADC是逐次比较型ADC,逐次比较型ADC由一个比较D/A转换器构成,通过逐次比较逻辑,从最高位(MSB)开始,顺序地对每一输入电压与内置D/A转换器输出比较,经过多次比较,使转换所得的数字量逐次比逼近输入模拟量对应值.逐次比较型A/D转换器具有速度高,功耗低等特点。
从上图可以看出,通过模拟多路开关,将通过ADC0-ADC7的模拟量输入送给比较器。用数/模转换器(DAC)转换的模拟量与本次输入的模拟量通过比较器进行比较,将比较结果保存到逐次比较器,并通过逐次比较寄存器输出转换结果。A/D转换结束后,最终的转换结果保存到ADC转换结果寄存器ADC_RES和ADC_RESL,同时,置位ADC控制寄存器ADC_CONTR中的A/D转换结束标志位ADC_FLAG,以供程序查询或发出中断申请。模拟通道的选择控制由ADC控制寄存器ADC_CONTR中的CHS2~CHS0确定。ADC的转换速度由ADC控制寄存器中的SPEED1和SPEED0确定.在使用ADC之前,应先给ADC上电,也就是置位ADC控制寄存器中的ADC_POWER位。
当ADRJ=0时,如果取10位结果,则按下面公式计算:
10-bitA/D Conversion Result:(ADC_RES[7:0],ADC_RESL[1:0])=1023*Vin/Vcc
当ADRJ=0时,如果取8位结果,则按下面公式计算:
8—bitA/D Conversion Result:(ADC_RES[7:0])=255*Vin/Vcc
当ADRJ=1时,如果取10位结果,则按下面公式计算:
10-bitA/D Conversion Result:( ADC_RESL[1:0] ,ADC_RES[7:0])=1023*Vin/Vcc
当ADRJ=1时,如果取8位结果,则按下面公式计算:
8-bitA/D Conversion Result:( ADC_RESL[1:0] ,ADC_RES[7:2])=255*Vin/Vcc
式中,Vin为模拟输入电压,Vcc为单片机实际工作电压,用单片机工作电压作为模拟参考电压。
3。4 与A/D 转换相关的寄存器及说明
与STC12C5A60S2系列单片机A/D转换相关的寄存器
表3.1 A/D转换相关的寄存器
1。P1口模拟功能控制寄存器P1ASF
STC12C5A60S2系列单片机的A/D转换通道与P1(P1。7-P1。0)复用,上电复位后P1为弱上拉型I/O口,用户可以通过将8路中的如何一路设置为A/D转换,不需作为A/D使用的P1口可继续作为I/O口使用(建议只作为输入).需作为A/D使用的口需要先将P1ASF特殊功能寄存器中的相应位置为“1”,将相应的口设置为模拟功能。P1ASF寄存器的格式如下:
P1ASF:P1口模拟功能控制寄存器(只读)
表3.2 P1ASF寄存器
当P1口中的相应位作为A/D使用时,要将P1ASF中的相应位置“1”
表3。3 P1ASF寄存器设置
2.ADC控制寄存器ADC_CONTR
ADC_CONTR寄存器的格式如下:
ADC_CONRTR:ADC控制寄存器
表3。4 ADC控制寄存器
对ADC_CONTR寄存器进行操作,建议直接用MOV赋值语句,不要用“与"和“或”语句.
ADC_POWER:ADC电源控制位。
0:关闭A/D转换电源;
1:打开A/D转换电源;
建议进入控模式前,将ADC电源关闭,即ADC_POWER=0.启动A/D转换前一定要确认A/D电源已打开,A/D转换结束后关闭A/D电源可决定功耗,也可以不关闭。初次打开内部A/D转换模拟电源,需适当延时,等内部模拟电源稳定后,再启动A/D转换.
建议启动A/D转换后,在A/D转换结束之前,不要改变任何I/O口的状态,有利于高精度A/D转换,若能将定时器/串行口/中断系统关闭更好。
SPEED1,SPEED0:模数转换速度控制位
表3。5 模数转换速度控制位设置
STC12C5A60S2系列单片机的A/D转换模块所使用的时钟时内部(或外部石英晶体)所产生的系统时钟,不使用时钟分频寄存器CLK_DIV对系统分频后所产生的供给CPU工作的时钟.(好处:这样可以让ADC用较高频率工作,提高A/D的转换速度.让CPU工作工作在较低频率,降低系统功耗)。
ADC_FLAG:模数转换结束标志位,当A/D转换完成后,ADC_FLAG=1,要由软件清零。
不管是A/D转换完成后由该位申请中断,还是由软件查询该标志A/D转换是否结束,当A/D转换完成后, ADC_FLAG = 1,一定要软件清零。
ADC_START:模数转换器(ADC)转换启动控制位,设置为“1”时,开始转换,转换结束后ADC_START = 1;
CHS2/CHS1/CHS0: 模拟输入通道选择
表3.6模拟输入通道选择
设置ADC_CONTR控制寄存器后,要加4个空操作延时后才能正确度到ADC_CONTR寄存器的值.原因是设置ADC_CONTR控制寄存器的语句执行后,要经过4个CPU时钟的延时,其值才能够保证被设置进ADC_CONTR控制寄存器.
MOV ADC_CONTR,#DATA
NOP
NOP
NOP
NOP
MOV A,ADC_CONRT
3、A/D转换结果寄存器ADC_RES、ADC_RESL
特殊功能寄存器ADC_RES和ADC_RESL寄存器用于存放A/D转换结果,其格式如下:
表3.7 用于存放A/D转换结果寄存器ADC_RES、ADC_RESLAUXR1寄存器的ADRJ位是A/D转换结果寄存器的数据格式调整控制位。
表3.8 当ADRJ = 0 时,10位A/D转换结果的高8位存放在ADC_RES中,低2位存放在ADC_RESL的低2 位中。
表3。9 当ADRJ = 1 时,10位A/D转换结果的高2位存放在ADC_RES的低2 位中,低8位存放在ADC_RESL中。
4、与A/D中断有关的寄存器
IE:中断允许寄存器
表3。10 中断允许寄存器
EA: CPU的中断开放标志,EA = 1,CPU开放中断,EA = 0,CPU屏蔽所有的中断请求。
EADC:A/D转换中断允许位。
EADC = 1,允许A/D中断;
EADC = 0,屏蔽A/D中断.
IPH:中断优先级控制寄存器高(不可位寻址)
表3.11 中断优先级控制寄存器高
IP: 中断优先级控制寄存器低(可以位寻址)
表3.12中断优先级控制寄存器低
PADCH,PADC:ADC转换优先级控制位。
5、ADC初始化程序
/*-———--—----—-—--—————-—-—-—-
初始化ADC
—--——------—------—-—-—-----*/
void InitADC(void)
{
P1ASF = 0x58; //设置P1口为AD口 0100 0111 0101 1000
ADC_RES = 0; //清除结果寄存器
ADC_CONTR = ADC_POWER | ADC_SPEEDLL;
Delay(50); //ADC上电并延时
}
6、ADC读子函数
/*——--————————-——----——-—-—---
发送ADC结果到PC
-------———-——-—------—---—--*/
void ShowResult(BYTE ch)
{
float value;
change_long_data_to_array(disadch,2,ch);
value=GetADCResult(ch);
value=value/255*4.8;
change_data_to_array(disadcval,5,1,value);
}
/*-----------———-—---——-—--—--
读取ADC结果
--————----————-———-----—-—-—*/
BYTE GetADCResult(BYTE ch)
{
ADC_CONTR = ADC_POWER | ADC_SPEEDLL | ch | ADC_START;
_nop_(); //等待4个NOP
_nop_();
_nop_();
_nop_();
_nop_(); //等待4个NOP
_nop_();
_nop_();
_nop_();
_nop_(); //等待4个NOP
_nop_();
_nop_();
_nop_();
while (!(ADC_CONTR & ADC_FLAG));//等待ADC转换完成
ADC_CONTR &= ~ADC_FLAG; //Close ADC
return ADC_RES; //返回ADC结果
}
3.5系统电路设计、说明
3.5.1 系统电路总原理图
图3.5 系统原理图
3.5.2晶振电路简介
时钟信号的振荡器提供正常工作稳定的供应链接管理.晶振也被称为晶振谐振器,是一种机电设备,是需要精密磨削的石英晶体镀上电极焊上导线制成。这种晶体有一个很关键的特性--—-压电效应,给它导电,产生机械振荡,反之,给它机械力,便会产生电[7]。它的形状,材质,切割方向影响到振荡的频率。根据石英晶体等效为一个谐振回路,它的机电效应是机—电-机—电.。的不断转换,由电感和电容组成的谐振回路是电场—磁场的不断转换。
AT89S52的反相放大器,振荡器,时钟信号可以由单片机产生周期性功能是机械指令驱动芯片实现。这个放大器与石英晶体或陶瓷谐振器一起可构成一个自激振荡器,外接石英晶体或陶瓷谐振器以及电容C8和C10组成并联谐振电路, 接在放大器的反馈回路中。一个外部电容C8和C10的值虽然没有严格的要求, 但会影响许多电容振荡器的频率稳定度、振荡器、起振圈内部振荡的接法的快速及时性和温度稳定性。
AT89S52芯片里面有一个反相高增益放大器,它两头跟石英晶体及两个常用30pF电容相连接,组成稳定的自激振荡器微调震荡频率。震荡电路如图5所示.
图3.6晶振电路
3.5.3复位电路
系统CPU和其辅助部件是在一个精确的状态开始运行, 单片机成功复位。不论是电源故障或刚接上电源,要使用单片机就要先复位。施密特触发器通过AT89S52单片机RST引脚接收复位信号。当系统振荡稳定没发生异常情况下,假如RST出现一个持续24个振荡周期的高电平, 则系统复位.本设计系统是自动电源复位.
本系统中采用上电电路复位,即在单片机运行期间人工的复位,方便又简单。工作按钮接通电源,单片机便可复位,即手动复位完成。系统上电运行后,如果要复位,则动手复位即可,手动复位电路如图6所示.
图3。7 复位电路
3.5。4显示电路
LCD1602显示32个字符内容,分为2行显示.当前面向市场上字符液晶显示模块几近都是一样在HD44780液晶芯片的控制原理上完成的.
图3.8 LCD1602显示电路
第4章 系统软件设计
4.1 程序设计框图
ADC初始化
延时400ms
读取被测电
压并计算
LCD1602显示
1602显示
开始
图4。1程序设计框图
#include 〈STC12C5A60s2。h>
#include <stdio。h>
#include "1602.h"
#include "adc.h"
#include "delay。h”
#include ”intrins.h”
#define Ratio 2.0//用来确定电阻比值,电阻总阻值除以承载电压的那个电阻
/*————-—----—-—---——-—-—------—-—-—--—----—------—
主函数
-——--——----——---———--——-—-—--—---——-—--—----————*/
void main(void)
{
float Vo=0.0;
unsigned int temp_data=0;
unsigned char temp[16];
LCD_Init();
LCD_Clear();
LCD_Write_String(6,0,"test");
while (1)
{
temp_data=GetADCResult(0);//使用ADC得到电压值
Vo=(float)temp_data*Ratio*Vcc/255.0/100.0;//将得到的电压值进行处理
sprintf(temp,"U=%。2f V ”,Vo);
LCD_Write_String(0,1,temp);
DelayMs(200);
}
}
《电压表和电流表的改装》教学设计
一、 设计思想
复习电路串并联知识,以电流计为主线,开始即用问题引入,让学生思考如何用额定电流较小的电表测量大电流,如何用额定电压较小的电表测量大电压?学生可以运用刚学习的串并联电路知识思考,深化学生认识;通过例题,让学生亲自计算、设计,提高学生解决问题能力。最后通过多量程电表的练习题,进一步拓展学生对这部分知识的应用。
二、 教材分析
按教材,电表的改装并未单独成节,而是在串并联电路里,以习题的方式呈现但电表的改装是高考的一个重点内容,通过这个内容的学习,可以让学生知道如何设计电路,如何进行误差分析,因此有必要详细深入的讲解,让学生从根本上搞清其原理和相关知识。
三、 学情分析
学生已经有串并联知识基础,但对串联分压、并联分流的思想还没有强化,应用起来有困难,需要通过本节课的学习进一步提高。
高二的学生(尤其是理科)也需要进行独立思考、分析来获得思维的提升。教师应当充当指导者角色,由学生自主设计出电表改装方案。
四、 教学目标
1、 知识与技能:了解小量程电流表的工作原理及基本参数,理解将小量程电表改装成大量程电流表及电压表的方法。
2、 过程与方法:通过自主设计解决电表量程扩大的问题,进一步熟悉串并联电路的特点,提高灵活运用的能力。
3、 情感态度与价值观:通过对实验设计培养学生实验技能与科学素养。
五、 重点难点
重点:电流表、电压表改装原理的理解
难点:改装后电表的串并联应用
六、 教学方法
启发式提问、讲解法、学生自主学习法
七、 教学过程
(一) 复习串并联知识
(二) 介绍电流计,
(三) 思考与讨论,(如右图)抛出问题引入新课
Ig
如图所示,为某一电流表G的刻度盘,如果图中电流表的内阻是100Ω,请在这个刻度盘上对应1、2、3的下面标出相应的电压数值(单位为V).学生思考讨论时间画电路图。
G
【问题】如何用小量程的电表(电压或电流)测量大电压或电流?画出电路图来。
电压表:串联一个电阻分压;电流表:并联一个电阻分流。
(四) 相互讨论,新课教学
利用实物投影展示同学们的实验方案[电路图],归纳总结:同学们用的是什么原理?[串联分压,并联分流]
师:咱们在做的工作叫“电表的改装”,现在先具体研究“电压表的改装”。
I:电压表的改装
新的电压表量程:(量程扩大)
U
V
R
G
U
例:一电流表G,内阻Rg=100Ω,满偏电流Ig=3mA,如何把它改装成量程为3V的电压表呢?
串联一个R
【追问】把表头和串联的分压电阻封装起来,加上刻度盘就成了崭新的电压表了。这个崭新电压表的内阻是多少呢?
接下来咱们再研究“电流表的改装”
II:电流表的改装
试着画出如图所示的电路图并实物投影。
【思考】你能求出分流电阻的阻值吗?
【追问】把表头和并联的分流电阻封装起来,加上刻度盘就成了崭新的电流表了。这个崭新电流表的内阻是多少呢?
分流
【完善】这个崭新电流表的刻度盘是均匀的吗?请你试着标记出它的刻度盘。
【小 结】:
若要将电流表G改装成一个量程更大的电流表A,需要并联一个分流电阻;若要将电流表G改装成一个量程更大的电压表V,需要串联一个分压电阻 。
【思考】:
将同一个表头改装成不同量程的电压表时,量程越大,则串联的分压电阻是越大还是越小?
将同一个表头改装成不同量程的电流表时,量程越大,则并联的分流电阻是越大还是越小?
让学生观察电压表电流表的接线柱,附有电路图,学生验证结论。
【练习】: 1.如图是有两个量程的电压表,当使用a、b两个端点时,量程为0-10V,当使用a、c两个端点时,量程为0-100V。已知电流表的内阻Rg为500Ω,满偏电流Ig为1mA,求电阻R1,R2的值。
四、小结及布置作业
毕业设计(论文)
题 目:数字电压表的设计与制作
年级专业:电气自动化14321班
学生姓名:秦小钧
指导教师:杨海蓉
2021年 10月13 日
毕业设计任务书
毕业设计题目:数字电压表的设计与制作
题目类型 工程设计 题目来源 学生自选题
毕业设计时间从 2021/09/25至 2021/10/13
1. 毕业设计内容要求:
采用AT89S52作MCU,ADC0809(或其他芯片)进行AD转换,测量电压的范围为直流0-5V电压,四位数码管显示。
2.主要参考资料
[1]万福君,潘松峰.单片微机原理系统设计与应用[M],中国科学技术大学出版社,01年8月第2版
[2]周责魁.控制仪表与计算机控制装置[M],化学工业出版社,02年9月第1版
[3]李青.电路与电子技术基础[L],浙江科学技术出版社,05年2月第1版
[4]陈乐.过程控制与仪表[M],中国计量学院出版社,07年3月
[5]孙育才.新型AT89S52系列单片机及其应用[M] ,清华大学出版社,05年5月第1版
3.毕业设计进度安排
阶段
阶 段 内 容
起止时间
1
开讲个人选题报告
2
着手收集资料,并报送提纲审定
9.28-10.4
3
集中指导与个别指导,提交初稿审查
4
修改,经审稿后定稿交稿
5
答辩与鉴定
10.13
摘 要
本设计由A/D转换、数据处理及显示控制等组成,测量0~5V范围内的输入电压值,由4位共阳8段数码管扫描显示,最大分辨率0.1V,误差±0.05V。数字电压表的核心为AT89S52单片机和ADC0832 A/D转换集成芯片。
关键词:数字电压表;单片机;AT89S52; ADC0832
展开阅读全文