数字电压表的综合设计报告
数字电压表课程设计实验报告

自动化与电气工程学院电子技术课程设计报告题目数字电压表的制作专业班级学号学生姓名指导教师二○一三年七月一、课程设计的目的与意义1.课程设计的主要目的,是通过电子技术综合设计,熟悉一般电子电路综合设计过程、设计要求、完成的工作内容和具体的设计方法。
2.同时了解双积分式A/D转换器ICL7107的性能及其引脚功能,熟悉集成电路ICL7107构成直流数字电压表的使用方法,并掌握其在电路中的工作原理。
3.通过设计也有助于复习和巩固以往的模电、数电内容,达到灵活应用的目的。
在完成设计后还要将设计的电路进行安、调试以加强学生的动手能力。
在此过过程中培养从事设计工作的整体观念。
4.利用双积分式A/D转换器ICL7107设计一数字电压表,量程为-1.99—+1.99,通过七段数码管显示。
二、电路原理图数字电压表原理图三、课程设计的元器件1.课程设计所使用的元器件清单:2.主要元器件介绍(1)芯片ICL7107:ICL7107的工作原理双积分型A/D转换器ICL7107是一种间接A/D转换器。
它通过对输入模拟电压和参考电压分别进行两次积分,将输入电压平均值变换成与之成正比的时间间隔,然后利用脉冲时间间隔,进而得出相应的数字性输出。
它的原理性框图如图所示,它包括积分器、比较器、计数器,控制逻辑和时钟信号源。
积分器是A/D转换器的心脏,在一个测量周期内,积分器先后对输入信号电压和基准电压进行两次积分。
比较器将积分器的输出信号与零电平进行比较,比较的结果作为数字电路的控制信一号。
时钟信号源的标准周期Tc 作为测量时间间隔的标准时间。
它是由内部的两个反向器以及外部的RC组成的。
其振荡周期Tc=2RCIn1.5=2.2RC 。
ICL7106A/D转换器原理图计数器对反向积分过程的时钟脉冲进行计数。
控制逻辑包括分频器、译码器、相位驱动器、控制器和锁存器。
分频器用来对时钟脉冲逐渐分频,得到所需的计数脉冲fc和共阳极LED数码管公共电极所需的方波信号fc。
数字电压表设计报告

一、课程内容介绍:数字电压表是用来测量信号电压的装置。
它可以测量正弦波、方波、三角波和尖脉冲信号的电压。
在进行模拟、数字电路的设计、安装、调试过程中,经常要用到数字电压表。
本设计是设计一个三位直流数字电压表。
由于其用十进制数显示,测量迅速、精度高、显示直观,一次数字电压表得到广泛的使用。
二、总体设计1、实验目的设计制作一个具有数字显示功能的数字电压表。
该数字电压表能对日常电子线路中的电压进行方便的测量。
2、实验设计要求与内容1) 本设计要求从测试端输入0-51V的电压,经90K和10K电阻分压,送ADC0804输入端,所以实际输入电压是测试端的十分之一。
经89C2051处理,在D3、D2、D1三个七段显示。
2) 本电路ADC0804最大转换值为0FFH(255),对应输入电压是5.1V,对应测试端电压(显示电压)51V。
3) 若测试端输入为4V,实际进入ADC0804为0.4Va) 经A/D转换后为14Hb) 14H经十进制转换后为0020,则令R4=00,R5=20c) 将0020*2=0040,令R4=00,R5=40d) 将数字点设在D2上,D4 D3 D2 D1分别显示为0 0 4 04) 本电路省略D4,只显示D3 D2 D15)总体设计框图:3、实验技术指标1) 被测量信号电压范围:0-51V2) 测量精度:测量显示3为有效数字3) 分辨率:5.1V/2^8注意:在画PCB的时候要注意将晶振,即Y1,C4,C5,一起布置在芯片AT89C2051旁边,还有电容C2,C3也要靠近芯片AT89C2051,这样才能有效显示结果。
4、设计提示1) 本设计要求从测试端输入0-51V的电压,经90K和10K电阻分压,送ADC0804输入端,所以实际输入电压是测试端的十分之一。
经89C2051处理,在D3、D2、D1三个七段显示器显示。
2)本电路ADC0804最大转换值=0FFH(255),对应输入电压是5.1V,对应测试端电压(显示电压)是51V。
数字电压表实验报告

简易数字电压表设计报告姓名:***班级:自动化1202学号:****************:***2014年11月26日一.设计题目采用C8051F360单片机最小系统设计一个简易数字电压表,实现对0~3.3V 直流电压的测量。
二.设计原理模拟输入电压通过实验板PR3电位器产生,A/D转换器将模拟电压转换成数字量,并用十进制的形式在LCD上显示。
用一根杜邦实验线将J8口的0~3.3V输出插针与J7口的P2.0插针相连。
注意A/D转换器模拟输入电压的范围取决于其所选择的参考电压,如果A/D 转换器选择内部参考电压源,其模拟电压的范围0~2.4V,如果选择外部电源作为参考电压,则其模拟输入电压范围为0~3.3V。
原理框图如图1所示。
图1 简易数字电压表实验原理框图三.设计方案1.设计流程图如图2所示。
图2 简易数字电压表设计A/D转换和计时流程图2.实验板连接图如图3所示。
图3 简易数字电压表设计实验板接线图3.设计步骤(1)编写C8051F360和LCD初始化程序。
(2)AD转换方式选用逐次逼近型,A/D转换完成后得到10位数据的高低字节分别存放在寄存器ADCOH和ADC0L中,此处选择右对齐,转换时针为2MH Z。
(3)选择内部参考电压2.4V为基准电压(在实际单片机调试中改为3.311V),正端接P2.0,负端接地。
四、测试结果在0V~3.3V中取10组测试数据,每组间隔约为0.3V左右,实验数据如表1所示:显示电压(V)0.206 0.504 0.805 1.054 1.406实际电压(v)0.210 0.510 0.812 1.061 1.414相对误差(%) 1.905 1.176 0.862 0.659 0.565显示电压(V) 2.050 2.383 2.652 2.935 3.246实际电压(v) 2.061 2.391 2.660 2.943 3.253相对误差(%)0.421 0.334 0.301 0.272 0.215表1 简易数字电压表设计实验数据(注:其中显示电压指LCD显示值,实际电压指高精度电压表测量值)五.设计结论1.LCD显示模块的CPLD部分由FPGA充当,芯片本身自带程序,所以这个部分不用再通过quartus软件进行编程。
数字电压表设计报告.doc

s南湖学院《数字电路课程设计》设计报告项目名称:数字电压表课程设计专业年级:10级电信1班所在院系:湖南理工学院南湖学院学生姓名:戴思学号:24102200123完成时间:2012年11月12日目录一、设计任务二、硬件设计三、软件设计四、系统调试五、实验数据处理六、设计安装及调试中的体会七、参考文献附录:源程序代码2一、设计任务基于51单片机,以ADC0804芯片实现模数转换,由1602液晶屏显示,具有量程变换功能。
二、硬件设计2.1主控芯片本电压表采用STC89C52为主控芯片,电路如下图所接:晶振电路和复位电路略去,端口和上面各图的接口是一致的。
2.2模拟转换部分该电压表采用的ADC0804,此芯片优点是并行输出,速率快,缺点是只有8位,精度不高。
下来ADC0804芯片图:为了方便,将数字地和模拟地都直接接到了一起,DB0~DB7为并行输出口,CS,RD,WR为控制芯片模数转换及读取芯片数据和写数据的引脚,ADC0804可以自己产生时钟,只要在CLKR和CLKIN端接入电阻(10K)和电容(理论为150pf本人接的220pf),可产生脉冲信号。
VREF为参考电压端,VIN+和VIN-为电压输入端。
当电压加在VIN+和VIN -端时,在DB0~DB7可输出八位到单片机,本处参考电压为5V,则当输入电压U时,输出数据为temp,则U/temp=5/255.在自然状态下,最多也只能测5V电压,为了扩大量程,4本人加了衰减网络,见下图:接到ADC芯片上面的始终是VIN和地之前的电压,为了调精度,在上面加了滑动变阻器。
此处R22选用的是470K欧的,首先选的10K,因为内阻过小,导致在5V以下的电压测量不准确,choice和GND两端为外加的电压,这样,有部分电压会在R20或者R21上分压,只在保证在R22两端不超过5V,就可实现多量程电压测量。
2.3显示模块本处用1602液晶显示,1602优点是价格便宜,可显示基本字符,对于做电压表这样的东西已足够。
数字电压表设计报告

绪论本文将介绍一种以51单片机为核心的电压测量仪表,它能够测量电压量,并且测量结果能够通过数码管显示。
本文将就这一系统的硬件电路部分和软件程序部分分别作以介绍。
在硬件部分,本文就系统的各个组成模块的原理作了详细的介绍。
另外,在每一模块电路中都对元器件的选择作了简单的介绍。
在软件部分,详细阐述了各个模块电路的软件设计方法和设计中的细节。
本设计要求采用单片机进行控制,由于单片机的有效输入输出信号均为数字信号,而对于整个系统的前向通道有效信号均应为模拟信号,所以在设计过程中必然包括模拟量转换为数字量单元的设计。
另外,前向通道的设计还应包括对模拟信号的采集部分。
本文根据课题要求设计出0-5V的数字电压表。
第一章硬件部分的设计1.1 电路元器件选择数字电压表要求实现测定电压值并显示电压值。
这就要求数字电压表能够将电压这一模拟量转换成数字量输入到单片机,再经单片机控制LED 数码管显示电压值数值。
由于任务要求是实现本数字电压表0-5V电压测量,所以我们采用的A/D转换芯片为ADC0832,可以达到设计要求。
由于我们对AVR单片机还在学习过程中,我们用我们比较熟悉的51单片机来实现LED数码管显示功能。
1.2 ADC0832简介ADC0832是一个8位D/A转换器。
单电源供电,从+5V~+15V均可正常工作。
基准电压的范围为±10V;电流建立时间为1μS;CMOS工艺,低功耗20mW。
ADC0832转换器芯片为20引脚,双列直插式封装,其引脚排列如图1所示。
ADC0832内部结构框图如图所示。
该转换器由输入寄存器和DAC寄存器构成两级数据输入锁存。
使用时数据输入可以采用两级锁存(双锁存)形式,或单级锁存(一级锁存,一级直通)形式,或直接输入(两级直通)形式。
1.3 ADC0832引脚功能图1 ADC0832引脚图1.4 ADC0832内部结构图逐次逼近型A/D转换器ADC0832由八路模拟开关、地址锁存与译码器、比较器、D/A转换器、寄存器、控制电路和三态输出锁存器等组成。
简易数字电压表设计报告

摘要--------------------------------------------------------2 1.数字电压表的简介------------------------------------------31.1数字电压表的发展--------------------------------------31.2数字电压表的分类--------------------------------------42.设计的目的------------------------------------------------53.设计的内容及要求------------------------------------------54.数字电压表的基本原理--------------------------------------54.1数字电压表各模块的工作原理----------------------------54.2数字电压表各模块的功能--------------------------------54.3数字电压表的工作过程----------------------------------65.实验器材--------------------------------------------------76.电路设计实施方案------------------------------------------76.1.实验步骤---------------------------------------------76.2各个模块设计------------------------------------------86.2.1 基准电压模块-----------------------------------86.2.2 3 1/2位A/D电路模块---------------------------106.2.3 字形译码驱动电路模块--------------------------126.2.4 显示电路模块----------------------------------136.2.5 字位驱动电路模块------------------------------167.总结-----------------------------------------------------17 参考文件---------------------------------------------------18 附录-------------------------------------------------------19本文介绍了一种简易数字电压表的设计。
实验五 数字电压表设计报告

实验五数字电压表设计报告一、设计目的通过电子技术的综合设计,熟悉一般电子电路综合设计过程、设计要求、应完成的工作内容和具体的设计方法。
通过设计有助于复习、巩固以往的学习内容,达到灵活应用的目的。
设计完成后在实验室进行自行安装、调试,从而加强学生的动手能力。
在该过程中培养从事设计工作的整体概念。
二、设计要求1、利用所学的知识,通过上网或到图书馆查阅资料,设计三个实现数字万用表的方案;只要求写出实验原理,画出原理功能框图,描述其功能。
2、其中对将要实验方案3 1/2数字电压表,需采用中、小规模集成电路、MC14433 A/D转换器等电路进行设计,写出已确定方案详细工作原理,计算出参数。
3、技术指标:Ⅰ、测量直流电压1999-1V;199.9-0.1V;19.99-0.01V;1.999-0.001V;Ⅱ、测量交流电压1999-199V;Ⅲ、三位半显示;Ⅳ、比较设计方案与总体设计;Ⅴ、根据设计过程写出详细的课程设计报告;三、设计方案及原理数字显示电压表将被测模拟量转换为数字量,并进行实时数字显示。
该系统(如图1 所示)可采用MC14433—三位半A/D 转换器、MC1413七路达林顿驱动器阵列、CD4511 BCD到七段锁存-译码-驱动器、能隙基准电源MC1403和共阴极LED发光数码管组成。
本系统是三位半数字电压表,三位半是指十进制数0000~1999。
所谓3位是指个位、十位、百位,其数字范围均为0~9,而所谓半位是指千位数,它不能从0变化到9,而只能由0变到l,即二值状态,所以称为半位。
各部分的功能如下:三位半A/D转换器(MC14433):将输入的模拟信号转换成数字信号。
基准电源(MC1403):提供精密电压,供A/D 转换器作参考电压。
译码器(MC4511):将二—十进制(BCD)码转换成七段信号。
驱动器(MC1413):驱动显示器的a,b,c,d,e,f,g七个发光段,驱动发光数码管(LED)进行显示。
数字电压表课程设计报告

湖南科技大学信息与电气工程学院课程设计报告课程单片机原理及应用题目:数字电压表专业:班级:姓名:学号:任务书1数字电压表的概述数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。
传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用单片机的数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC进行实时通信。
目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。
与此同时,由DVM扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。
重点介绍单片A/D 转换器以及由它们构成的基于单片机的数字电压表的工作原理。
数字电压表的诞生打破了传统电子测量仪器的模式和格局。
它显示清晰直观、读数准确,采用了先进的数显技术,大大地减少了因人为因素所造成的测量误差事件。
数字电压表是把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式,并加以显示的仪表。
数字电压表把电子技术、计算技术、自动化技术的成果与精密电测量技术密切的结合在一起,成为仪器、仪表领域中独立而完整的一个分支,数字电压表标志着电子仪器领域的一场革命,也开创了现代电子测量技术的先河。
本设计采用了以单片机为开发平台,控制系采用AT89C52单片机,A/D转换采用ADC0809。
系统除能确保实现要求的功能外,还可以方便进行8路其它A/D转换量的测量、远程测量结果传送等扩展功能。
简易数字电压测量电路由A/D转换、数据处理、显示控制等组成。
模拟式电压表具有电路简单、成本低、测量方便等特点,但测量精度较差,特别是受表头精度的限制,即使采用0.5级的高灵敏度表头,读测时的分辨力也只能达到半格。
再者,模拟式电压表的输入阻抗不高,测高内阻源时精度明显下降。
单片机数字电压表课程设计报告

单片机数字电压表课程设计报告单片机数字电压表课程设计报告摘要:本次课程设计采用单片机来实现数字电压表的设计,通过对市场上常见单片机的选型和开发工具的使用,实现了数字电压表的硬件和软件设计。
该数字电压表具有分辨率高、测量精度高、响应速度快等特点,可广泛应用于测量高压、低压、直流电压等领域。
关键词:单片机、数字电压表、驱动电路、计数器一、课程设计目的本次课程设计旨在让学生了解数字电压表的设计方法和原理,通过使用单片机来实现数字电压表的设计,提高学生的实践能力和创新能力。
同时,通过本次课程设计,还可以让学生了解单片机的使用方法和开发工具的使用,加深对单片机应用的理解。
二、课程设计内容本次课程设计采用单片机来实现数字电压表的设计,具体包括以下内容:1. 对市场上常见单片机的选型和开发工具的使用。
2. 设计数字电压表的硬件电路,包括驱动电路、计数器、计数器清零电路等。
3. 设计数字电压表的软件电路,包括计数器清零程序、计数器累加程序、显示程序等。
4. 将数字电压表与单片机连接,进行测试和调试。
三、课程设计原理数字电压表的设计原理是利用单片机的计数器来实现对电压值的计数和显示。
单片机通过外部时钟信号来控制计数器的计数频率,将计数器的计数值累加到显示寄存器中,从而实现对电压值的显示。
同时,通过对电压值的测量和计算,可以实现对高压、低压、直流电压的测量和显示。
四、课程设计步骤1. 对市场上常见单片机的选型和开发工具的使用。
2. 设计数字电压表的硬件电路,包括驱动电路、计数器、计数器清零电路等。
3. 设计数字电压表的软件电路,包括计数器清零程序、计数器累加程序、显示程序等。
4. 将数字电压表与单片机连接,进行测试和调试。
五、课程设计成果通过本次课程设计,学生可以独立完成数字电压表的硬件和软件设计,掌握单片机的应用和开发技巧,提高实践能力和创新能力。
同时,学生还可以根据实际应用需求,对数字电压表进行改进和创新,提高其实用性和市场竞争力。
数字电压表的设计与制作报告

1课题名称数字电压表的设计与制作2设计指标及要求3位的数字电压表电路,技术指标要求是:设计并制作一个通用液晶显示211)直流电压测量范围(0-200V):共分5档200mV、2V、20V、200V;2)基本量程:200mV,测量速率(2-5)次任选;3)分辨率0.1mV;γ4)测量误差:%1.0±≤5)具有正、负电压极性显示,小数点显示和超量程显示。
3方案论证方案一:采用AT89S52单片机为核心、以AD0809数模转换芯片采样、以1602液晶屏显示制作具有电压测量功能的具有一定精度的数字电压表。
AT89S52是一个低功耗,高性能CMOS 8位单片机;8位AD转换器ADC0809,编程简单方便,价格便宜;采用液晶1602做为显示电路,功能强大,适合做各类扩展。
但该方案涉及的编程复杂,同时硬件电路也颇复杂。
方案二:采用ICL7106A/D转换器,液晶显示器EDS801A配以外围电路进行设计。
ICL7106是美国Intersil公司专为数字仪表生产的数字仪,满幅输入电压一般取200mV或2V。
该芯片集成度高,转换精度高,抗干扰能力强,输出可直接驱动LCD液晶数码管,只需要很少的外部元件,就可以构成数字仪表模块,硬件电路简单,而且精度高,完全可以实现要求。
综合分析,同时结合到软硬件实际,选择方案二,原理简单,仅涉及硬件电路。
4系统框图4.1 系统框图5单元电路设计及参数计算5.1AD转换器及外围电路设计电路图如下图5.1所示。
图5.1 AD转换器及外围电路图其中液晶显示采用EDS801,将其各数码的字段及公共端与ICL7106相应端联接。
OSC1、OSC2和OSC3是内部时钟的外接电阻和电容引脚;TEST是数字逻辑地端;VRH和VRL是参考电压的输入端,参考电压决定着AD转换器的灵敏度,它是由U DD分压而来,调节P R分压比可调节灵敏度(调满);两个CR脚是基准电容的外接引脚;COM端是模拟信号公共端;AZ、BUF和INT分别是自动调零端、缓冲控制端和积分器输出端;U+和U-为电源端;IN+和IN-为待测信号输入端。
数字电压表设计报告

31/2数字电压表一.设计目的课程设计的主要目的是通过某一模拟、数字电路的综合设计,熟悉一般模拟、数字电路综合设计过程,设计要求,应完成的工作内容和具体的设计方法。
通过设计也有助于复习、巩固以往的学习内容,达到灵活应用的目的。
在设计完成后还要将设计的电路安装,调试以加强动手能力,在此过程中培养从事设计工作的整体观念。
课程设计以培养能力为主,在独立完成设计任务的同时注重多方面能力的培养与提高,主要包括一下几方面:1.独立工作能力和创造力;2.综合运用专业以及基础知识,解决实际工程技术问题的能力;3.查阅图书资料、产品手册和各种工具书的能力;4.工程绘图能力;5.写技术报告和编制技术资料的能力。
二.设计指标1.能测量0-1.999V、0-19.99V、0-199.9V值;2.三位半数码显示;3.测量交直流电压;4.使用元器件越少越好。
三.设计方案及选择讨论数字电压表的主要内容可归纳为电压测量的数字化方法。
其关键是如何把连续的随时间变化的模拟量转化为数字量。
5.电路总体框图如图1-3所示图1-3 电路总体框图此方案所用器材:⒈数字逻辑试验箱万用表、直流电压源、双踪示波器、配线安装工具⒊集成电路及元器件的名称、型号及数量。
见表1-1:序号名称 型号 数量 1 双积分单片ADC MC14433 1块 2 BCD 七段译码器驱动器 CD4511 1块 3 达林顿反相驱动器 MC1413 1块 4 LED 七段显示数码管LG5011AH4只 5电阻、电容若干四、 单元电路设计⒈ 桥式整流电路:整流电路的任务是将交流点变换成直流电,完成这一任务主要是靠二极管单向导电作用,故二极管是构成整流电路的关键元件。
电路如图4-1-1:⒉ 量程控制电路:采用多量程选择的分压电阻网络,可按整机输入电阻为100M Ω标准经计算得4个分压电阻分别为9M Ω、900K Ω、90K Ω、10K Ω,可用四个双刀双掷开关进行控制切换,实现多量程扩展电压测量功能。
ICL7107数字电压表报告

电子技术课程设计课题:音响放大器的设计与制作专业班级:自动化10-1BF****: **学号: ***********指导老师: 邓己媛杨宣兵日期: 2011年12月目录一.设计任务书(设计课题、功能要求) (3)二.实验仪器 (3)三.设计框图及整机概述 (4)四.各单元电路的设计方案及原理说明 (4)1.电源滤波电路 (5)2.测试电源接入端电路 (6)3.测试端口输入保护电路 (7)4.ICL7107外接显示电路及其输出电路 (8)5.数码管的显示电路 (9)6.小数点驱动电路 (11)五.调试过程、参数测试及结果分析 (11)1.调试过程: (11)2.参数测试: (12)3.结果及其分析: (12)六.设计、安装及调试中的体会 (13)七.对本次课程设计的意见及建议 (13)八.参考文献 (13)九.附录 (14)附录A音响放大器原理图 (15)附录B PCB板图 (16)附录C 音响放大器实物图 (17)附录D 元器件清单 (17)一.设计任务书(设计课题、功能要求)该课程设计的主要任务是要求我们自己利用ICL7107及电阻电容去设计一个三位半的数字电压表,能够实现200mv、2v、20v、200v、1000v五个不同档位的电压测量。
整个过程以下环节:画原理图,PCB布局,电路版的打印及制作,打孔,焊锡元器件,调试,误差分析等。
整个过程要求我们先学会Altium Designer Release 10或者Altium Designer Release 6.9或者protel 99se等软件将原理图画出来及PCB的布局连线;其次制作PCB板时时要求我们掌握如何去打印PCB图,让我们知道了电路板上的铜线是怎么布上去的;然后在锡焊元器件的时候从很大一部分考验了我们锡焊的功底,同时又锻炼了我们的锡焊能力,提高了我们对锡焊能力培养的重视;最后在调试和误差分析的时候,让我知道在做电子类的产品的时候,并不是所有的理论在实践中都管用,让我们知道了理论和实践之间还是有很大的距离,提醒我们实践出真知,只有通过实践我们才可以更好的掌握和理解书本上理论。
数字电压表设计实验报告

《数字电路》课程设计报告课题:数字电压表专业:电子信息工程班级:姓名:学号:指导老师:日期:2013年12月10日目录一、摘要 (2)二、设计任务及要求 (2)三、设计总体方案 (2)四、单元电路的设计 (3)五、调试过程及结果分析 (6)六、心得感悟 (7)七、参考文献 (7)八、附录(整机逻辑电路图、实物图、PCB板图) (8)一、摘要本文主要介绍的是基于ICL7107数字电压表的设计的设计,ICL7107是目前广泛应用于数字测量系统是一种集三位半转换器段驱动器位驱动器于一体的大规模集成电路,ICL7107是目前广泛应用于数字测量系统的一种3位半A/D转换器,能够直接驱动共阳极数字显示器,够成数字电压表,此电路简洁完整,稍加改造就可以够成其他电路,如数字电子秤、数字温度计的等专门传感器的测量工具。
ICL7107是目前广泛应用于数字测量系统是一种集三位半转换器段驱动器、位驱动器于一体的大规模集成电路,官地方官方主要用于对不同电压的测量和许多工程上的应用,调频接口电路,它采用的是双积分原理完成A/D转换,全部转换电路用CMOS大规模集成电路设计。
应用了ICL7107芯片数码管显示器等,芯片第一脚是供电,正确电压时DC5V,连接好电源把所需要测量的物品连接在表的两个端口,从而可以在显示器上看到所需要的结果。
在软件设计上,主要编写了实现计数频率的调节和单片机功能的相关程序,,最后把软件设计和硬件设计结合到一起,然后进行调试。
二、设计任务及要求1. 设计一个数字电压表电路,能够实验电压测量;2.测量范围:通过小数点驱动电路,直流电压0V到1.999V,0V到19.99V,0V 到199.9V,0V到1999V.3.画出数字电压表电路原理图,并作出PCB图;4.利用芯片ICL7107来实现电路功能;5.选择合适的电阻、电容、液晶显示器等器件;6.完成全电路理论设计、制作、调试,制板锡焊;7.上交制作产品一件。
数字电压表课程设计报告

数字电压表课程设计报告一、实验目的本实验旨在使学生掌握数字电压表的基本原理、构成和使用方法,通过实践锻炼学生的动手操作能力和实际问题解决能力。
二、实验器材数字电压表、直流稳压电源、电阻箱、待测电路板等。
三、实验内容1.数字电压表的基本原理、构成和使用方法的介绍;2.根据实验要求搭建待测电路;3.调节直流稳压电源输出电压为所需值;4.连接数字电压表到待测电路上并测量电压值;5.对测得的电压值进行分析、处理和讨论。
四、实验流程及步骤1.实验器材准备:数字电压表、直流稳压电源、电阻箱、待测电路板等器材;2.理解数字电压表的基本原理与构成,并熟练掌握使用方法;3.根据实验所需,找到相应的电路板,搭建待测电路,并连接好直流稳压电源;4.调节直流稳压电源的输出电压为所需值,并连接数字电压表到待测电路上;5.测量待测电路的电压值,并在数字电压表上进行记录;6.对测得的电压值进行分析、处理和讨论,并得出实验结论。
五、实验注意事项1.在操作实验器材时,务必严格按照使用说明书和教师的要求进行操作;2.实验器材保持完好无损,任何破损的器材均不能使用;3.实验前需仔细了解实验内容,规划实验流程;4.在操作实验时,要认真记录实验数据,并进行及时分析处理;5.实验结束后,将实验器材妥善归位,保持实验室整洁干净。
六、实验结果及结论通过实验,我们得到了待测电路的电压值,并对其进行了分析、处理和讨论。
根据实验结果和所给数据,我们得出了结论:数字电压表可准确测量待测电路的电压值,为后续研究和实践提供重要依据。
七、实验心得体会通过本次实验,我对数字电压表的原理及其使用方法有了更深入的了解,并通过实践掌握了一定的动手操作能力和实际问题解决能力。
同时,我认识到在实验中必须注重细节和注意安全,仔细完成每一个实验步骤,及时记录和分析实验数据,才能使实验结果更加准确和可靠。
数字电路实验三:数字电压表(设计报告)

数字电路实验三:数字电压表(设计报告)数电实验3设计报告实验名称:数字电表实验目的:1.掌握组合逻辑与时序逻辑电路的设计方法及调试方法2.熟练掌握常用MSI逻辑芯片的功能及使用方法3.初步掌握Verilog HDL数字系统设计方法4.熟悉PLD实验箱的结构和使用及Quartus II软件的基本操作5.掌握采用Quartus II软件和实验箱设计实现逻辑电路的基本过程设计任务及要求:1、利用FPGA 与ADC0809 设计一个数字电压表,能够测量0-5V 之间的直流电压值,四位数码显示。
2、在实验电路板上焊接插座,将ADC0809 安装在插座上。
3、选择一路模拟量输入通道(如:IN0),经可调电位器送入0-5V 的直流电压。
4、ADC0809 时序由FPGA 控制,ADC 转换输出的数字量(D7-D0)送回FPGA,转换结果由实验箱上的LED 数码管以十进制形式显示。
5、ADC0809 的VREF 接+5V 电压。
6、FPGA 与ADC0809 之间接口利用实验箱上的“彩色液晶”接口。
程序设计过程:1、定义程序名、输入输出量和初始化Moduleadc_cc(clkin,rst,clkout,sel,data,start,eoc,ale,oe,seg_com,seg_data); input clkin; //时钟输入50MHZ inputrst;inputeoc; //ADC0809input [7:0] data; //输入八位数据output clkout; //时钟输出output start; //ADC0809起始信号 output [2:0] sel;//转换通道 output ale; //ADC0809 outputoe;//ADC0809 output [7:0] seg_com; //位选 output [7:0] seg_data;//段选parameter CLK_FREQ = 'D50_000_000;//系统时钟50MHZ parameter CLK_out_FREQ ='D500_000;//输出时钟parameter state_pre = 0; //sel 状态1parameter state_pre2 = 1; //ale 状态2 parameter state_start =2; //start 状态3 parameter state_conv = 3; //conv 状态4parameter state_wait = 4; // 状态5 parameter state_readpre = 5;// 状态6 parameter state_read = 6;//over // 状态7reg [2:0] sel; //定义寄存器 reg ale;//定义寄存器 reg start; //定义寄存器 regoe; //定义寄存器reg [7:0] data_led; //LED显示数据 reg[31:0] DCLK_DIV; //32位计数器regclkout; //提供ADC0809时钟500KHZ reg [3:0]state = state_pre;2、按照PDF所给出的时序图进行编程对照时序图,使ADC0809按上图方式工作进行编程always @ (negedgeclkout) case (state) state_pre : begin sel[2:0] <='b000; //ABC 000 通道0 state <= state_pre2;//转到状态2 oe<= 0; //OE拉低 end state_pre2 :begin ale <= 1; state <= state_start; endstate_start : begin start <= 1; ale<= 0; state <=state_conv; end state_conv : begin ale <= 0;start <= 0; state <= state_wait; end state_wait :begin if(eoc) begin state <= state_readpre; endend state_readpre : begin oe<= 1; state <= state_read; end state_read : begin data_led = data; state <= state_pre; end endcase//ALE拉高 //转到状态3 //START拉高 //转到状态4//ALE拉低锁定 //START拉低 AD启动 //转到状态5 //查询EOC是否被拉高 //转到状态6 //输出使能拉高 //转到状态7//开始读数据 //重新回到状态1 进行下一次AD转换 3、将AD转换结果用数码管显示。
单片机数字电压表设计报告

《单片机原理与接口技术》课程设计报告姓名梁家余学号 0314院系自机学院班级电气三班指导教师黄钺冯维杰王玮2012 年 06月目录4) LED显示器与单片机接口设计 (9)9.程序设计 (11)1)程序设计总方案 (11)2)系统子程序设计 (11)(1)初始化程序 (11)10.仿真 (12)1)软件调试 (12)11.显示结果及误差分析 (13)二、总结 (14)三、参考文献 (15)四、附录 (15)一、单片机数字电压表设计1.设计任务基于MCS-51系列单片机AT89C51,设计一个能测量0~5V直流电压的数字电压表 2.设计要求1)选用A/D转换器ADC0808,测定0——+5V范围内的直流电压值。
2)采集的数据送四位数码管实时显示。
3)@实现多路电压循环测量和循环显示。
4)@实现0——500mA电流的测量和显示。
5)实现功率的测量。
3. 设计思路1)根据设计要求,选择AT89C51单片机为核心控制器件。
2)A/D转换采用ADC0808实现,与单片机的接口为P1口和P2口的高四位引脚。
3)电压显示采用4位一体的LED数码管。
4)LED数码的段码输入,由并行端口P0产生:位码输入,用并行端口P2低四位4) LED显示器与单片机接口设计 (9)9.程序设计 (11)1)程序设计总方案 (11)2)系统子程序设计 (11)(1)初始化程序 (11)10.仿真 (12)1)软件调试 (12)11.显示结果及误差分析 (13)二、总结 (14)三、参考文献 (15)四、附录 (15)产生。
4.硬件电路设计1)转换过程如下:开始时,寄存器各位清零,转换时,先将最高位置1,把数据送入A/D转换器转换,转换结果与输入的模拟量比较,如果转换的模拟量比输入的模拟量小,则1保留,如果转换的模拟量比输入的模拟量大,则1不保留,然后从第二位依次重复上述过程直至最低位,最后寄存器中的内容就是输入模拟量对应的二进制数字量[5]。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
数字电压表的综合设计一、设计任务1、使用状态机实现对模数转换芯片TLC549的采样控制,实现一个简易的电压表。
并将硬件验证结果与测量电压值进行比较。
二、整体设计1、本次设计是利用FPGA控制 TLC549,将 AD转换后的电压值读出,并显示在数码管。
模块一为TLC549主控制模块,模块二为bcd1即一位BCD码加减模块,模块三为lookup即A/D转换BCD码模块,模块四为scan_led数码显示模块。
然后将模块生成为相应器件,按照原理图连接,得出相应波形及数据。
由FPGA构成的ASIC的三部分电路(如结构示意图所示):(1)用有限状态机设计的A/D转换控制电路;(2)将8位数字量DB0-DB7转换成3位BCD码电压值的转换路;(3)3位LED显示器的译码显示电路;结构示意图2、原理框图3、模数转换-TLC549 ADC的介绍(1)TLC549各引脚功能如下:●ANALOG IN,模拟量输入端;●sclk,串行时钟输入端;●cs,芯片选择,低有效;●DATA OUT,数字量输出端;●GND,模拟接地;●REF+,基准电压输入端;●REF-,基准电压负端;●VCC,正电源电压端。
(2)TCL549的工作时序图当片选 CS为低电平时,串行输人数据才能被移入移位寄存器。
当 CS为低电平时,在每一个SCLK时钟的上升沿将DIN的一位数据移入移寄存器。
注意,二进制最高有效位被导前移入。
接着, CS的上升沿才将移位寄存器的数据锁存,供DAC电路进行转换;当片选CS为高电平时,串行输人数据不能被移入移位寄存器。
注意.CS的上升和下降都必须发生在SCLK为低电平期间。
三、模块设计模块一module tcl549c(clk,cs,sdata,clk_ad,reset,dataout);input clk,reset,sdata;output cs,clk_ad;output[7:0]dataout;reg cs,clk_ad_r,clk_r;reg[7:0]dataout,dataout_r;reg[7:0]count;reg[2:0]temp;reg[3:0]cnt;reg mark;reg flag;parameter [2:0]s0=0,s1=1,s2=2;reg[2:0]c_st;always@(posedge clk)begin if(count<119)count<=count+1;else begin clk_r<=~clk_r;count=0;endendalways@(posedge clk)begin clk_ad_r<=~clk_r;endassign clk_ad=clk_ad_r;always@(posedge clk_r or negedge reset)begin if(!reset) c_st<=s0;else case(c_st)s0:begin cs<=1;mark<=0;if(temp==3)begin temp<=0;c_st<=s1;endelse begin temp<=temp+1;c_st<=s0;endends1:begin cs<=0;mark<=1;c_st=s2;ends2:begin cs<=0;mark<=1;if(flag==1)c_st<=s0;else c_st<=s2;enddefault:c_st<=s0;endcaseendalways@(posedge clk_ad_r)beginif(mark==1)if(cnt==8)begin cnt<=0;flag<=1;endelse begin cnt<=cnt+1;flag<=0;endendalways@(posedge clk_ad_r)beginif(mark==1)if(flag==1)dataout<=dataout_r;else dataout_r={dataout_r[6:0],sdata};//串转并endendmodule模块二/*功能:一位BCD码加减法模块输入参数:标准时钟clk,被减数/加数dataa,减数/加数datab,低位来的借位/进位cin输出参数:向高位的借位/进位cout,差/和result*/module bcd1(dataa, datab,cin, cout, result);input [3:0] dataa;input [3:0] datab;input cin;output reg cout;output [3:0]result;reg [4:0]result_r;assign result=result_r;always @(*)beginresult_r = dataa + datab + cin; // 二进制加法if((result_r > 4'd9 )) //||((result_r == 4'd0)&&(dataa != 0))||((result == 4'd1)&&(dataa != 0)&&(result_ab == 4'd0))/*当结果大于9时,补6,当结果由不同时为0的加数相加得0时,补6*/ beginresult_r = result_r + 4'd6;cout = 1;endelsebeginresult_r = result_r;cout =0;endendendmodule模块三module lookup(V,q);input [7:0]V;output [11:0]q;reg [11:0]q;reg [11:0]HB,LB;wire d1,d2,d3;always@(V)begin case(V[7:4]) //--A/D值的高4位转换成3位BCD码4'b1111: HB<=12'b001001000000; //--2.404'b1110: HB<=12'b001000100100; //--2.244'b1101: HB<=12'b001000001000; //--2.084'b1100: HB<=12'b000110010010; //--1.924'b1011: HB<=12'b000101110110; //--1.764'b1010: HB<=12'b000101100000; //--1.604'b1001: HB<=12'b000101000100; //--1.444'b1000: HB<=12'b000100101000; //--1.284'b0111: HB<=12'b000100010010; //--1.124'b0110: HB<=12'b000010010110; // --0.964'b0101: HB<=12'b000010000000; // --0.804'b0100: HB<=12'b000001100100; //--0.644'b0011: HB<=12'b000001001000; //--0.484'b0010: HB<=12'b000000110010; //--0.324'b0001: HB<=12'b000000010110; //--0.164'b0000: HB<=12'b000000000000; // --0.00default: HB<=12'b111111111111;endcasecase(V[3:0]) //--A/D值低4位变为3位BCD码4'b1111: LB<=12'b000000010101; // --0.154'b1110: LB<=12'b000000010100; // --0.144'b1101: LB<=12'b000000010011; // --0.134'b1100: LB<=12'b000000010010; // --0.124'b1011: LB<=12'b000000010001; // --0.114'b1010: LB<=12'b000000010000; // --0.104'b1001: LB<=12'b000000001001; // --0.094'b1000: LB<=12'b000000001000; // --0.084'b0111: LB<=12'b000000000111; // --0.074'b0110: LB<=12'b000000000110; // --0.064'b0101: LB<=12'b000000000101; // --0.054'b0100: LB<=12'b000000000100; // --0.044'b0011: LB<=12'b000000000011; // --0.034'b0010: LB<=12'b000000000010; // --0.024'b0001: LB<=12'b000000000001; // --0.014'b0000: LB<=12'b000000000000; // --0.00default: LB<=12'b111111111111;endcaseendbcd1u1(.dataa(LB[3:0]),.datab(HB[3:0]),.result(q[3:0]),.cin(1'b0),.cout(d 1));bcd1u2(.dataa(LB[7:4]),.datab(HB[7:4]),.result(q[7:4]),.cin(d1),.cout(d2) );bcd1u3(.dataa(LB[11:8]),.datab(HB[11:8]),.result(q[11:8]),.cin(d2),.cout( d3));endmodule模块四module scan_led(clk_1k,d,dig,seg); //模块名scan_ledinput clk_1k; //输入时钟input[11:0] d; //输入要显示的数据output[7:0] dig; //数码管选择输出引脚output[7:0] seg; //数码管段输出引脚reg[7:0] seg_r; //定义数码管输出寄存器reg[7:0] dig_r; //定义数码管选择输出寄存器reg[3:0] disp_dat; //定义显示数据寄存器reg[2:0]count; //定义计数寄存器assign dig = dig_r; //输出数码管选择assign seg = seg_r; //输出数码管译码结果always @(posedge clk_1k) //定义上升沿触发进程beginif(count<2)count <= count + 1'b1;else count<=0;endalways @(posedge clk_1k)begincase(count) //选择扫描显示数据3'd0:disp_dat = d[11:8]; //第一个数码管3'd1:disp_dat = d[7:4]; //第二个数码管3'd2:disp_dat = d[3:0]; //第三个数码管endcasecase(count) //选择数码管显示位3'd0:dig_r = 8'b01111111; //选择第一个数码管显示3'd1:dig_r = 8'b10111111; //选择第二个数码管显示3'd2:dig_r = 8'b11011111; //选择第三个数码管显示endcasecase(count)3'd0:seg_r[7]=0;3'd1:seg_r[7]=1;3'd2:seg_r[7]=1;endcaseendalways @(disp_dat)begincase(disp_dat) //七段译码4'h0:seg_r[6:0] = 7'b1000000; //显示04'h1:seg_r[6:0] = 7'b1111001; //显示14'h2:seg_r[6:0] = 7'b0100100; //显示24'h3:seg_r[6:0] = 7'b0110000; //显示34'h4:seg_r[6:0] = 7'b0011001; //显示44'h5:seg_r[6:0] = 7'b0010010; //显示54'h6:seg_r[6:0] = 7'b0000010; //显示64'h7:seg_r[6:0] = 7'b1111000; //显示74'h8:seg_r[6:0] = 7'b0000000; //显示84'h9:seg_r[6:0] = 7'b0010000; //显示9 default:seg_r[6:0] = 7'b1111111;endcaseendendmodule仿真波形如下:四、结论调节SPOC实验平台上的相应按钮,使显示管出现不同的电压数值,同时使用万用表测出对应的电压数值。