欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    基于STC89C52的数字电压表设计报告.doc

    • 资源ID:42287883       资源大小:322KB        全文页数:17页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于STC89C52的数字电压表设计报告.doc

    .荆楚理工学院 单片机课程设计成果学院: 电子信息工程学院 班级: 13电气2班 学生:xxx学号:xxxxxxxxxxxxxxxx设计地点(单位) 单片机实验室D1302 设计题目: 数字电压表 完成日期: 2015年 7月3日指导教师评语: _成绩(五级记分制):教师签名:摘要电压表是测量仪器中不可缺少的设备,目前广泛应用的是采用专用集成电路实现的数字电压表。本系统以STC89C52单片机为核心,以逐次逼近式A/D转换器ADC0809、数码管显示器为主体,设计了一款简易的数字电压表,能够测量05V的直流电压。 该设计大体分为以下几个部分,同时,各部分选择使用的主要元器件确定如下: 1、单片机部分。使用常见的STC89C52单片机,同时根据需要设计单片机电路。 2、测量部分。该部分是实验的重点,要求将外部采集的模拟信号转换成数字信号,通过单片机的处理显示在显示器上。根据需要本设计采用逐次逼近型AD转换器ADC0809进行模数转换。 3、数码管显示部分。其中一位为整数部分,其余位小数部分。 关键词:STC89C52 模数转换 数码管显示目录1.方案设计与论证41.1方案设计41.2方案论证42.系统硬件电路设计42.1系统原理框图42.2 A/D转换电路52.3单片机主控电路52.4电压显示电路72.5总体电路设计83.系统测试103.1测试方法与结果103.2测试结论113.3误差分析114.设计总结11参考文献13附录141.方案设计与论证数字电压表(Digital Voltmeter)简称DVM,目前采用单片机设计的数字电压表,由于精度高、抗干扰能力强、可扩展性强、集成方便,还可以与PC进行实时通信,所以以下方案均采用单片机设计。1.1方案设计方案一:使用AT89C51单片机作为核心控制芯片,并用TLC549串行芯片作模数采样芯片。其占用的单片机的I/O口少且占用电路面积小。其缺点是编程比较复杂。方案二:使用STC89C52RC单片机作为核心控制芯片,并采用ADC0809数模转换芯片其需要占用一个I/O口,可以循环采样8路模拟通道。编程相对更为简单。1.2方案论证结合实际情况,采用TLC549串行芯片实现电路不具有可行性,所以本设计采用方案二。2.系统硬件电路设计2.1系统原理框图图2-1系统原理框图2.2A/D转换电路本设计采用ADC0809芯片进行数模转换,ADC0809是具有8通道、8位逐次逼近式A/D模数转换器。其部有一个8通道多路开关,它可以根据地址码锁存译码后的信号,只选通8路模拟输入信号中的一个进行A/D转换。A/D转换工作原理:首先输入3位地址,并使ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动 A/D转换,之后EOC输出信号变低,指示转换正在进行。直到A/D转换完成,EOC变为高电平,指示A/D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高电平时,输出三态门打开,转换结果的数字量输出到数据总线上。其结构原理图和外部引脚图如图1-2所示。图2-2 ADC0809部结构框图与引脚图本设计通过输入电路将8路输入电压送入ADC0809。并通过单片机P3端口控制实现模数转换,并将转换后的数字信号送入单片机的P2口。ADC0809芯片的时钟信号由单片机产生,送入芯片clock端口。芯片的基准电压和电源电压均由单片机学习板提供。2.3单片机主控电路2.3.1STC89C52性能 STC89C52是美国ATMEL公司生产的低电压,高性能CMOS8位单片机,片含有4KB的可反复擦写的只读程序存储器和128字节的随机存储器。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容,由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的STC89C52是一种高效微控制器,它为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。STC89C52功能性能:与MCS-51成品指令系统完全兼容;4KB可编程闪速存储器;寿命:1000次写/擦循环;数据保留时间:10年;全静态工作:0-24MHz;三级程序存储器锁定;128*8B部RAM;32个可编程I/O口线;2个16位定时/计数器;5个中断源;可编程串行UART通道;片震荡器和掉电模式。2.3.2 STC89C52RC各引脚功能 2-3-2引脚配置图P0端口: P0口是一个漏极开路的8位双向I/O口。作为输出端口每个引脚能驱动8个TTL负载对端口P0写入“1”时可以作为高阻抗输入。在访问外部程序和数据存储器时P0口也可以提供低8位地址和8位数据的复用总线。此时P0口部上拉电阻有效。在Flash ROM编程时P0端口接收指令字节而在校验程序时则输出指令字节。验证时要求外接上拉电阻。P1端口: P1口是一个带部上拉电阻的8位双向I/O口。P1的输出缓冲器可驱动吸收或者输出电流方式4个TTL输入。对端口写入1时通过部的上拉电阻把端口拉到高电位这是可用作输入口。P1口作输入口使用时因为有部上拉电阻那些被外部拉低的引脚会输出一个电流。P2端口:P2口是一个带部上拉电阻的8位双向I/O端口。P2的输出缓冲器可以驱动吸收或输出电流方式4个TTL输入。对端口写入1时通过部的上拉电阻把端口拉到高电平这时可用作输入口。P2作为输入口使用时因为有部的上拉电阻那些被外部信号拉低的引脚会输出一个电流。 在访问外部程序存储器和16位地址的外部数据存储器如执行“MOVX DPTR”指令时P2送出高8位地址。在访问8位地址的外部数据存储器如执行“MOVX R1”指令时P2口引脚上的容就是专用寄存器SFR区中的P2寄存器的容在整个访问期间不会改变。 在对Flash ROM编程和程序校验期间P2也接收高位地址和一些控制信号。 P3端口:P3口是一个带部上拉电阻的8位双向I/O端口。P3的输出缓冲器可驱动吸收或输出电流方式4个TTL输入。对端口写入1时通过部的上拉电阻把端口拉到高电位这时可用作输入口。P3做输入口使用时因为有部的上拉电阻那些被外部信号拉低的引脚会输入一个电流。 在对Flash ROM编程或程序校验时P3还接收一些控制信号。2.4电压显示电路在应用系统中,设计要求不同,使用的LED显示器的位数也不同,因此就生产了位数,尺寸型号不同的LED显示器供选择。在本设计中,选择四位一体的数码型LED显示器,即SMA420564:图2-4 SMA420564显示器引脚图它是一个共阴极接法的四位LED数码显示管,其中a,b,c,d,e,f,g为四位LED各段公共输出端,1,2,3,4分别为每一位的位数选端,dp是小数点引出端2.5总体电路设计2.5.1元器件清单品名规格型号数量单片机STC89C52RC18位模数A/D转换器ADC08091四位共阴数码管SMA42056413296W电位器10310k2IC座28P、40P1三极管9012、80501独石电容100PF、0.01F1排阻1K1电阻10K3弹性小按键2LED灯红色22.5.2仿真图经过以上的设计过程可设计出在pruteus软件中基于单片机的简易数字直流电压表硬件电路原理图如图2-5-2所示图 2-5-2数字直流电压表硬件电路原理图原理是采用中断方式,对2路05V的模拟电压进行循环采集,采集的数据送LED显示,并存入存。超过界限时指示灯闪烁。本质上是以单片机为控制器,ADC器件采用ADC0809,要求的电压显示,是对ADC采集所得信号的进一步处理。为得到可读的电压值,需根据ADC的原理,对采集所得的信号进行计算,并显示在LED上。本项目中ADC0809的参考电压为+5V,根据定义,采集所得的二进制信号addata所指代的电压值为:而若将其显示到小数点后两位,不考虑小数点的存在(将其乘以100),其计算的数值为:将小数点显示在第二位数码管上,即为实际的电压。本程序将1.25 V和2.5 V作为两路输入的报警值,反映在二进制数字上,分别为0x40和0x80。当A/D转换结果超过这一数值时,将会出现二极管闪烁和蜂鸣器发声2.5.3软件设计主程序包括初始化部分,A/D转换控制部分和定时子程序。同时还设置了多路循环显示和报警子程序。程序框图如图1-3-2所示。图2-5-2 主程序流程图3.系统测试3.1测试方法与结果(1)测试方法实物电路的测试,首先根据仿真电路图焊接实物电路,连接好后,将C语言程序下载到单片机,进行测试,将侧的的数值记录下来,然后再用已有的数字电压表对可变电阻的电压进行测量,将两组数据进行比较,看结果是否一致,如果不一致,计算测量误差。(2)测试结果R0 R1R2R3R4R5R6R7第一次真实值(v)3.173.021.783.341.833.632.882.13测得值3.203.031.803.341.843.652.892.14第二次真实值3.274.981.680.924.152.153.151.33测得值3.284.981.680.924.172.173.171.34表3-1实物电路的测试结果3.2测试结论通过使用万用表多次测量,并与实际值进行对比。测试结果表明,本设计完成了基本要求。3.3误差分析通过分析以上测试数据,得出一下结论:(1)测量值与实际值有一定的误差,其主要原因是因为A/D转换芯片自身的转换误差和实际电路延时问题造成的。(2)两次测量值有一定的偏差,其主要原因是因为使用单片机学习班提供5V供电,由于单片机输出电压不稳定,造成以上结果。4.设计总结经过近二周的单片机课程设计,终于完成了我的数字电压表的设计,基本达到设计要求。 对于此次课程设计,有许多的感触与体会,遇到的难题多,学习到的知识也就更多。第一,硬件电路遇到了ADC0809无部时钟,需外接外部时钟,如何解决这个问题,我们小组进行了多次讨论,最终确定了在程序中提供时钟信号,大大降低了硬件电路的复杂度。 第二,在一个课题中,要设计一个成功的电路,必须要有耐心,要有坚持的毅力。在整个电路的设计过程中,重要的是各个单元电路的连接与电路的细节设计上,如在多种方案的选择中,我们仔细比较分析其原理以与可行的原因。这就要求我们对硬件系统中各组件部分有充分透彻的理解和研究,并能对之灵活应用。完成这次设计后,我在书本理论知识的基础上又有了更深层次的理解。第三,在本次设计的过程中,我还学会了高效率的查阅资料、运用工具书、利用网络查找资料。我发现,在我们所使用的书籍上有一些知识在实际应用中其实并不是十分理想,各种参数都需要自己去调整,这就要求我们应更加注重实践环节。 最后,还要在此感谢课程设计的指导老师们和我的组员们,他们在整个过程中都给予了我充分的帮助与支持。参考文献1. 建忠,单片机原理与应用第二版,电子科技,20082. 光飞 楼然苗,单片机课程设计指导航空航天大学,20073. 周立功.单片机实验与实践.航空航天大学,20114. 吴国经.单片机应用技术.中国电力,2003. 5. 徐惠民 安德宁 丁玉珍.单片微型计算机原理、接口与应用.邮电大学,2007年.6. 徐爱钧.智能化测量控制仪表原理与设计第二版.航空航天大学,2004.附录#include<reg52.h>sbit led1=P10;sbit led2=P11;sbit led3=P12;sbit led4=P13;sbit led=P31;sbit beep=P17;sbit ADDA=P16;sbit ADDB=P15;sbit ADDC=P14; /地址选择端sbit ALE=P34; /高电平锁存地址 ,低电平改变地址sbit OE=P35; /AD转换结束,置1,读数据sbit START=P37; /高电平启动转换sbit EOC=P32;/ 外部中断0#define uchar unsigned char#define uint unsigned intuchar channel=0;uchar voltage_temp;uchar aa,ab1,ab2,ab3;bit flag;uchar code table=0xd7,0x12,0x67,0x37,0xb2,0xb5,0xf5,0x13,0xf7,0xb7;void delay(uint z)uint i,j;for(i=z;i>0;i-)for(j=110;j>0;j-);void main(void)uchar i;led=1;beep=1;OE=0; /START=0;/高电平启动转换EA=1;EX0=1;/允许外部中断EX1=1;IT0=1;/跳变沿触发中断IT1=1;TMOD=0x21;TH0=(65536-50000)/256;TL0=(65536-50000)%256;TH1=6;TL1=6;ALE=0; /允许改变地址ADDA=0; ADDB=1; ADDC=0;ALE=1; /锁存地址while(1)display(voltage_temp);delay(2);START=1;delay(2);START=0;if(voltage_temp)<=0x40)|(voltage_temp)>=0x80) ET0=ET1=1;TR0=TR1=1;else ET0=ET1=0;TR0=TR1=0;led=1;beep=1;void ext_0(void) interrupt 0OE=1;P2=0xff;voltage_temp=P2;START=0;OE=0;ALE=0; /允许改变地址if(channel=0)ADDA=0; ADDB=0; ADDC=1;else ADDA=0; ADDB=1; ADDC=0;ALE=1;void Timer_0(void) interrupt 1TH0=(65536-50000)/256;TL0=(65536-50000)%256;aa+;if(aa>=10)aa=0;led=led;void Timer_1(void) interrupt 3ab1+;if(ab1>=3)ab1=0;beep=beep;17 / 17

    注意事项

    本文(基于STC89C52的数字电压表设计报告.doc)为本站会员(可****阿)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开