运用单片机制作四位半数字电压表

合集下载

单片机课程设计报告报告——数字电压表

单片机课程设计报告报告——数字电压表

数字电压表单片机课程设计报告班级:姓名:学号:指导教师:2011 年3 月29 日数字电压表电路设计报告一、题目及设计要求采用51系列单片机和ADC 设计一个数字电压表,输入为0~5V 线性模拟信号,输出通过LED 显示,要求显示两位小数。

二、主要技术指标1、数字芯片A/D 转换技术2、单片机控制的数码管显示技术3、单片机的数据处理技术三、方案论证及选择主要设计方框图如下:1、主控芯片方案1:选用专用转化芯片INC7107实现电压的测量和实现,用四位数码管显示出最后的转换电压结果。

缺点是京都比拟低,内部电压转换和控制局部不可控制。

优点是价格低廉。

方案2:选用单片机AT89C51和A/D 转换芯片ADC0809实现电压的转换和控制,用四位数码管显示出最后的转换电压结果。

缺点是价格稍贵;优点是转换京都高,且转换的过程和控制、显示局部可以控制。

基于课程设计的要求和实验室能提供的芯片,我选用了:方案2。

2、显示局部方案1:选用4个单体的共阴极数码管。

优点是价格比拟廉价;缺点是焊接时比拟麻烦,容易出错。

方案2:选用一个四联的共阴极数码管,外加四个三极管驱动。

这个电路几乎没有缺点;优点是便于控制,价格低廉,焊接简单。

基于课程设计的要求和实验室所能提供的仪器,我选用了:方案2。

四、电路设计原理模拟电压经过档位切换到不同的分压电路筛减后,经隔离干扰送到A/D转换器进展A/D转换。

然后送到单片机中进展数据处理。

处理后的数据送到LED 中显示。

同时通过串行通讯与上位通信。

硬件电路及软件程序。

而硬件电路又大体可分为A/D转换电路、LED显示电路,各局部电路的设计及原理将会在硬件电路设计局部详细介绍;程序的设计使用汇编语言编程,利用Keil和PROTEUS 软件对其编译和仿真。

一般I/O接口芯片的驱动能力是很有限的,在LED显示器接口电路中,输出口所能提供的驱动电流一般是不够的尤其是设计中需要用到多位LED,此时就需要增加LED驱动电路。

单片机设计数字电压表

单片机设计数字电压表

课题:数字电压表的设计一、系统设计内容利用单片机AT89C52和ADC0809设计一个数字电压表,能够测量0~5V之间的电压值,用四位数码管显示。

数字电压表利用A/D转换原理,将被测模拟量转换成数字量,并用数字方式显示测量结果的电子测量仪表。

A/D转换器的精度影响数字万用表的准确度。

本书采用ADC0808对输入模拟信号进行转换,控制核心AT89C51单片机对转换的结果进行运算和处理,最后驱动输出装置显示数字电压信号,通过Proteus仿真软件实现接口电路设计,并进行实时仿真。

设计的数字电压表可以测量0~5V的电压值,AT89C51为8位单片机,当ADC0808的输入电压为5V时,输出数字量为FFH,故最大分辨率为0.0196V。

如果要获得更高的精度,需采用12位、13位等高于8位的A/D转换器。

数字电压表的显示部分可以增加BCD码调整程序来通过四位数码显示管显示其数据。

本设计的显示偏差,可以通过校正0808的基准参考电压来解决,或用软件编程来校正其测量值。

本书用单片机AT89C51、ADC0808和数码管构成一个简易数字电压表控制系统,在设计过程中通过Proteus仿真软件进行调试,具有电路简单、成本低、精度高、速度快和性能稳定等优点。

二、系统设计目标(1)掌握Proteus中电压探针和电压表的使用方法。

(2)通过制作简易电压表,学会A/D转换芯片在单片机应用系统中的硬件接口技术和编程方法。

(3)了解ADC0809芯片的功能以及使用方法。

三、系统设计步骤1、Proteus电路设计利用单片机AT89C52和ADC0809设计一个数字电压表的原理图如图1-1所示。

图1-1 ADC0809与单片机的接口电路(1)选取元器件:①单片机:AT89C52②电阻:RES*③ 4位共阴极的数码管:7SEG-MPX4-CC④ A/D转换芯片:ADC0808(代替0809)⑤电位器:POT-HG⑥瓷片电容:CAP⑦晶振:CRYSTAL(2)放置元器件、电源极地、连线、元器件属性设置。

基于单片机下的数字电压表设计毕业论文

基于单片机下的数字电压表设计毕业论文

河南理工大学万方科技学院本科毕业论文基于单片机下的数字电压表设计毕业论文目录前言 (1)1 设计任务与分析 (3)1.1 设计任务简介及背景 (3)1.1.1 单片机简介 (3)1.1.2 背景及发展情况 (3)1.2 设计任务及要求 (5)1.3 设计总体方案及方案论证 (5)1.4 数据输入模块的方案与分析 (7)1.4.1 芯片选择 (6)1.4.2 实现方法介绍 (6)1.4.3 输入模块流程图 (10)1.5 A/D模块的方案与分析 (10)1.5.1 芯片的选择 (11)1.5.2 实现方法介绍 (11)1.5.3 A/D模块流程图 (13)1.6 数据处理及控制模块 (13)1.6.1 芯片选择 (14)1.6.2 实现方法介绍 (14)1.6.3 数据处理及控制模块流程图 (14)1.7 显示模块 (15)1.7.1 芯片选择 (15)1.7.2 实现方法介绍 (15)2 硬件设计 (16)2.1 数据输入模块原理图 (17)2.2 A/D模块原理图 (18)2.3 控制模块原理图 (20)2.4 显示模块原理图 (21)3 软件设计 (23)3.1 主程序流程图 (23)3.2 子程序介绍 (24)3.2.1 初始化程序 (24)3.2.2 中断子程序 (24)3.2.3 档位选择子程序 (25)4 主要芯片 (29)本科毕业论文4.1 AT89C52的功能简介 (29)4.1.1 AT89C52芯片简介 (29)4.1.2 引脚功能说明 (29)4.2 ICL7135功能简介 (31)4.2.1 ICL7135 芯片简介 (31)4.2.2 引脚功能说明 (32)4.3 LCD1602功能简介 (35)4.3.1 LCD1602芯片简介 (35)4.3.2 引脚功能说明 (35)4.4 CD4052的功能介绍 (38)4.4.1 CD4052芯片简介 (38)4.4.2 引脚功能说明 (39)4.5 CD4024的功能介绍 (39)4.5.1 CD4024芯片简介 (39)4.5.2 引脚功能说明 (40)4.6 OP07的功能介绍 (40)4.6.1 OP07的功能简介 (41)4.6.2 引脚功能说明 (41)结论 (42)致谢 (44)参考文献 (45)河南理工大学万方科技学院本科毕业论文前言数字电压表(Digital Voltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。

用8031单片机设计简单数字电压表以及原理图

用8031单片机设计简单数字电压表以及原理图

AT89S51和ADC0809构成的数字电压表电路原理图利用单片机AT89S51与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码显示,但要求使用的元器件数目最少。

3.系统板上硬件连线a) 把“单片机系统”区域中的P1.0-P1.7与“动态数码显示”区域中的ABCDEFGH端口用8芯排线连接。

b) 把“单片机系统”区域中的P2.0-P2.7与“动态数码显示”区域中的S1S2S3S4S5S6S7S8端口用8芯排线连接。

c) 把“单片机系统”区域中的P3.0与“模数转换模块”区域中的ST端子用导线相连接。

d) 把“单片机系统”区域中的P3.1与“模数转换模块”区域中的OE端子用导线相连接。

e) 把“单片机系统”区域中的P3.2与“模数转换模块”区域中的EOC端子用导线相连接。

f) 把“单片机系统”区域中的P3.3与“模数转换模块”区域中的CLK端子用导线相连接。

g) 把“模数转换模块”区域中的A2A1A0端子用导线连接到“电源模块”区域中的GND端子上。

h) 把“模数转换模块”区域中的IN0端子用导线连接到“三路可调电压模块”区域中的VR1端子上。

i) 把“单片机系统”区域中的P0.0-P0.7用8芯排线连接到“模数转换模块”区域中的D0D1D2D3D4D5D6D7端子上。

4.程序设计内容i. 由于ADC0809在进行A/D转换时需要有CLK信号,而此时的ADC0809的CLK是接在AT89S51单片机的P3.3端口上,也就是要求从P3.3输出CLK信号供ADC0809使用。

因此产生CLK信号的方法就得用软件来产生了。

ii. 由于ADC0809的参考电压VREF=VCC,所以转换之后的数据要经过数据处理,在数码管上显示出电压值。

实际显示的电压值(D/256*VREF)5.汇编源程序(略)6. C语言源程序#include <AT89X52.H>unsigned char code dispbitcode[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};unsigned char code dispcode[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00};unsigned char dispbuf[8]={10,10,10,10,0,0,0,0};unsigned char dispcount;unsigned char getdata;unsigned int temp;unsigned char i;sbit ST=P3^0;sbit OE=P3^1;sbit EOC=P3^2;sbit CLK=P3^3;void main(void){ST=0;OE=0;ET0=1;ET1=1;EA=1;TMOD=0x12;TH0=216;TL0=216;TH1=(65536-4000)/256; TL1=(65536-4000)%256; TR1=1;TR0=1;ST=1;ST=0;while(1){if(EOC==1){OE=1;getdata=P0;OE=0;temp=getdata*235; temp=temp/128;i=5;dispbuf[0]=10; dispbuf[1]=10; dispbuf[2]=10; dispbuf[3]=10; dispbuf[4]=10; dispbuf[5]=0;dispbuf[6]=0;dispbuf[7]=0;while(temp/10){dispbuf[i]=temp%10; temp=temp/10;i++;}dispbuf[i]=temp;ST=1;ST=0;}}}void t0(void) interrupt 1 using 0{CLK=~CLK;}void t1(void) interrupt 3 using 0{TH1=(65536-4000)/256;TL1=(65536-4000)%256;P1=dispcode[dispbuf[dispcount]];P2=dispbitcode[dispcount];if(dispcount==7){P1=P1 | 0x80;}dispcount++;if(dispcount==8){dispcount=0;}}利用单片机AT89S51与ADC0809设计一个数字电压表2008-05-22 14:521.实验任务利用单片机AT89S51与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码显示,但要求使用的元器件数目最少。

51单片机数字电压表及显示学号后四位

51单片机数字电压表及显示学号后四位

学院单片机原理作业~~~~~~课程题目:单片机原理及应用作业题目:数字电压表设计专业班级:学生姓名:学号:任课教师:目录数字电压表设计总体方案 (1)数字电压表实验原理图 (1)A/D转换原理 (2)动态显示接口电路分析 (2)编程思路阐述 (3)仿真运行效果图 (4)显示实时电位器的输出电压 (4)显示学号后四位数(2673) (5)课程学习内容总结及教学建议 (6)课程内容总结 (6)课程学习教学建议 (7)学习心得体会 (8)自我评价(优秀) (9)实验源程序 (10)数字电压表设计总体方案数字电压表实验原理图A/D转换原理在A/D转换器中,因为输入的模拟信号在时间上是连续的,而输出的数字信号代码是离散的,所以A/D转换器在进行转换时,必须在一系列选定的瞬间(时间坐标轴上的一些规定点上)对输入的模拟信号采样,然后再把这些采样值转换为数字量。

因此,一般的A/D转换过程是通过采样保持、量化和编码这三个步骤完成的,即首先对输入的模拟电压信号采样,采样结束后进入保持时间,在这段时间内将采样的电压量转化为数字量,并按一定的编码形式给出转换结果,然后开始下一次采样。

图1-1为模拟量到数字量转换过程的框图。

图1-1 A/D转换过程动态显示接口电路分析动态显示主要就是利用人眼的视觉感来设计的,一般来说如果显示的频率过慢,则会有断断续续的显示;如果显示的频率加快,则人眼就分辨不出这种视觉残余!动态显示过程采用循环导通或循环截止各位显示器的做法。

当循环显示时间间隔较小(如10ms)时,由于人眼的暂留特性,就将看不出数码管的闪烁现象。

动态显示接口的突出特点是占用资源少,但由于显示值需要CPU随时刷新,故其占用时机较多。

编程思路阐述本电压表输出设计是基于8051单片机控制系统,采用ADC0808数模转换芯片ADC0808是采样分辨率为8位的、以逐次逼近原理进行模/数转换的器件。

其内部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。

四位半的数字万用表

四位半的数字万用表

电子测量原理课程设计报告——数字万用表设计作者:提交时间:目录一、设计思路 (3)二、设计原理 (4)1、DMM调理网络 (4)1)多量程交流电压测量原理 (4)2)多量程数字电流表 (6)3)多量程电阻测量 (7)4)二极管测量电路 (8)5)通断测试电路 (9)2、数字电压表的设计 (10)1)多量程直流电压测量 (10)2)模数(A/D)转换芯片的选择 (11)3)单片机简介及本设计单片机的选择 (14)4)各种显示器件的介绍和选择 (15)5)电源模块的设计 (19)三、项目准备 (21)1、职责分工 (21)2、后期准备 (21)摘要本次设计的核心是采用AD转换芯片ICL7135和单片机芯片AT89S52设计四位半数字万用表(DMM),能够测量交、直流电压值(AC、DC) 、直流电流、电阻,采用LCD液晶显示测量结果。

此系统由分流电阻、分压电阻、基准电阻、51单片机最小系统、显示部分、报警部分、AD转换和控制部分组成。

为使系统更加稳定,使系统整体精度得以保障,本电路使用了ICL7135模数转换芯片,单片机系统设计采用AT89S52单片机作为主控芯片,显示部分用1602液晶。

程序每执行周期耗时缩到最短,这样保证了系统的实时性。

一、设计思路数字万用表的基本组成二、设计原理1、DMM 网络1)多量程交流电压测量原理数字万用表中交流电压测量电路是在直流电压测量电路的基础上,在分压器之后加入了一级交流-直流(AC-DC)变换器,右图为其原理简图。

该AC-DC 变换器主要由集成运算放大器、整流二极管、RC 滤波器等组成,还包含一个能调整输出电压高低的电位器,用来对交流电压档进行校准之用。

调整该电位器可使数字表头的显示值等于被测交流电压的有效值。

同直流电压档类似,出于对耐压、安全方面的考虑,交流电压最高档的量限通常限定为700V(有效值)。

图2 AC-DC 变换器原理简图AD737 运用分析:在本设计中AC/DC转换可以采用图2所示的原理实现。

四位半数字电压表设计

四位半数字电压表设计

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊4½位数字电压表[摘要]4½位数字电压表是数字表的一种,它的精度比普通常用的三位半要高出一个等级,它最高显示到19999,也就是万分之一。

它是由ICL7135芯片、三极管(晶体管)9013驱动阵列、74LS47BCD到七段锁存-译码-驱动器、共阳极LED数码管﹑基准电源、时钟及量程开关电路组成。

经过用高精度基准调整的四位半电压表拥有更加高精度的测量值,更加方便直观的测出用电器电压的工作情况。

[关键词] A/D转换器数码显示管高精度译码器驱动器┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊4½ Digital Voltage[Abstract]4 ½ a digital voltmeter is a digital watch, the accuracy of it than ordinary commonly used three and a half to a higher level, it shows the highest to 19999, also is one over ten thousand. It is by the ICL7135 chip, transistor (transistor) 9013, 74 LS47BCD drive array to these sevenlatch-decoding-drive, LED digital tube of anode, benchmark power supply, clock and the scale settimg switch of circuit.After the adjustment of high precision benchmark with four half a meter high accuracy measuring values have more, more convenience for intuitive measure voltage appliances work.[Key words] A/D converter Digital display high-precision decoder driver┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊目录1 前言 (4)1.1总体方案 (5)1.1.1设计的要求 (5)1.1.2设计的内容及要求 (5)1.1.3设计的目的 (5)1.2数字电压表的特点及发展趋势 (5)1.2.1数字电压表的特点 (6)1.2.2数字电压表的发展趋势 (7)2 数字电压表的基本组成原理及单元电路设计 (7)2.1 数字电压表的基本原理及系统框图 (7)2.2 各部分电路的功能 (8)2.3 4½位A/D转换器ICL7135的结构及特性 (8)2.3.1 ICL7135的内部电路结构 (9)2.3.2 ICL7135的引脚功能介绍 (9)2.4 ICM7556时钟振荡器 (11)2.4.1 NE555组成的多谐振荡器 (11)2.4.2 ICM7556引脚分布 (12)2.5驱动器、译码器、数码显示器 (13)2.6 输入滤波电路及负电源组成原理 (15)3 调试 (16)3.1 调试方法及步骤 (16)3.2 调试注意事项 (17)4 设计心得与体会 (17)主要参考文献 (18)附录材料明细表 (19)┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊1 前言随着计算机科学与技术突飞猛进地发展,用数字电路进行信号处理的优势也更加突出。

使用STC12C5204AD单片机的数字电压表

使用STC12C5204AD单片机的数字电压表

使用STC12C5204AD单片机的数字电压表这是一块使用STC12C5204AD数字电压表的制作程序,P0.0-P0.3 共阴数码管位驱动端,P2口为共阴数码管段a-g及dp的段驱动端口,P0、P2口设置为推挽输出方式,段输出加470欧限流电阻,AD为8位,转换电压分度5/256=0.0195312V,分流电阻为实测阻值,AD值*0.0195312v/对地分流电阻,算出分流电流,然后用分流电流*分流电阻与限流电阻之和即为要显示的输入电压值。

业余使用,精度已经够用了,比那个小的指针的要准确多了。

其中涉及到端口设置的地方大家对照芯片手册更正。

#include ; //STC12C5204AD头文件 (6 K) 下载次数:15 #include ;//_nop_();#define uchar unsigned char#define uint unsigned int//sfr ADC_CONTR=0XBC;//adc使能位.ADC电源控制位sfr ADC_RES=0XBD;// adc数据高八位,即ADC值sfr P1ASF=0X9D;//P1各端口ADC使能端uchar led_bcd[]={0x3F,/*0*/ //共阴数码管0x06,/*1*/0x5B,/*2*/0x4F,/*3*/0x66,/*4*/0x6D,/*5*/0x7D,/*6*/0x07,/*7*/0x7F,/*8*/0x6F,/*9*/0x00,/* */0x7c /*b*/},ad_data;uint data dis[5]={0x00,0x00,0x00,0x00,0x00},ZZ; //定义四个显示数据单元和一个数据存储单元//dis[4,3,2,1,5] 显示:12.345为存储单元/************************************************ *******************//* 延时子程序*//**//**//************************************************ *******************/void delay(uint z)//延时子函数{uchar de1,de2;for(de1=z;de1>;0;de1--)for(de2=100;de2>;0;de2--);}/*******************************************************///显示子函数 display(h1,h2,h3,h4)//h1,h2,h3,h4 为四位LED数码管显示变量///////************************************************ *******/void display(uchar h1,uchar h2,uchar s1,uchar s2) ////LED显示函数(参数:LED1,LED2,LED3,LED4) {// 第一个数码管显示数据if(h1==0x3f) h1=0x00;//0消隐语句P2=h1;//delay(2);P00=0;delay(2);//参数2-10数值大LED亮度高但闪烁感强,数值小LED亮度低,但闪烁感小.P2=0X00;P00=1;/************************************************ *******/// 第二个数码管显示数据P2=h2|0x80;//delay(2);P01=0;delay(2); //参数2-10数值大LED亮度高但闪烁感强,数值小LED亮度低,但闪烁感小.P2=0X00;P01=1;//delay(5);/************************************************ *******/// 第三个数码管显示数据P2=s1;//delay(2);P02=0;delay(2); //参数2-10数值大LED亮度高但闪烁感强,数值小LED亮度低,但闪烁感小.P2=0X00;P02=1;// delay(5);/************************************************ *******/// 第四个数码管显示数据P2=s2;//delay(2);P03=0;delay(2); //参数2-10数值大LED亮度高但闪烁感强,数值小LED亮度低,但闪烁感小.P2=0X00;P03=1;//delay(5);}void init()//系统初始化函数{P2M1=0Xff; //强推挽推动a-g dpP2M0=0X00; //强推挽推动a-g dpP0M1=0X0f; //强推挽推动位P0M0=0X00; //强推挽推动位P0=0XFF;//初始化P2=0;//初始化/***定时器0初始化设置*****/TMOD = 0x01;TH0 = 0xFC; //初值1msTL0 = 0x18; //初值1msEA = 1;//开总中断ET0 = 1; //定时器0中断打开TR0 = 1; //打开定时器开始计时/*************************/ZZ=0;}void initADC() //AD初始化{P1ASF=0x01;//只使用P1.0端口做为ADC输入端.ADC_RES=0;//ADC数据寄存器清零ADC_CONTR=ADC_POWER|ADC_SPEEDLL; //打开ADC开关并设置转换速率详见STC12C52.Hdelay(2); //打开ADC并延时.}uchar readADC()//读AD{ADC_CONTR=ADC_POWER|ADC_SPEEDLL|0|ADC_START;_nop_();_nop_();_nop_();_nop_();while(!(ADC_CONTR&ADC_FLAG));//等待转换完成标志ADC_CONTR&=~ADC_FLAG;//close ADCreturn ADC_RES;//返回ADC值.}void main(){init();initADC();//初始化ADCad_data=readADC();//开机转换while(1){float j;uchar ad_data;while(ZZ>;=500) //500毫秒读一次ADC{ad_data=readADC();//读入ADC数据ZZ=0;}j=ad_data*19.5312;//由AD数据*19.5312(放大1000倍)=分流后的电压j=j/9890; //j(电压)/接地电阻(实测)9890欧j=j*60190;//j(电流)*(输入限流电阻(实测)60190欧+接地电阻(实测)9890欧) 计算出实际输入电压如果使用高精度电阻,则直接输入电阻值dis[4]=j/1000;dis[3]=dis[4]/10;dis[2]=dis[4]%10;//h=(h-(dis[3]*10+dis[2]))*100;dis[4]=j/10-dis[4]*100;//dis[4]=j%100;//小数位第一位dis[1]=dis[4]/10;dis[0]=dis[4]%10;//小数位第二位//delay(10000);}}void Timer0Interrupt(void) interrupt 1{ZZ++;//AD读取间隔时间控制TH0 = 0xFC;TL0 = 0x18;display(led_bcd[dis[3]],led_bcd[dis[2]],led_bcd[d is[1]],led_bcd[dis[0]]);}。

4位半数字电压表设计

4位半数字电压表设计

4位半数字电压表设计摘要随着电子科学技术、传感技术、自动控制技术和计算机技术的发展,电子测量成为广大电子工作者必须掌握的手段,对测量的精度和功能的要求也越来越高,单片机技术作为计算机技术的一个分支广泛应用于工业控制、智能化仪器仪表、家用电器,甚至电子玩具等各个领域。

本文介绍一种以89S52单片机为核心的数字电压测量电路,该电路采用ICL7135高精度、双积分A/D转换电路,测量范围直流0-〒2000伏,使用LCD1601液晶模块显示,并可以与PC机进行串行通信。

该电路设计新颖、功能强大、可扩展性强。

关键词:电压测量,ICL7135,双积分A/D转换器,数码管显示指导老师签名:第1章前言1第2章系统的原理及框图 4第3章电路设计 63.1 输入电路 63.2 A/D 转换电路 63.2.1 双积A/D 转换器的工作原理 73.2.2 7135的应用3.2.2 7135的应用8 3.3.1 BCD码七段译码驱动器103.4.1 555的结构原理123.4.2 555组成多谐振荡电路13结束语 15参考文献17致谢18附录错误!未定义书签。

附录A数字电压表原理图19附录B 数字电压表PCB图20第1章前言在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。

而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。

数字电压表(Digital V oltmeter)简称DVM,它是采用数字化测量技术,把连续的模拟量(直流输入电压)转换成不连续、离散的数字形式并加以显示的仪表。

传统的指针式电压表功能单一、精度低,不能满足数字化时代的需求,采用数字电压表,由精度高、抗干扰能力强,可扩展性强、集成方便。

目前,由各种单片A/D 转换器构成的数字电压表,已被广泛用于电子及电工测量、工业自动化仪表、自动测试系统等智能化测量领域,示出强大的生命力。

与此同时,由DVM 扩展而成的各种通用及专用数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。

单片机课程设计报告-简易数字电压表

单片机课程设计报告-简易数字电压表

TLC0834
P87C52X2
图1
1) A/D 转换部分
1.1 TLC0834 AD 转换器 TLC0834 的启动和转换可以由软件自由控制。根据 TLC0834 的工作时序图,
图 2 控制逻辑表
图 3 时序图
其转换过程是: 片选 置 CS 为低(保证 CS 有一个从高到低的跳变),该电
平能使所有的逻辑功能有效, CS 引脚在整个转换过程中应保持 低电平。此时 DO 端为高阻,DI 端等待指令 起始 向 DI 端输出第一个逻辑高,表示起始位。由于 DI 端
;调用数据转换子程序 LCALL TURN_SUB ;调用显示子程序 LCALL DISP_SUB ;转换成通道 1 CH1: CLR P1.6 ;清时钟 CLR P1.5 SETB P1.7 ;CS=1 CLR P1.7 ;CS=0 SETB P1.5 ;置 1 启动位 SETB P1.6 CLR P1.6 SETB P1.5 ;1 写 SGL SETB P1.6;时钟 0-1 跳变 CLR P1.6 SETB P1.5 ;1 写 ODD SETB P1.6 CLR P1.6 CLR P1.5 ;0 写 SELECT BIT1 SETB P1.6 CLR P1.6 ;通道 0,单端输入 SETB P1.6
C3
10uF
9
RST
R2
10k 29 30 31 PSEN ALE EA
RV3
58%
U5
1 2 3 4 5 6 7 8 V+ CS CH0 CH1 CH2 CH3 DGND AGND ADC0834 CLK SARS 12 11
RV1
58%
1k
DI DO VCC VREF
13 10 14 9

基于单片机的数字电压表的设计

基于单片机的数字电压表的设计

摘要本课题是利用单片机设计一个数字电压表,能够测量0-5V之间的直流电压值,四位数码管显示,使用的元器件数目较少。

外界电压模拟量输入到A/D转换部分的输入端,通过ADC0832转换变为数字信号,输送给单片机。

然后由单片机给数码管数字信号,控制其发光,从而显示数字。

此外,本文还讨论了设计过程中的所用的软件硬件环境,调试所出现的问题等。

关键词:单片机;AT89C51;数字电压表;ADC0832,四位数码管。

AbstractThis topic is the use of microcontroller design a digital voltmeter, capable of measuring between 0-5V DC voltage, four digital display, the use of fewer components. External analog voltage input to the A / D conversion part of the input of the conversion into a digital signal through the ADC0832, transmission to the microcontroller. And then by the microcontroller to the digital control digital signal, control the light, so the displayed number. In addition, the article also discusses the design process of software used in the hardware environment, debugging the problems and so on.Key words: SCM; AT89C51; digital voltmeter; ADC0832, four digital.目录第1章引言 (1)1.1 简介 (1)1.2 数字电压表的功能 (3)第2章电路系统设计 (4)2.1 数据采集 (4)2.1.1 A/D转换器 (4)2.1.2 ADC0832的工作方式 (6)2.2 数据处理 (8)2.2.1 AT89C51 (9)2.2.2 AT89C51单片机最小系统连接 (13)2.3 数据接收与数据处理电路 (14)2.4 显示设计 (15)2.4.1 LED显示的原理 (15)2.4.2 LED显示驱动 (16)第3章程序设计 (17)3.1 主程序设计图框 (17)3.2 程序清单 (17)第4章仿真过程 (29)4.1 Keil C软件的介绍 (29)4.2 Proteus软件简介 (30)4.3 Keil C与Proteus连接调试 (34)4.4 仿真结果图 (36)参考文献 (38)第1章引言第1章引言1.1简介数字电压表(简写为DVM)就是在精密电测量技术、计算技术、自动化技术和电子技术的基础上产生和发展起来的。

四位半高精度电压表设计与实现

四位半高精度电压表设计与实现

1.汽车电池电压监视器的设计;2.微型窃听器的设计;3.手机充电器电路设计;4.简易对讲机的设计5.电话自动录音器6.音乐喷泉的设计7.基于单片机的自动浇花机;四位半高精度电压表设计与实现摘要:四位半数字电压表就是数字表的一种,它的精度比普通常用的三位半要高出一个等级,它最高可以显示到19999,也就是万分之一,普通三位半得只能显示到1999,是千分之一,相差了10倍。

相对于市售的普通三位半电压表,大多数的精度都在3%左右,经过用高精度基准调整的四位半电压表拥有更加高精度的测量值,更加方便直观的测出用电器电压工作情况。

AbstractFour semi-digital voltage meter is a kind of digital form, it is commonly used in precision than the average three and a half a grade higher, which can display up to 19999, which is one ten-thousandth of ordinary three and a half have only show to 1999, is a thousandth of a difference of 10 times. Compared to commercially available general three and a half voltage meter, most of the precision of about 3%, after adjustment of four high-precision reference voltage meter and a half have a more high-precision measurements, more convenient and intuitive to use electrical appliances measured voltage work.关键词:四位半高精度数据转换PCB板制作KeywordsFour and a half ; Precision ; Data conversion; PCB board production一总的方案总的方案要有点文字说明,而且你这个图重画先得,质量较一般图1原理框图二设计与实现四位半电压器主要以A\D转换器为主体,外加译码器和数码显示器,驱动器及电阻电容等元件组成,主要分成A\D转换、表头、译码、显示四大部分。

四位半数字电压表课程设计论文

四位半数字电压表课程设计论文

┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊四位半数字电压表【摘要】本文介绍一种数字电压测量电路,该电路采用ICL7135高精度、AD转换电路,将模拟量输入电压变换为数字量,通过芯片74LS47译码显示到数码管上。

此设备的测量范围为直流0 —±2伏。

芯片ICL7135采用双电源供电,而为了我们使用的方便,我们运用74HC04非门芯片制造一个反电势,其可将单电源转化为双电源。

恰好,74HC04与ICL7135同时都需要时钟脉冲的作用才能工作,我们便运用时钟芯片ICM7556组建了一个产生脉冲的震荡电路。

这样,在几大模块的共同工作下,一个高精度的数字电压表就构成了。

【关键词】AD转换;译码;时钟信号;非门芯片┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊Four And a Half Digital Voltmeter[Abstract]This article describes a digital voltage measuring circuit, the circuit ICL7135 precision AD conversion circuit, the analog input voltage is converted to digital, digital tube through the chip 74LS47 decoding show. The measuring range of this device for DC 0 - ± 2 volts. Chip ICL7135 a dual power supply and convenient to use, we use 74HC04 NAND gate chip to create a back EMF, the single-supply dual power supply. Exactly, 74HC04 and ICL7135 are at the same time take the role of the clock pulse to work, we use the clock chip the ICM7556 formation of a pulse oscillator circuit. Thus, the joint work of several modules, a high-precision digital voltmeter constitutes.[Key words]AD conversion; decoding; clock signal; NAND gate chip┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊目录第1章前言 (1)1.1设计目的 (1)1.2设计内容及要求 (1)第2章系统结构框图及单元电路的设计 (2)2.1系统结构框图 (2)2.2单元电路的设计 (2)2.2.1 AD转换电路 (2)2.2.2负电源生成电路 (4)2.2.3震荡电路 (5)2.2.4译码电路 (6)2.2.5输入滤波电路及负电源组成原理 (7)2.2.6并行位选扫描输出原理 (8)第3章调试要点及测试方法 (9)3.1测试要点 (9)3.2测试方法 (9)第4章结论 (11)4.1调试或焊接过程中出现的错误及解决方案 (11)4.2心得体会 (11)致谢 (12)参考文献 (13)┊┊┊┊┊┊┊┊┊┊┊┊┊装┊┊┊┊┊订┊┊┊┊┊线┊┊┊┊┊┊┊┊┊┊┊┊┊第1章前言1.1设计目的1、理论与实践相结合,设计四位半数字电压表。

单片机四位半数字电压表程序

单片机四位半数字电压表程序

单片机四位半数字电压表程序摘要:1.单片机四位半数字电压表的原理2.程序设计方法3.程序实现步骤4.程序应用实例正文:1.单片机四位半数字电压表的原理单片机四位半数字电压表是一种基于微处理器的数字电压表,它可以测量并显示输入电压的大小。

其主要原理是通过模拟- 数字转换器(ADC)将输入的模拟电压信号转换为数字信号,然后通过单片机进行处理并在显示器上显示。

四位半数字表示电压表可以显示最大值为9999,最小值为0.0001,测量精度较高。

2.程序设计方法设计单片机四位半数字电压表程序时,需要先确定硬件电路,包括电源、模拟- 数字转换器、显示器等部分。

接下来,根据硬件电路设计软件程序,主要包括以下几个步骤:(1)初始化:设置单片机的工作模式,初始化定时器、中断、ADC 等模块。

(2)读取电压值:使用ADC 模块将输入电压信号转换为数字值,并进行模数转换。

(3)程序处理:对读取到的电压值进行处理,如放大、滤波等,以提高测量精度。

(4)显示电压值:将处理后的电压值显示在显示器上。

3.程序实现步骤以下是一个简单的单片机四位半数字电压表程序实现步骤:(1)设置单片机工作模式:初始化单片机,设置工作模式,初始化定时器、中断、ADC 等模块。

(2)读取电压值:使用ADC 模块对输入电压信号进行模数转换,得到数字电压值。

(3)程序处理:对读取到的电压值进行处理,如放大、滤波等,以提高测量精度。

(4)显示电压值:将处理后的电压值显示在显示器上。

4.程序应用实例以下是一个简单的单片机四位半数字电压表程序应用实例:假设我们使用STC89C52 作为单片机,ADC0804 作为模拟- 数字转换器,12864 液晶显示器作为显示器。

(1)初始化:设置单片机工作模式,初始化定时器、中断、ADC 等模块。

(2)读取电压值:使用ADC 模块对输入电压信号进行模数转换,得到数字电压值。

(3)程序处理:对读取到的电压值进行处理,如放大、滤波等,以提高测量精度。

4位半数字电压表

4位半数字电压表

一绪论国内外数字电子进展概况数字技术是当前进展最快的学科之一,数字逻辑器件已从60年代的小规模集成电路(SSI)进展到目前的中、大规模集成电路(MSI、LSI)及超大规模集成电(VLSI)。

相应地,数字逻辑电路的设计方式在不断地演变和进展,由原先的单一的硬件逻辑设计进展成三个分支,即硬件逻辑设计(中、小规模集成器件)、软件逻辑设计(软件组装的LSI和VSI,如微处置器、单片机等)及兼有二者优势的专用集成电路(ASIC)设计。

在电量的测量中,电压,电流和频率是最大体的三个被测量,其中电压量的测量最为常常。

而且随着电子技术的进展,更是常常需要测量高精度的电压,因此数字电压表成为一种必不可少的测量仪器。

而且,有各类单片A/D转换器组成的数字电压表,已被普遍应用于电子及电工测量,工业自动化仪表,自动测试系统等智能化测量领域,示出壮大的生命力。

与此同时,由DVM扩展而成的各类通用及专业数字仪器仪表,也把电量及非电量测量技术提高到崭新水平。

目前数字电子技术已经普遍地应用于运算机,自动操纵,电子测量仪表,电视,雷达,通信等各个领域。

例如在现代测量技术中,数字测量仪表不仅比模拟测量仪表精度高,功能高,而且容易实现测量的自动化和智能化。

随着集成技术的进展,尤其是中,大规模和超大规模集成电路的进展,数字电子技术的应用范围将会更普遍地渗透到国民经济的各个部门,并将产生愈来愈深刻的阻碍。

电子技术专门是数字电子技术进展迅速,大大推动了信息技术的进展,电子技术的新理论、新器件、新技术不断显现,对咱们学生的能力提出更高的要求。

随着电子科学技术的飞速进展,技术的进展对科学技术、国民经济和国防各领域的日趋深切的阻碍和渗透。

单纯从技术开发能力来讲,国内与国外差距并非大。

从事手持设备应用系统开发的有关专家以为,中国的工科学生即便是一般大学的毕业生在技术素养上也不比国外同行差,所欠缺的只是实践体会,只要略加培训即可。

但同时也指出,由于中国制造商推出的产品技术含量低,价钱低,因此利润很薄,结果就没有更多力量弄开发,于是又加倍无法提高技术含量,要想进展就必需第一冲破这一怪圈。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

这是我参加电子大赛本科组D题的论文,不足之处还请各位高手来指正!本科组(D题)数字电压表【摘要】本设计是基于ATmega16单片机开发平台和自动控制原理的基础上实现的一种高精度、智能化的数字电压表系统。

该系统采用ATmega16单片机作为控制核心,以12位的A/D转换MAX187为数据采样系统,实现被测电压的高精度数据采样;使用系列比较器检测输入电压的范围,并通过继电器阵列实现了输入量程的全自动转换;同时具有显示模式的按键切换、LCD液晶显示等显著优点。

系统具有人性化的交互界面,硬件配置合理,控制方案优化,完全满足题目的基本要求。

【关键字】全自动量程转换电压检测 MAX187 ATmega16 LCD显示Digital VoltmeterSummary : The design is based on ATmega16 and automation development platform based on the principle of achieving a high accuracy and intelligent digital voltage meter system. The system uses ATmega16 core as a control, 12 to the MAX187 D conversion for data sampling system, the measured voltage and high-precision data sampling; Series comparison with the use of detection of the input voltage range, and through Relay array of input range of automatic conversion; the same time it is the display mode switch button, LCD display significant advantages. Humanized system of interface, hardware configuration reasonable control program optimization, the subject completely meet the basic requirements. Keywords: Disney-range conversion, voltage detection, MAX187, ATmegal16, LCD Display.目录一、方案设计与论证 11.试题分析 12.系统控制方案 13.各模块方案 21)单片机选择 22)A/D采样系统 33)自动量程切换 34)电压检测 35)显示部分 3二、理论分析与电路设计 41.系统总体设计与框图 42.实际电路图 42.1单片机系统 42.2 AD转换电路 62.3信号调理模块 62.4继电器模块 92.5按键与LCD显示电路设计 103.信号调理总体设计电路图 10三、软件设计与流程 111.系统软件介绍 112.软件程序流程图 11四、实验测试与结果分析 12五、参考文献 13六、附录 13数字电压表一、方案设计与论证1.试题分析根据题目要求,系统设计需要基于自动控制原理,实现电压量程的自动切换、数据采样、电压显示等功能。

主要来说,系统由信号调理电路、A/D转换电路、按键输入电路、单片机控制系统、LCD显示系统等几个模块组成。

由于本设计属于高精度实时监测控制系统,因此各模块必须具有高精度、低噪声、可靠性强等诸多性能要求。

2.系统控制方案『方案一』仅采用CPLD作为控制核心部件的方案选用一片CPLD作为系统的核心部件,实现控制与处理的功能。

CPLD具有速度快、编程容易、资源丰富、开发周期短等优点,可利用VHDL语言进行编写开发。

但CPLD在控制上较单片机有较大的劣势。

同时,CPLD的处理速度非常快,而电压表的数据采样速度不可能太高,在这一点上,MCU就已经可以胜任了。

若采用该方案,必将在控制上遇到许许多多不必要增加的难题。

为此,我们不采用该种方案,进而提出了第二种设想。

图1.2.1 以CPLD为核心部件的原理图『方案二』仅采用单片机作为控制核心部件的方案如图1.2.2 所示:我们采用单片机作为整个系统的核心,用其输入电压的范围、控制信号调理电路,实现输入量程的自动切换,以达到其既定的高精度性能指标。

充分分析我们的系统,其关键在于实现电压调理的自动量程控制,而在这一点上,单片机就显现出来它的优势——控制简单、方便、快捷。

而且,单片机其资源丰富、控制功能强大及可位寻址操作、价格低廉等,使得在实际制作过程中是一个较为理想的方案。

鉴于上述分析,在充分考虑到系统的需要及开发周期的情况下,我们决定选用第二种方案,即“仅采用单片机作为核心部件的方案”。

3.各模块方案1)单片机选择『方案一』选用51系列单片机。

51系列单片机目前得到广泛使用,如89S51它除了89C51所具有的优点外,还具有可在线编程,可在线仿真的功能,这让调试变得方便。

当与凌阳十六位单片机相比时,AT89S51八位单片机的价格便宜,再者编程方便。

编程技术及外围功能电路的配合使用都很成熟,这对于在网上查找相关资料和在图书馆查找相关资料时非常方便的。

但本系统是个多信息处理的复杂程序控制系统,需要占用大量的硬件资源,89S51单片机中的资源在此就显得相当紧张,将对整个系统的性能产生很大的影响。

『方案二』选用AVR系列单片机。

AVR单片机是高速单片机,硬件采用哈佛(Harward)结构,达到一个时钟周期可以执行一条指令,绝大部分指令都为单周期指令,而MSC-51要12个时钟周期执行一条指令;它支持程序的在系统编程ISP,开发门槛较低,性价比高;有丰富的外设,如RTC、 WATCHDOG、 AD 转换器、PWM、UART接口等,部分型号还可以使用片内振荡器提供系统1~8 MHz的系统时钟,使该类单片机无外加晶振器件即可工作;I/O口功能强、驱动能力大,I/O口有输入/输出、三态高阻输入,也可设定内部拉高电阻作输入端的功能, 工业级产品,具有大电流(灌电流)10~40 mA,可直接驱动可控硅SSR或继电器, 节省了外围驱动器件;具有较大容量EEPROM,可擦写10万次的EEPROM,为掉电后数据的保存带来方便,来电后能记住掉电时的工作状态,EEPROM容量为64 B~4 KB ;AVR是低功耗单片机,具有休眠省电功能(Power Down)及闲置(Idle)低功耗功能。

一般耗电在1~2.5 mA;AVR单片机内嵌高质量的Flash程序存储器,增强性的高速同/异步串口,具有硬件产生校验码、硬件检测和校验侦错、两级接收缓冲、波特率自动调整定位(接收时)、屏蔽数据帧等功能,提高了通信的可靠性,方便程序编写,更便于组成分布式网络和实现多机通信系统的复杂应用,串口功能大大超过MCS-51/96单片机的串口,加之AVR单片机高速,中断服务时间短,故可实现高波特率通讯。

根据题目要求,综合考虑上述方案,我们选用ATMEGA16L单片机方案。

2)A/D采样系统根据题目要求,要实现0-20V电压的精确测量,测量精度达到1mV,最高采样数据要达到20000,而12位的A/D为:212=4096,15位的ADC为:215=16384,16位的ADC为:216=32768,所以必须采用16位ADC才能满足题目的要求,然而16位的ADC价格昂贵,实验室并不常见,加上系统开发时间的限制,我们只好采用实验室较为常见的12位AD。

『方案一』用1片12位并行AD集成芯片ADC574,12位并行DAC574集成芯片的转换速度快,而且精度高,但是其占用大量的单片机端口,外围电路较复杂。

『方案二』采用一片12位串行ADC芯片MAX187的优点是精度比较高,而且占用单片机的端口资源较少,外围电路也比较简单,缺点是转换速度不如并行AD转换快。

但是,数字电压表对数据采样的速度要求不高,而且串行DA的程序也容易实现,所以我们最终决定选择方案二来实现对输入电压的采样。

3)自动量程切换智能数字电压表中关键技术之一为自动量程转换问题。

『方案一』用单片机控制多组继电器进行量程切换。

特点是简单实用,缺点是机械噪声大。

『方案二』采用光耦进行切换,其特点是控制部分隔离,无机械切换的噪声,可靠性好。

显然,采用方案二电气特性功能上更好,但是由于本系统中要使用多组电子开关,相对而言,采用继电器切换方式降低了设计的难度,因而更加有利于短期内的系统开发。

4)电压检测为了实现对输入的微小信号或大信号进行精确测量,我们拟采用信号放大或衰减预处理电路,即需要对被测量电压的极性、范围进行判断和确定,从而将被测电压的基本信息传递给单片机系统。

『方案一』用多组比较器进行电压范围的分段检测,实现对输入电压的粗略测量。

『方案二』输入信号通过电阻分压后,由ADC转换成数字信号传递给单片机系统实现电压的粗略测量。

由于预处理电路只需要对输入电压进行范围的粗略测量,所以方案一完全能够满足实际要求,而方案二虽然测量结果较为精确,但电路复杂,还增加了编程难度。

故采用的方案一。

5)显示部分『方案一』采用LED数码管动态扫描显示。

采用8位LED动态扫描显示的优点是能改善外部信号对显示的干扰,但单片机在工作时要求CPU不停地对LED更新,这将会降低系统的运行速度,且占用资源比较多。

『方案二』串行通讯方式实现8位LED的静态显示。

采用串行通讯方式实现8位LED的静态显示,虽可降低端口的使用,也不会降低CPU的运行速度,但整个显示界面显得不太友好。

『方案三』采用LCD液晶显示器显示。

液晶显示功耗低,轻便防震,显示界面友好。

因此本系统采用方案三。

二、理论分析与电路设计1.系统总体设计与框图系统框图如图2.1.1所示。

本系统采用ATMEGAL16L单片机作为控制核心,以12位的A/D转换MAX187为数据采样系统,实现被测电压的高精度数据采集与显示。

该过程是:首先通过系列比较器检测输入电压的极性与范围,单片机根据电压极性与范围对继电器阵列进行相应的动作,实现了输入量程的全自动转换。

经过调理后的电压信号由AD转换后送出液晶显示,同时可以通过按键进行显示模式切换并具有过压保护、过压报警的功能。

2.实际电路图2.1单片机系统本设计是以ATMEGA16L单片机为控制核心,其外围接口电路如图所示。

图2.2.2 ATMEGA16L单片机接口图ATmega16是基于增强的AVR RISC结构的低功耗8 位CMOS微控制器。

相关文档
最新文档