苏州大学数字电压表设计报告.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
苏州大学数字电压表设计报告

单片机课程设计——数字电压表设计小组成员:王志伟,刘倩倩,余美洁专 业:电子科学与技术,通信工程指导老师:徐大诚目录一、设计题目二、设计要求三、设计目的四、设计实现方案硬件方案的选择硬件方案的实现程序设计(关键子程序必须有程序流程图)系统的测试及结果系统调试过程中遇到的问题及解决的方法五、课程设计的参考文献六、课程设计的收获及心得七、致谢一、设计题目利用单片机AT89S51与ADC0809设计一个数字电压表,能够测量0-5V之间的直流电压值,三位数码显示,使用尽量少的元器件.二、设计要求1.用AT89S51,ADC0809,数码管等元件设计一个数字电压表2.能测量0~5V的直流电压3.能连续、稳定显示所测电压4.测量误差0.02V5.能脱机稳定工作6.扩展要求:量程扩展至0~24V的直流电压测量,并能自动切换量程。三、设计目的1.实现用AT89S51与ADC0809设计数字电压表2.掌握AT89S51,ADC0809,数码管的原理和功能3.掌握AT89S51,ADC0809,数码管的使用4.学会用Proteus仿真软件以及Keil软件5.学会用C语言对51单片机进行编程设计实现方案硬件方案的选择。方案一:根据设计要求选用AT89S51,ADC0809,数码管作为主要元件,搭配晶体振荡器,电容,电阻等基本元件进行设计。AT89S51作为电路的核心控制器件A/D转换由ADC0809来实现显示由四位一体的共阳数码管显示。在此电路中没有加驱动芯片74LS244以及三极管驱动,但仿真时数码管仍旧可以正常显示,根据相关资料表明I/O端口的驱动电流很小,实际操作中是不足以驱动数码管的,需要加驱动芯片以及三极管。方案二:根据设计要求选用AT89S51,ADC0809,数码管作为主要元件,搭配晶体振荡器,电容,电阻等基本元件进行设计。在方案一的基础上加入了数码管的相关驱动。(1)AT89S51作为电路的核心控制器件(2)ADC0809的时钟信号由单片机I/O口产生,以简化硬件。 (3)A/D转换由ADC0809来实现。(4)显示由三位独立共阳数码管显示。(5)数码管的驱动用74LS244与三极管配合使用进行驱动。 从以上对两个方案的分析来看,方案二更具有可行性,所以我们决定用方案二的电路进行焊接调试,下图为方案二的电路图。2.硬件方案的实现仿真硬件电路图:3.程序设计(关键子程序必须有程序流程图)ORG 0000HLJMP STARTORG 000BH AJMP ST_T0ORG 0030HSTART:MOV SP,#60HMOV TMOD,#02H设置堆栈MOV TH0,#245MOV TL0,00H调用显示子程序MOV IE,#82HSETB TR0MAIN:LCALL RECIVELCALL TRALCALL DISPLAYSJMP MAINRECIVE:CLR P3.0;A/D转换子程序CLR P3.1SETB P3.0NOPNOPCLR P3.0JNB P3.2,$SETB P3.1MOV 50H,P2RETTRA:MOV B,#33H;数据转换子程序MOV A,50HDIV ABMOV 51H,AXCH A,BMOV B,#05HDIV ABMOV 52H,AMOV A,#02HMUL ABMOV 53H,ARETST_T0:CPL P3.3;时钟程序MOV TH0,#245MOV TL0,00HRETIDISPLAY:MOV DPTR,#TAB;显示子程序MOV A,51HMOVC A,@A+DPTRMOV P1,#0DHMOV P0,ACLR P0.7LCALL DELAYMOV A,52HMOVC A,@A+DPTRMOV P1,#0BHMOV P0,ALCALL DELAYMOV A,53HMOVC A,@A+DPTRMOV P1,#07HMOV P0,ALCALL DELAYRETDELAY:MOV R7,#20;延时子程序D1: MOV R6,#100DJNZ R6,$DJNZ R7,D1RETTAB:DB 0C0H,0F9H,0A4H,0B0H,99HDB 92H,82H,0F8H,80H,90HEND4.系统的测试及结果仿真结果:焊接电路图:实际测量电路图:实际测量示数与万用表测量所得示数之间误差几乎为0.系统调试过程中遇到的问题及解决的方法在测量过程中(1)由于我们手里没有可以对AT89S51进行程序下载的设备,所以我们使用了STC89C52替换了AT89S51,并对STC89C52进行了程序下载,测试的结果算是令人满意。(2)在测试之前,还没有向我们开放实验室,没有电压源ADC0809的参考电压就会不准,最后无奈只能用之前我们做的一个手工焊接的电压源替代,万用表测试该电压源提供的电压为4.

文档评论(0)

yan698698 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档