数字电压表设计实训报告_第1页
数字电压表设计实训报告_第2页
数字电压表设计实训报告_第3页
数字电压表设计实训报告_第4页
数字电压表设计实训报告_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、.武汉职业技术学院电信学院数字电压表设计实训报告书 班级:电信09201 姓名:范萍萍 辅导老师:李军 胡光夏 李琼201011.8一实验目的:1、通过数字电压表的实习,了管脚的功能。3、使用单片机模数转换器解各个芯片的工作的原理。2、学习8051与ADC0809各个数码管等芯片来共同完成电压表的实现,学习各个芯片连接的软件实现以及硬件电路的连接。二。使用软件介绍:1.Keil C u Vision 3.protel 99SE2.STC-ISP V29 Beta5: 4.proteus三.实训器材:1).STC 89c52RC单片机 2).4IN1共阳极七段数码管 3).发光二极管 4). 电

2、阻、蜂鸣器、集成块、三极管、电容、实验板 6)计算机四实训要求:1).测量电压范围:05V电压2).能够显示测量的电压值,可在四位LED数码管上显示,3).显示精度:0.01V4).测量误差:<=1%五实验原理:(1)ADC0809模数转换模块:ADC0809是将输入的模拟值转化为8位二进制值输出,也就是对一个模拟量进行量化采用逐次逼近的方法近似为数字量。1、 由于每次都从IN-0口输入电压值,所以其余七个入口都是空置的,所以ADC0809的三个地址输入口要接地。2、 从IN-0口输入的电压值范围0-5V,所以ADC0809采取5V的标准电压,以待量化进行数模转换。3、 ADC0809的

3、工作是通过单片机C51中的程序控制的,当ADC0809的START=1,ALE=1时启动模数转换,此时EOC=0;转化结束后EOC=1,若OE=1,则允许单片机从ADC0809中读取数据,读取结束后,OE=0.4、 同时A的10号引脚CLK要接单片机的30号引脚ALE,由于ADC0809的频率一般采用500KHZ左右,单片机30号引脚输出为1MHZ,所以要用74LS74进行二分频。(2).单片机8051模块:该模块主要是通过程序来实现三个功能:1).控制ADC0809进行模数转换,单片机的P1口和ADC0809的8位输出口相连,来读取数据。2).单片机通过P0和P2口控制非门74LS04和译码

4、器4511对数码管进行动态扫描。另外,还有置位电路和产生频率的晶振电路,单片机本身可以六分频,由于使用的是6MHZ的晶振所以单片机30脚输出1MHZ,经分频后送到ADC0809。(3).显示模块:该模块由非门译码器和一片4位七段数码管组成;主要结合程序实现动态扫描。1).单片机P0口的低四位通过非门来控制片选B1B2B3B4,另外P0.7口通过非门来控制小数点dp,由于控制小数点dp的电平过低,故加上一上拉电阻来提高电平。2).单片机P2口的低四位输入到译码器4511,译码器将输入转换成七位即abcdefg,进行段选。六硬件设计及各模块原理说明:1.ADC0809型集成双积分式AD转换原理与特

5、性模数转换模块。采用ADC0809芯片。ADC0809双积分式AD转换器是在单极性参考电压(VR=+1V)供给之下,对双极性输入的模拟电压进行AD转换,并输出自动极性判别信号。它采用了自动校零技术,可保证零点常温下的长期稳定性,零点漂移的温度系数2V。模拟输入可以是差动信号,输入电阻极高,输入端零点漏电流10pA。ADC0809单片集成AD转换器采用28脚双列直插式封装,它的引出脚排列如图3所示图1ADC0809的电源采用双电源+5V、-5V(极限值+6V、-6V),分别由11脚和1脚引入。电源的公共端接至DGND(24脚)。让所有的模拟信号地与AGND(3脚)相连接,最后用一根连线与DGND

6、相接。采用模拟地与数字地分开,并以一点相通,可避免由于连接线的寄生耦合作用而引起误差或者跳字。参考电压VR正端从2脚引入,负端接AGND。参考电压贮存电容CR一般选取1F,接在7、8两脚。差动输入模拟信号从9、10两脚引入。如果允许模拟信号源的公共端与AD转换器电源公共端相通,则此端可与AGND相接。ADC0809之B8、B4、B2、B1各端送出的BCD码,经过7447BCD码七段码译码器,转换成控制共阳极LED数码管发光的信号。这五个数字管的各对应笔段(发光二极管的阴极)皆并联相接,也就是说,一组BCD码输出,这五个数字管都有可能显示对应的数字。但是,究竟显示的是哪个字位,还决定于T5T1中

7、哪一个开关管导通,形成电流的通路。由于T5T1受D5D1各端控制,所以字位扫描信号就决定了数字管由高位到低位分时扫描显示。ICl7135发送数据B8、B4、B2、B1和字位控制是同步的,不会发生错乱,因为扫描的速度很快,在fcp125kHz情况下,刷新速率达125Hz,所以人的视觉上不会感到显示的数在闪烁。当“万”位数字对应0时,这种数字管就无法显示“0”了,必须改成不显示数字,只显示极性。因此,每当扫描到“万”字位时,应使74LS47只准0001输入时输出对应的七段码,而遇到0000码输入时,使数字管不发光。74LS47逻辑设计上巳考虑到此功能要求,它设有RBI端。当RBI端输入0电平时,它

8、只能输出除0以外的数字所对应的七段码,实现了“1”可显示,“0”不发光的要求;当RBI端输入1电平时,则包括“0”的内在任何数字都可显示。因此,电路中利用D5端信号经倒相后再去控制74LS47的RBI端,就可满足上述对“万”字位的控制要求。2.七段数码显示管数码管引脚图见图5:图2采用高亮共阳数码管MTS5101BSR,共有七段,可显示数字09。3.三极管提供开关电源。采用9013三极管。三极管的引脚图见图6:图3三极管有三个管脚,分别是发射极e,基极b,集电极c。本实验采用NPN三极管C9013(7),当Vbe大于0.5V时,be间的PN结导通,因此三极管可用作开关,控制数码管的COM管脚来

9、控制数。4.ADC0809参考资料:1 芯片管脚图:图2 8051芯片管脚图图1 ADC0809管脚图 ADCADC0809模数转换器的引脚功能IN0IN7:路模拟量输入。A、 B、C:位地址输入,个地址输入端的不同组合选择八路模拟量输入。ALE:地址锁存启动信号,在ALE的上升沿,将A、B、C上的通道地址锁存到内部的地址锁存器。D0D7:八位数据输出线,A/D转换结果由这根线传送给单片机。OE:允许输出信号。当OE=1时,即为高电平,允许输出锁存器输出数据。START:启动信号输入端,START为正脉冲,其上升沿清除ADC0808的内部的各寄存器,其下降沿启动A/D开始转换。EOC:转换完成

10、信号,当EOC上升为高电平时,表明内部A/D转换已完成。CLK:时钟输入信号,0809的时钟频率范围在101200kHz,典型值为640kHz。 七.课程进度:具体时间实训内容地点指导教师实训准备元器件清单、购买元器件周一上午讲解实训安排、数字电压表的设计、流程图的设计等电子CAD机房李军、阮艳下午利用protel软件设计印制板电路电子CAD机房阮艳周二上午利用Proteus软件仿真程序设计电子CAD机房阮艳下午利用Proteus软件仿真程序设计电子CAD机房胡光夏 周三上午核对元件、焊接实训中心二楼胡光夏下午数字电压表检测、测试主要技术指标实训中心二楼李军周四上午数字电压表检测、测试主要技术

11、指标实训中心二楼李军周五上午整理资料、撰写实训报告实训中心二楼李军下午实训答辩、总结实训中心二楼李军八程序: #include <reg51.H> #define uchar unsigned char; uchar code scan_con=0x08,0x04,0x02,0x01; /定义扫描片选 uchar dispbuf8=0,0,0,0,0,0,0,0; /定义8个存储空间 uchar getdata; unsigned long int temp;/定义暂存空间 uchar i,j,k,l,m; sbit s3=P37; /位定义,控制模拟开关 Sit s2=P36;

12、sbit s1=P35; sbit dp=P07; /定义小数点 #define v20_on s3=0;s2=0;s1=0; /宏定义不同量程,不同的开关状态 #define v2_on s3=0;s2=0;s1=1; #define v02_on s3=0;s2=1;s1=0; sbit ST=P31; /定义单片机和ADC的控制信号 sbit OE=P33; sbit EOC=P32; main() while(1) _ 20v: /220V量程 v20_on; ST=0; /启动A/D转换 ST=1; ST=0; while(EOC=0); OE=1; getdata=P1; OE=0

13、; if(getdata<21) /量程不合适,切换 goto _2v; l=3; temp=getdata; /量程合适,数据处理 temp=temp*100; temp=(temp/51)*5; goto disp; /跳到数码管显示程序段 _2v: /200MV2V量程 v2_on; ST=0; ST=1; ST=0; while(EOC=0); OE=1; getdata=P1; OE=0; if(getdata<21) goto _02v; else if(getdata>204) goto _20v; l=2; temp=getdata; temp=(temp*1

14、00/51)*10; temp=temp/2; /求出模拟待测电压; goto disp; _02v: /0200MV量程 v02_on; /OE=0; ST=0; ST=1; ST=0; while(EOC=0); OE=1; getdata=P1; OE=0; if(getdata>204) goto _2v; l=1; temp=getdata; temp=(temp*100/51)*100; temp=temp/20; disp: i=0; while(temp/10)/电压值的每个位计 dispbufi=temp%10; temp=temp/10; i+; dispbufi=t

15、emp; for(k=0;k<=3;k+) /数码管显示 P2=dispbufk&0x0f; P0=scan_conk; if(l=3)if(k=2) dp=0; elsedp=1; /小数点的确定 else if(l=2) if(k=3) dp=0; elsedp=1; else if(l=1)if(k=3) dp=0; elsedp=1; elsedp=0; for(m=0;m<=2;m+) /延时 for(j=0;j<=100;j+); 九设计安装的过程:以提供基准电压的模块产生的1V基准电压经ADC0809芯片的2,3脚接入;被测电压信号经ADC0809芯片1

16、0,9脚接入;系统所需要的时钟信号从22脚输入,时钟信号由4069接电阻、电容震荡产生;参考电压贮存电容CR一般选取1F,接在7、8两脚;B8、B4、B2、B1是BCD码输出端,并在D5D1各端上同步出现字位选通脉冲,它们配合74LS74驱动及7段数码管显示数据。九调试过程:在焊接好电路后,先用万用表蜂鸣档检查确认电路的连线没有问题后;先不插上芯片,把外加的正、负5V电压加上,再在芯片座上用电压表电压档测好该是+5V或者-5V电压的引脚确实电压正确后(保证电路连线正确,保证芯片插上后能够正常工作,不至于烧坏芯片);调节提供基准电压模块中的电位器使输入到ICL7135芯片2脚的基准电压为1.00

17、0V;断电后插上三块芯片,再先接入+5V电压,好的状态是所有数码管都亮,并可能会不断地闪,再接入-5V电压,正常情况下,在将被测电压的输入的两端短接时(即让输入电压为0V),数码管应该显示0V电压,否则要检查电路连线等;在以上都正确后加入被测电压,正常就会得到正确的电压显示,否则要仔细检查连线、虚焊等可能问题;再看在被测电压改变时是否依然能够正确显示电压,待正确后记录一组数据;验证在将被测电压的输入两端反接后,显示是否也有电性的变化;验证报警功能,即在电压超出量程后数码管会不断地闪,以示警报。十实验总结报告:时间过的真快,转眼间实训已经结束。经过这一周的实训练习让我们学到了许多知识,回想这几天让我们通过想实训这几天我们确实是有很大收获的。在这一周的实训确实是有些累但是累得有价值。这次课程设计过程,使我在关于电子方面的实验动手能力上有很大的提高。在器件的布置,安装焊接,调试,分析解决问题的能力都有很大进步。同时也培养了我不急不躁,实事求是的科学精神。我在刚接触到这次课程设计题目时就产生浓厚的兴趣,所以在暑假期间我做了充分的准备,通过去图书馆借阅图书和上网查资料我对这个设计原理有了一定的了解。第一次试验时我不急着焊东西,先大体布局,做到心中有数,同时考虑的是怎样尽量让连线少而短,减少不必要的电阻损耗。回到宿舍后,

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论