XXXXXXXXXXXXXXX
课 程 设 计
课程名称: XXXXXXX
题目: 数字电压表设计
专业班次: 姓 名: 学 号: 指导教师: 学 期: 日 期:
i
目录
前言
本文介绍了基于AT89C51单片机的一种8路输入电压测量电路,该电路采用ADC0808作为A/D转换元件,测量范围0至20伏,小数点后显示一位。要求能够依次显示每路通道电压,而且能够通过拨码开关选择输入通道。使用3位LED模块显示,前面一位显示通道号,后面两位显示测量电压值。
本系统主要包括四大模块:数据采集模块、控制模块、显示模块、A/D转换模块。绘制电路原理图与工作流程图,并进行调试,最终设计完成了该系统的硬件电路。在软件编程上,采用了汇编语言进行编程,开发环境使用WAVE集成开发环境。开发了显示模块程序、通道切换程序、A/D转换程序。
I
目录
目 录
前言 ............................................................................................................................................................ I 第一章 概述 ........................................................................................................................................... 1
1.1 数字电压表........................................................................................................................... 1 第二章 设计方案 ................................................................................................................................... 1
2.1 系统的设计任务 ....................................................................................................................... 1 2.2 设计方案 .................................................................................................................................. 1 2.3课程原理: ................................................................................................................................. 1
2.3.1模数转换原理: ............................................................................................................. 1 2.3.2数据处理原理: ............................................................................................................. 2 2.3.3数据显示原理: ............................................................................................................. 2
第三章 软件硬件的设计........................................................................................................................ 1
3.1 单片机主电路设计 ................................................................................................................... 1
3.1.1 复位电路 ...................................................................................................................... 1 3.1.2 晶振电路 ...................................................................................................................... 1 3.2 转换电路 ................................................................................................................................ 2
3.2.1 转化器类型 .................................................................................................................. 2 3.2.2 转换器主要性能: ...................................................................................................... 3
第四章调试与写真 ................................................................................................................................... 4
汇编程序 ........................................................................................................................................... 4 仿真图 ............................................................................................................................................... 9 第五章总结 ............................................................................................................................................... 1 参考文献 ................................................................................................................................................... 1
I
第一章 概述
1.1 数字电压表
数字电压表作为数字技术的成功应用,发展相当快。数字电压表(Digital VoIt Me-ter,DVM),以其功能齐全、精度高、灵敏度高、显示直观等突出优点深受用户欢迎。特别是以A/D转换器为代表的集成电路为支柱,使DVM向着多功能化、小型化、智能化方向发展。DVM应用单片机控制,组成智能仪表;与计算机接口,组成自动测试系统。
现代数字电压表按测量功能可分为直流数字电压表和交流数字电压表。数字电压表一般由模拟部分和数字部分组成,模拟部分主要功能是获取电压并将其转换为相应的数字量,数字部分完成逻辑控制、译码和显示等功能。数字电压表的核心是A/D转换器,由A/D转换器工作原理的不同,数字电压表又可分为逐次比较型和双积分型。
传统模拟式电压表具有电路简单、成本低、测量方便等特点,但测量精度较差,特别是受表头精度的限制,即使采用0.5级的高灵敏度表头,读测时的分辨力也只能达到半格。再者,模拟式电压表的输入阻抗不高,测高内阻源时精度明显下降。
本设计为克服以上缺点选用ICL7135芯片实现双积分A/D转换,提高精度,
它是一种四位半的双计分A/D转换器,具有精度高(精度相当于14位二进制数)、价格低廉、抗干扰能力强等优点。本设计介绍用单片机并行方式采集ICL7135的数据以实现单片机电压表和小型智能仪表的设计方案。
在当今的数字时代,从大到空间雷达,地球卫星定位系统,移动通信,计算机,医用断层扫描设备,小到家用计算机,数码影
LCD显示 89C51单片机 A/D转换 输入电路 通讯模块 像设备,数字录音笔,数码微波炉等设备中, 数字技术与数字电路组成的数字系 图1.1 设计原理图
1
统已经成为这些现代电子系统的重要组成部分。数字电压表正进入一个蓬勃发展的新时期,一方面它开拓了电子测量领域的先河,另一方面它本身正朝着高准确度、智能化、低成本的方向发展。此外,数字电压表在安装工艺、外观设计、安全性、可靠性等方面也在不断改进,日臻完善。
2
第二章 设计方案
2.1 系统的设计任务
设计单片机主电路、数据采集接口电路、LED显示电路、拨码控制电路,能够实现对8路电压值进行测量,能够显示当前测量通道号及电压值,电压精度小数点后1位,可以通过键盘选择循环显示8路的检测电压值和指定通道的检测电压值。
2.2 设计方案
将数据采集接口电路输入电压传入ADC0808数模转换元件,经转换后通过D0至D7与单片机P0口连接,把转换完的模拟信号以数字信号的信号的形式传给单片机,信号经过单片机处理从LED数码显示管显示。拨码开关连P3口,实现通道选择。P2口接数码管位选,P1接数码管,实现数据的动态显示。
2.3课程原理:
2.3.1模数转换原理:
试验中,我们选用ADC0808作为模数转换的芯片,其为逐次逼近式AD转换式芯片,其工作时需要一个稳定的时钟输入,根据查找资料,得到ADC0808的时钟频率在10khz~1200khz,我们选择典型值640khz。课题要求测量电压范围是0到20V。由于ADC0808有8个输入通道可供选择,我们选择IN0通道,直接使ADC0808的A、B、C接地便可以了,在当ADC0809启动时ALE引脚电平正跳变时变可以锁存A、B、C上的地址信息。ADC0808可以将从IN0得到的模拟数据转换为相应的二进制数,由于ADC0808输出为8位的二进制数,转换时将0到20V分为200等分,所以我们可以得到转换公式为x/200*20化简为:x/10,x为得到的模拟数据量,也就是直接得到的电压量。在AD转换完成后,ADC0808将在EOC引脚上产生一个8倍于自身时钟周期的正脉冲,以此来作为转换结束的标志。然后当OE引脚上产生高电平时,ADC0808将允许转换完的二进制数据输出。
1
2.3.2数据处理原理:
由ADC0808的转换原理可以知道我们从其得到数据还只是二进制数据,我们还需要进一步处理来的到x的十进制数,并且对其进行精度处理,也就是课题要求的的精确到小数点后两位,在这里我们用51单片机对数据进行处理。我们处理数据的思路是:首先将得到的二进制数直接除以十进制数51,然后取整为x的整数部分,然后就是将得到的余数乘以10,然后再除以51,再取整为x的十分位,最后将得到的余数除以5得到x的百分位。
2.3.3数据显示原理:
试验中我们用到四位一体的七段数码管,所以我们只能考扫描显示来完成数码管对x的显示,我们用的是四位数码显示管,但是x只是三位的,故我们将将第四位显示为单位U,通过程序的延时,实现四位数码管的稳定显示。
2
第三章 软件硬件的设计
3.1 单片机主电路设计
在本次课题设计中我们选择了89C51芯片,其具有功能强、体积小、成本低、功耗小等特点,它可单独地完成现代工业控制所要求的智能化控制功能,能在软件的控制下准确、迅速、高效地完成程序设计者事先规定的任务。
3.1.1 复位电路
复位电路如图3.1.1所示,单片机系统常常有上电复位和操作复位两种。上电复位是指单片机上点瞬间,要在RST引脚上出现宽度大于10ms的正脉冲,才能使单片机进入复位状态。操作复位是指用户按下“复位”按钮使单片机进入复位状态。
图3.1.1 单片机
3.1.2 晶振电路
晶振电路用于产生单片机工作所需的时钟信号,使用晶体震荡器时,c2,c3取值20~40PF,使用陶瓷震荡器时c2,c3取值30~50PF。在设计电路板时,晶振和电容应尽量靠近芯片,以减小分布电容,保证震荡器的稳定性。18引脚接XTAL1,19引脚接XTAL2,20引脚接地。
1
图3.1.2 晶振电路
3.2 转换电路
数字电压表最终显示结果是数字信号,但输入时却是模拟量,故而需要转电路使模拟量转换成数字量。本设计采用A/D转换器实现此过程。本节将着重介绍转化器基本知识和ICL7135芯片的功能。
3.2.1 转化器类型
A/D转换器(ADC)的作用是把模拟量转换成数字量,以便于计算机进行处理。随着超大规模集成电路技术的飞跃发展,现在有很多类型的A/D转换器芯片,不同的芯片内部结构不一样,转换原理也不仅相同,各种转换芯片根据转换原理可分为:计数型A/D转换器,逐次逼近型A/D转换器,双重积分型A/D转换器,和并行式A/D转换器等,按转换方法可分为直接A/D转换器和间接A/D转换器;按其分辨率分为4-16位转换器。
计数型A/D转换器
计数型A/D转换器由D/A转换器,计数器和比较器组成,工作时:计数器由零开始计数每计一次数后,计数器送往D/A转换器转换,并将生成的模拟信号与输入的模拟信号在比较器内进行比较,若小于后者,则计数值加1,D/A转换和比较过程,直到D/A转换生成的模拟信号与输入模拟信号相同时,则停止计数,这时计数器中的当前值就为输入模拟量对应的数字量。这种A/D转换器结构简单,原理清楚,但转换精度与速度之间存在矛盾。当提高速度时,精度就回有所
2
下降,当提高精度时,速度就回有所下降。现实中很少使用。
逐次逼近型A/D转换器
逐次逼近型A/D转换器是由一个比较器,D/A转换器,寄存器及控制电路组成。与计数型相同,也要进行比较以得到转换的数字量,但逐次逼近型A/D转换器使用寄存器从高位到低位依次开始逐次比较。转换过程如下:开始时寄存器各位都为零,转换时先将高位置1,送D/A转换器转换,转换结果与输入的模拟量比较,如果前者小于后者,则1保留,否则,不保留。重复上述过程直到最低位,最后寄存器内容就为输入模拟量对应的数字量。一个n位逐次逼近型转换器只需要比较n次,转换时间取决于位数和时钟周期。逐次逼近型A/D转换器转转速度快,在实际中广泛应用。
双重积分型A/D转换器
双重积分型A/D转换器将输入电压先变成与其平均值成正比的时间间隔,然后再把此时间间隔转换成数字量,它属于间接型。它的转换过程分采样和比较两个过程。采样就是积分器对输入模拟电压进行固定时间积分,输入量越大,采样值越大。比较就是用基准电压对积分器进行反向积分,直到值为零,由于基准电压固定,所以采样越大,反向积分时间越长,积分时间与输入电压成正比,最后把积分时间转换成数字量,则该数字量就为输入模拟量对应的数字量。由于转换过程进行了两次积分,所以称为双重积分型。,双重积分型A/D转换器的转换精度高,稳定性能好,抗干扰能力强,但转换速度慢。
3.2.2 转换器主要性能:
分辨率
分变率是指A/D转换器能分辨的最小输入量。通常用转换的数字量的位数来表示,如8位,10位,12位,16位等。位数越高,分辨率越高。
转换时间
转换时间是指A/D完成一次转换需要的时间,指从启动转换器开始到转换结束并得到稳定数字量为止的时间。一般而言,转换时间越短,转换速度越快。
量程
量程是指所能转换的输入电压范畴。 转换精度
3
分为绝对转换精度和相对转换精度。绝对精度是指实际输入的模拟量与理论上模拟量之差。相对精度是指当满刻度值校准后,任意数字量对应的实际模拟量(中间值)与理论值之差(中间值)。
A/D 转换器的转换精度对测量电路极其重要,它的参数关系到测量电路性能。本设计采用双积A/D 转换器,它的性能比较稳定,转换精度高,具有很高的抗干扰能力,电路结构简单,其缺点是工作速度较低。在对转换精度要求较高,而对转换速度要求不高的场合如电压测量有广泛的应用。
图3.2.2
第四章调试与写真
汇编程序
ORG 0000H
LJMP START ORG 000BH CPL P3.2
MOV TH0,#0FFH MOV TL0,#0FFH
4
RETI
ORG 0014H
START:MOV PSW,#0FFH MOV R1,#00H MOV R2, #00H MOV MOV MOV MOV
MOV SETB LOOP1: CLR CPL
CPL CLR SETB
SETB LOOP2: JNB SETB MOV
MOV MOV R3,#00H IE ,#82H TMOD ,#01H TH0, #0FFH TL0, #0FFH
TR0
P3.5 P3.5 P3.5
P3.6
P3.6 P3.4
P3.4 , LOOP2 P3.3 P1,#0FFH A,P1
B,#10
5
DIV AB
MOV DPTR,#DTAB MOVC A,@A+DPTR ORL A,#20H MOV R1,A
MOV A,B
MOV B,#10 MUL AB
JNB PSW.2,LOOP3 CLR PSW.2 INC A
MOV B,#10
DIV AB ADD A,#20 MOV R0,B AJMP LOOP4
LOOP3:MOV B,#10 DIV AB MOV R0,B LOOP4:MOV DPTR,#DTAB
MOVC A,@A+DPTR MOV R2,A
6
MOV A,B
MOV B,#10 MUL AB
JNB PSW.2,LOOP5 CLR PSW.2 INC A
MOV B,#10
DIV AB
ADD A,#20
AJMP LOOP6
LOOP5:MOV B,#10 DIV AB
LOOP6: MOV DPTR,#DTAB
MOVC A,@A+DPTR MOV R3,A
DIS: CLR P2.4 MOV P0,#5EH
MOV R5,#0FH DJNZ R5,$ SETB P2.4
CLR P2.5 MOV P0,R3
7
MOV R5,#0FH DJNZ R5,$ SETB P2.5 CLR P2.6
MOV P0,R2 MOV R5,#0FH
DJNZ R5,$ SETB P2.6 CLR P2.7
MOV P0,R1
MOV R5,#0FH DJNZ R5,$ SETB P2.7 JB P3.4,LOOP7 AJMP DIS
LOOP7:LJMP LOOP1
DTAB: DB 5FH ,44H ,9DH,0D5H,0C6H DB 0D3H,0DBH,45H,0DFH,0D7H
END END
8
仿真图
9
第五章总结
电压测量通过不同的接口电路可实现温度、湿度、压力等测量,广泛应用于工业领域。本电路设计别具一格,是一种高精度、低功耗、宽量程、智能化的电压表。可扩展键盘、EEPROM、报警电路,实现电压异常记录、报警。
仿真时,也就是写程序时,为了硬件的简单,我们没有采用74LS244来驱动数码管,而是直接用IO口来驱动数码管,这就导致最开始的时候数码管在位选为低电平(我们没有采用三极管作为开关管),段选为高电平时没有任何显示,也就是没有考虑到单片机IO口驱动负载的能力
1
参考文献
[1] 徐爱钧.智能化测量控制仪表原理与设计(第二版).北京:北京航空航天大学出版社,2004
[2] 吴金戌.8051单片机实践与应用.北京:清华大学出版社,2002 [3] 张国勋.缩短ICL7135A/D采样程序时间的一种方法,1993 [4] 高峰.单片微型计算机与接口技术.北京:科学出版社,2003
[5] 徐爱钧.《智能化测量控制仪表原理与设计》(第二版)[M].北京:北京航空航天大学出版社.2004.
[6] 吴金戌.沈庆阳.郭庭吉.《8051单片机实践与应用》[M].北京:清华大学出版社.2002.
[7] 张国勋.《缩短ICL7135A/D采样程序时间的一种方法》[J]. 《电子技术应用》.1993.第一期.
[8] 高峰.《单片微型计算机与接口技术》[M].北京:科学出版社.2003. [9] 刘伟.赵俊逸.黄勇.《一种基予C8051F单片机的SOC型数据采录器的设计与实现》[A].天津市计算机学会单片机分会编. 《2003年全国单片机及嵌如入式系统学术年会论文集(下册)》[C] .北京:北京航空航天大学出版社,2003 .790-794
[10] 谢维成.杨加国主编.《单片机原理与应用及51程序设计》北京:清华大学学出版社.2007
[11] 周良权.李世馨.《模拟电子技术基础》[M].北京:高等教育出版社.2004.
1
时间 设计任务 完成情况 教师签名 12.12-12.15 搜集资料 12.16-12.17 整理资料 12.18-12.20 完成初稿 12.21 上交初稿 2
对学生设计过程、设计质量的评分依据 总评成绩 指导教师意见及成绩评定 指导教师(签名): 年 月 日 教研室及系审定意见 教研室主任(签名): 年 月 日 (系公章) 3
因篇幅问题不能全部显示,请点此查看更多更全内容