- 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 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)