基于单片机的简易数字电压表的设计摘要本文介绍了一种基于单片机的简易数字电压表的设计。该设计主要由三个模块组成:A/D转换模块,数据处理模块及显示模块。A/D转换主要由芯片ADC0808来完成,它负责把采集到的模拟量转换为相应的数字量在传送到数据处理模块。数据处理则由芯片AT89C51来完成,其负责把ADC0808传送来的数字量经过一定的数据处理,产生相应的显示码送到显示模块进行显示;此外,它还控制着ADC0808芯片工作。该系统的数字电压表电路简单,所用的元件较少,成本低,且测量精度和可靠性较高。此数字电压表可以测量0-5V的1路模拟直流输入电压值,并通过一个四位一体的7段数码管显示出来。矚慫润厲钐瘗睞枥庑赖。关键词单片机;数字电压表;A/D转换;AT89C51;ADC0809基于单片机的简易数字电压表的设计IIDesignofSimpleDigitalVoltmeterBasedonSingle-chipMicrocontroller聞創沟燴鐺險爱氇谴净。TianMingmingAbstractThispaperwhichintroducesakindofsimpledigitalvoltmeterisbasedonsingle-chipmicrocontrollerdesign.Thecircuitofthevoltagemeterismainlyconsistedofthreemouldpieces:A/Dconvertingmouldpiece,A/DconvertingismainlycompletedbytheADC0808,itconvertsthecollectedanalogdataintothedigitaldataandtransmitstheoutcometothemanifestationcontrollingmouldpiece.DataprocessingismainlycompletedbytheAT89C51chip,itprocessesthedataproducedbytheADC0808chipandgeneratestherightmanifestationcodes,alsotransmitsthecodestothemanifestationcontrollingmouldpiece.Also,theAT89C51chipcontrolstheADC0808chiptowork.残骛楼諍锩瀨濟溆塹籟。Thevoltmeterfeaturesinsimpleelectricalcircuit,loweruseofelements,lowcost,moreover,itsmeasuringprecisionandreliability.Thevoltmeteriscapableofmeasuringvoltageinputsfrom1routerangingfrom0to5volt,anddisplayingthemeasurementsthoughadigitalcodetubeof7piecesofLED.酽锕极額閉镇桧猪訣锥。KeywordsSingle-chipmicrocontroller;Digitalvoltmeter;A/Dconverter;AT89C51;基于单片机的简易数字电压表的设计IIIADC0808彈贸摄尔霁毙攬砖卤庑。基于单片机的简易数字电压表的设计IV目录1引言.....................................................................1謀荞抟箧飆鐸怼类蒋薔。2设计总体方案.....................................................2厦礴恳蹒骈時盡继價骚。2.1设计要求.....................................................2茕桢广鳓鯡选块网羈泪。2.2设计思路....................................................2鹅娅尽損鹌惨歷茏鴛賴。2.3设计方案....................................................2籟丛妈羥为贍偾蛏练淨。3硬件电路设计.....................................................3預頌圣鉉儐歲龈讶骅籴。3.1A/D转换模块..........................................3渗釤呛俨匀谔鱉调硯錦。3.2单片机系统..............................................7铙誅卧泻噦圣骋贶頂廡。3.3复位电路和时钟电路..............................9擁締凤袜备訊顎轮烂蔷。3.4LED显示系统设计...............................10贓熱俣阃歲匱阊邺镓騷。3.5总体电路设计........................................13坛摶乡囂忏蒌鍥铃氈淚。4程序设计...........................................................15蜡變黲癟報伥铉锚鈰赘。4.1程序设计总方案....................................15買鲷鴯譖昙膚遙闫撷凄。4.2系统子程序设计....................................15綾镝鯛駕櫬鹕踪韦辚糴。5仿真.................................................................17驅踬髏彦浃绥譎饴憂锦。5.1软件调试................................................17猫虿驢绘燈鮒诛髅貺庑。5.2显示结果及误差分析....................................................17结论.....................................................................21锹籁饗迳琐筆襖鸥娅薔。参考文献...............................................................22構氽頑黉碩饨荠龈话骛。附录程序代码.............................................................................22基于单片机的简易数字电压表的设计V致谢.......................................................................26輒峄陽檉簖疖網儂號泶。基于单片机的简易数字电压表的设计11引言在电量的测量中,电压、电流和频率是最基本的三个被测量,其中电压量的测量最为经常。而且随着电子技术的发展,更是经常需要测量高精度的电压,所以数字电压表就成为一种必不可少的测量仪器。数字电压表简称DVM,它是采用数字化测量技术,把连续的模拟量转换成不连续、离散的数字形式并加以显示的仪表。由于数字式仪器具有读数准确方便、精度高、误差小、测量速度快等特而得到广泛应用[1]。尧侧閆繭絳闕绚勵蜆贅。传统的指针式刻度电压表功能单一,进度低,容易引起视差和视觉疲劳,因而不能满足数字化时代的需要。采用单片机的数字电压表,将连续的模拟量如直流电压转换成不连续的离散的数字形式并加以显示,从而精度高、抗干扰能力强,可扩展性强、集成方便,还可与PC实时通信。数字电压表是诸多数字化仪表的核心与基础[2]。以数字电压表为核心,可以扩展成各种通用数字仪表、专用数字仪表及各种非电量的数字化仪表。目前,由各种单片机和A/D转换器构成的数字电压表作全面深入的了解是很有必要的。识饒鎂錕缢灩筧嚌俨淒。最近的几十年来,随着半导体技术、集成电路(IC)和微处理器技术的发展,数字电路和数字化测量技术也有了巨大的进步,从而促使了数字电压表的快速发展,并不断出现新的类型[4]。数字电压表从1952年问世以来,经历了不断改进的过程,从最早采用继电器、电子管和形式发展到了现在的全固态化、集成化(IC化),另一方面,精度也从0.01%-0.005%。凍鈹鋨劳臘锴痫婦胫籴。目前,数字电压表的内部核心部件是A/D转换器,转换的精度很大程度上影响着数字电压表的准确度,因而,以后数字电压表的发展就着眼在高精度和低成本这两个方面[3]。恥諤銪灭萦欢煬鞏鹜錦。本文是以简易数字直流电压表的设计为研究内容,本系统主要包括三大模块:转换模块、数据处理模块及显示模块。其中,A/D转换采用ADC0808对输入的模拟信号进行转换,控制核心AT89C51再对转换的结果进行运算处理,最后驱动输出装置LED显示数字电压信号[11]。鯊腎鑰诎褳鉀沩懼統庫。基于单片机的简易数字电压表的设计22设计总体方案2.1设计要求⑴以MCS-51系列单片机为核心器件,组成一个简单的直流数字电压表。⑵采用1路模拟量输入,能够测量0-5V之间的直流电压值。⑶电压显示用4位一体的LED数码管显示,至少能够显示两位小数。⑷尽量使用较少的元器件。2.2设计思路⑴根据设计要求,选择AT89C51单片机为核心控制器件。⑵A/D转换采用ADC0808实现,与单片机的接口为P1口和P2口的高四位引脚。⑶电压显示采用4位一体的LED数码管。⑷LED数码的段码输入,由并行端口P0产生:位码输入,用并行端口P2低四位产生。硕癘鄴颃诌攆檸攜驤蔹。2.3设计方案硬件电路设计由6个部分组成;A/D转换电路,AT89C51单片机系统,LED显示系统、时钟电路、复位电路以及测量电压输入电路。硬件电路设计框图如图1所示。阌擻輳嬪諫迁择楨秘騖。图1数字电压表系统硬件设计框图氬嚕躑竄贸恳彈瀘颔澩。时钟电路复位电路A/D转换电路测量电压输入显示系统AT89C51P1P2P2P0基于单片机的简易数字电压表的设计33硬件电路设计3.1A/D转换模块现实世界的物理量都是模拟量,能把模拟量转化成数字量的器件称为模/数转换器(A/D转换器),A/D转换器是单片机数据采集系统的关键接口电路,按照各种A/D芯片的转化原理可分为逐次逼近型,双重积分型等等。双积分式A/D转换器具有抗干扰能力强、转换精度高、价格便宜等优点。与双积分相比,逐次逼近式A/D转换的转换速度更快,而且精度更高,比如ADC0809、ADC0808等,它们通常具有8路模拟选通开关及地址译码、锁存电路等,它们可以与单片机系统连接,将数字量送到单片机进行分析和显示。一个n位的逐次逼近型A/D转换器只需要比较n次,转换时间只取决于位数和时钟周期,逐次逼近型A/D转换器转换速度快,因而在实际中广泛使用[1]。釷鹆資贏車贖孙滅獅赘。3.1.1逐次逼近型A/D转换器原理逐次逼近型A/D转换器是由一个比较器、A/D转换器、存储器及控制电路组成。它利用内部的寄存器从高位到低位一次开始逐位试探比较。怂阐譜鯪迳導嘯畫長凉。转换过程如下:开始时,寄存器各位清零,转换时,先将最高位置1,把数据送入A/D转换器转换,转换结果与输入的模拟量比较,如果转换的模拟量比输入的模拟量小,则1保留,如果转换的模拟量比输入的模拟量大,则1不保留,然后从第二位依次重复上述过程直至最低位,最后寄存器中的内容就是输入模拟量对应的二进制数字量[5]。其原理框图如图2所示:谚辞調担鈧谄动禪泻類。图2逐次逼近式A/D转换器原理图3.1.2ADC0808主要特性ADC0808是CMOS单片型逐次逼近式A/D转换器,带有使能控制端,与微机直顺序脉冲发生器逐次逼近寄存器ADC电压比较器输入电压输入数字量基于单片机的简易数字电压表的设计4接接