基于单片机的数字电压表-毕业答辩课件_第1页
基于单片机的数字电压表-毕业答辩课件_第2页
基于单片机的数字电压表-毕业答辩课件_第3页
基于单片机的数字电压表-毕业答辩课件_第4页
基于单片机的数字电压表-毕业答辩课件_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

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

文档简介

基于单片机的数字电压表

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

设计与实现1电压表设计简介五、综合调试一、数字电压表的特点二、设计任务及任务分析三、硬件设计四、软件设计电压表设计简介五、综合调试一、数字电压表的特点二、设计任务及2一、数字电压表的特点(1)显示清晰直观,读数准确(2)准确度高(3)分辨率高(4)测量范围宽(5)扩展能力强(6)测量速度快(7)输入阻抗高(8)集成度高,微功耗(9)抗干扰能力强一、数字电压表的特点(1)显示清晰直观,读数准确3二、设计任务及任务分析以单片机为核心的电压测量系统,利用A/D转换芯片实现直流电压的测量和显示任务要求模块设计芯片选择实现方法M1M2M4M3二、设计任务及任务分析以单片机为核心的电压测量系统,利用A/42.1任务要求实现对0-20V直流电压值的测量.精度达到0.05V以上200MV、2V、20V档位的自动切换使用液晶屏幕LCD1602进行显示12342.1任务要求实现对0-20V直流电压值的测量.精度达到52.2模块设计数据输入模块三路电压值通过模拟开关的选择一路合适的电压送A/D转换器中进行转换。采用逐次逼近式A/D转换器ADC0809,它性能稳定,转换出8位并行数据,方便检测.89S52将A/D的并行信号处理后,送到P0端中,连接LCD1602用于显示。单片机控制模拟开关进行自动换档。采用LCD1602液晶屏显示输入电压值,连接线较少,控制方便,显示简洁且可控性强。A/D转换模块数据控制及处理显示模块2.2模块设计数据输入模块三路电压值通过模拟开关的选择一62.3芯片选择AT89S527805LM32474HC4051液晶显示屏,可显示数字和字符将模拟量转化为数字量稳压源,输出5V的电压值带有真差动输入的四个运算放大器主控制器,用于控制和处理数据8通道模拟多路选择器/多路分配器,带有3个数字选择端LCD1602ADC08092.3芯片选择AT89S527805LM32474HC47上电复位AT89S52

ADC0809LCD1602显示附加功能电源电路2.4实现方法上电复位AADC0809LCD1602显示附加功能电源8输入A/D转换单片机控制显示电压值输入电压值,模拟开关默认为20V档,A/D送出并行的8位数据,单片机通过运算将其转换为0-255之间的某数,此时再进行档位判断,反馈到模拟开关选择通路,同时LCD显示相应量程的电压值。三、硬件设计输入A/D转换单片机控制显示电压值输入电压值,模拟开关默认为93.1数据输入模块原理图3.1数据输入模块原理图103.2A/D转换模块原理图

ST=0;ST=1;delay(5);ST=0;delay(5);while(EOC==0);OE=1;getdata=P1;delay(5);OE=0;3.2A/D转换模块原理图ST=0;ST=1;dela113.3控制模块原理图3.3控制模块原理图12

writesmh(5,b);

writesmh(6,c);

writesmh(7,13);//13为小数点

writesmh(8,d);

writesmh(4,a);3.4显示模块原理图200mv显示子程序temp=(getdata*1.0/255)*2000;a=temp/1000;b=temp/100%10;c=temp/10%10;d=temp%10;m=3; writesmh(5,b); 13

writesmh(5,b);

writesmh(6,c);

writesmh(7,d);

writesmh(8,12);//12为空格

writesmh(4,a);3.5显示模块原理图2V显示子程序temp=(getdata*1.0/255)*2000;a=temp/1000;b=temp/100%10;c=temp/10%10;d=temp%10;m=2; writesmh(5,b); 14

writesmh(5,b);

writesmh(6,13);

writesmh(7,c);

writesmh(8,d);

writesmh(4,a);3.6显示模块原理图20V显示子程序temp=(getdata*1.0/255)*2000;a=temp/1000;b=temp/100%10;c=temp/10%10;d=temp%10;m=1; writesmh(5,b); 15四、软件设计子程序主程序

初始化定义

主函数DescriptionofthecontentsDescriptionofthecontents转换子程序

中断子程序显示子程序

利用KEIL软件和PROTEUS软件对程序进行编写、编译、修改、仿真等,生成HEX文件后通过烧录机将程序烧入AT89S52中。四、软件设计子程序主程序初始化定义主函数Descrip16N开始4.1主程序流程图初始化量程转换等待下一次数据显示电压值处理数据AD转换选择20v档Y模拟开关选择档位N开始4.1主程序流程图初始化量程转换等待下一次数据显示174.2子程序介绍显示子程序每次电压采集后,CPU将数据送到LCD显示出不同档位电压值的显示。初始化定义对A/D和单片机的各个端口定义及程序的初始化定义中断子程序利用INT1口中断产生12.5KHZ的频率输出给ADC0809的CLK端转换子程序根据转换时序定义A/D的各端口的ALE,ST,OE等,使得转换顺利进行4.2子程序介绍显示子程序每次电压采集后,CPU将数据送184.3自动换挡程序1if((s1==0)&&(s2==0)&&(temp<200)) {_v2;m=2;}2elseif((s1==1)&&(s2==0)&&(getdata<26)) {_v0_2;m=3;}3elseif((s1==0)&&(s2==1)&&(getdata>254)){_v2;m=2;}4elseif((s1==1)&&(s2==0)&&(getdata>254)){_v20;m=1;}4.3自动换挡程序1if((s1==0)&&(s219五、综合调试输入0-20V的电压值,记录显示值和真值对数据进行绝对误差和相对误差的计算对误差进行分析电压表的功能拓展测量误差分析结论拓展五、综合调试输入0-20V的电压值,记录显示值和真值对数据进205.1电压值测量测量值真值相对误差绝对误差46.1mv49.6mv3mv6%1173mv1175mv2mv0.17%1783mv1785mv2mv0.11%2.27v2.28v0.02v0.88%4.02v4.04v0.02v0.49%6.24v6.25v0.01v0.16%8.39v8.39v0010.15v10.15v0012.28v12.28v0014.51v14.50v0.01v0.069%15.36v15.34v0.02v0.13%17.17v17.17v0019.10v19.08v0.02v0.1%5.1电压值测量测量值真值相对误差绝对误差46.1mv4215.2误差分析0-200mv通过电阻衰减转换为0-5v的电压从X0=X输入到AD,其精度为:200/255=0.7843mv20mv-2000mv通过运放转换为0-5v的电压从X1=X输入到AD,其精度为:1800/255=7.059mv2v-20v通过运放转换为0-5v的电压从X2=X输入到AD,其精度为:18/255=0.07059v200mv档2000mv档20v档各档的电压值从初值到终值的转换与74HC4051模拟开关的输出成正比5.2误差分析0-200mv20mv-2000mv2v-225.3结论200mv档:误差消除方法:实验修正多次测量发现:0-200mv内的误差呈线性增长,可进行修正,修正方程为:y=0.93388x,y为修正值,x为测量值20v档:误差范围在精度内该范围内测的最大误差为20mv,远小于70.59mv,满足测量要求2v档:误差范围在精度内该范围内测的最大误差为2mv,远小于7.059mv,满足测量要求5.3结论200mv档:误差消除方法:实验修正多次测量发235.4电压表的拓展本次设计基本达到了任务书的要

温馨提示

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

评论

0/150

提交评论