岑兴龙-20131001153-可变量程电压表详解.docx

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE \* MERGEFORMAT12 电路综合实习 ——自动量程转换电压表 姓名:岑兴龙 学号:20131001153 班级:075134 院系:机械与电子信息学院 指导老师:吴让仲 王巍 目录 一、实验内容及要求?2 二、设计方案? 1.系统框图2 2.功能模块2 三、实验采用的原理图5 四、单片机程序6 五、实验数据表及分析9 六、心得体会10 七、参考文献11 自动量程转换电压表 实验内容及要求? 实验内容:设计并制作数字电压表 基本要求:(1)测量电压范围为:0V—20V直流电压 (2)电压测量范围分为0.2V,2V,20V三档,量程自动 切换 (3)显示精度:0.01V,显示稳定,无闪烁 (4)测量误差0.2V档≤10%,2V和20V档≤1% 发挥部分:测量交流电压有效值,测量范围0~5V。 二、设计方案? 1.系统框图 2.功能模块? ①数据采集模块(放大电路)? 本模块将待测电压进行适当的放大和缩小,并能够由单片机自动控制选择输出,从而在不同量程都能提供给ADC0809合适的电压值,提高其测量精度。 此电路输入电阻首先对待测电压进行五分压,单片机首先置S1高电平,通过运放组成的同向电压跟随器,输入ADC0809,0809向单片机提供模数转换结果,由单片机判断量程并决定打开和关闭S1、S2或S3。? ②?A/D转换模块? 本模块实现的功能是将采集的模拟信号(电压)转换为数字信号,我们选用ADC0809芯片来实现本功能。ADC0809是将输入的模拟值转化为8位二进制数值输出,也就是对一个模拟量进行量化采用逐次逼近的方法近似为数字量。 说明:(1)由于每次都从IN-0口输入电压值,所以其余七个入口都是空置的,所以ADC0809的三个地址输入口要接地。 (2)从IN-0口输入的电压值范围0-5V,所以ADC0809采取5V的标准电压,以待量化进行数模转换。? (3)ADC0809的工作是通过单片机C51中的程序控制的,当ADC0809的START=1,ALE=1时启动模数转换,此时EOC=0;转化结束后EOC=1,若OE=1,则允许单片机从ADC0809中读取数据,读取结束后,OE=0.? (4)同时A的10号引脚CLK要接单片机的30号引脚ALE,由于ADC0809的频率一般采用500KHZ左右,单片机30号引脚输出为2MHZ,所以要用74LS74进行两次二分频。 ?? ③数据处理模块(单片机)? 本模块主要是通过程序来实现三个功能: (1)控制模拟开关4051来实现调挡功能。? (2)控制ADC0809进行模数转换,单片机的P1口和ADC0809的8位输出 口相连,来读取数据。? (3)单片机通过P0和P2口控制非门74LS04和译码器4511对数码管进行 动态扫描。? 另外,还有置位电路和产生频率的晶振电路,单片机本身可以六分频,由于使用的是6MHZ的晶振,所以单片机30脚输出1MHZ,经分频后送到ADC0809。 ④显示模块? 该模块由非门74LS04、译码器4511和一片4位七段数码管组成;主要结合程序实现动态扫描。? 说明:?(1)单片机P0口的低四位通过非门来控制片选B1\B2\B3\B4,另外P0.7口通过非门来控制小数点dp,由于P0口一般情况下位低电平,故需加上拉电阻来提高电平。? (2)单片机P2口的低四位输入到译码器CD4511,译码器将输入转换成 七位即abcdefg,进行段选。 本实验采用的原理图如下: 所需元器件清单: 四、单片机程序 #include reg52.H #define uchar unsigned char; uchar code scan_con[]={0x08,0x04,0x02,0x01}; //定义扫描片选 uchar dispbuf[8]={0,0,0,0,0,0,0,0}; //定义8个存储空间 uchar getdata; unsigned long int temp;//定义暂存空间 uchar i,j,k,l,m; int a,b; sbit s3=P3^7; //位定义,控制模拟开关 sbit s2=P3^6; sbit s1=P3^5; sbit dp=P0^7; //定义小数点 #define v20_on {s3=0;s2=0;s1=0;} //宏定义不同量程,不同的开关状态 #define v2_on {s3=0;s2=0;s1=1;} #defi

文档评论(0)

过各自的生活 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档