课题九 AD简易数字电压表.pptVIP

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

课题九 简易数字电压表 用单片机测量并显示0~5V的模拟电压。 课题目标 本课题的任务是利用单片机和A/D转换器组成的系统,测量0~5V的模拟电压,并在数码管上显示出来。 通过本课题中任务的实现,认识A/D并学会使用A/D测量模拟信号,理解显示数据和输入信号之间的关系、计算方法与程序设计。 A/D转换器的主要技术指标 1. 分辨率 分辨率指A/D转换器对输入模拟信号的分辨能力。 2.转换速度 转换速度是指完成一次转换所需的时间,转换时间是从接到转换启动信号开始,到输出端获得稳定的数字信号所经过的时间。A/D转换器的转换速度主要取决于转换电路的类型 3.相对精度 在理想情况下,输入模拟信号所有转换点应当在一条直线上,但实际的特性不能做到输入模拟信号所有转换点在一条直线上。 课题分析 任务要求是实现模拟电压表,要测量输入的模拟电压,并实现数字显示。 在本课题中,采用典型的10位并型传输的A/D转换芯片作为模数转换器件。 TLC1543内部转换器具有高速(10μS转换时间),高精度(10位分辨率,最大±1LSB不可调整误差)和低噪声的特点。 TLC1543引脚功能 显示电路原理图 TLC1543 工作时序图1 中当EOC为高时,将CS置低A/D开始工作。 由ADDRESS 端送入4 位地址的最高位B3,在B3 有效期间输入一个I/O CLOCK 信号将地址最高位移入A/D地址寄存器。同时从DATAO U T 端口读出前一次采样转换的10位数据的最高位A9 ,然后送入B2 同时输入一个I/OCLOCK信号将B2 移入A/D 地址寄存器。 从DATA OUT 读出A8 按此时序进行直到将4位地址送入A/D ,同时读出前一次采样转换结果的A9 A8 A7 A6高四位然后。输入6 个I/O CLOCK 信号将A5~A0读出10 个I/O CLOCK 信号后EOC 将置低。此时A/D进入转换过程转换完成后EOC 置高。 程序设计分析 作为一个电压表,其任务就是将输入的模拟电压值大小对应的数据进行显示,硬件电路已能够将模拟电压转换为单片机可以读取的数字,也就是说,作为软件要完成数据的读入和显示两个部分。 #includeat89x52.h #includeINTRINS.h #define uint unsigned int #define uchar unsigned char #define ulong unsigned long #define CLOCK P2_4 #define D_IN P2_3 #define D_OUT P2_5 #define _CS P2_6 sbit a=P0^5; sbit b=P0^6; sbit c=P0^7; float JiZhun_AD=2.5; unsigned char code table[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f}; void delay02s(void) { unsigned char i,j,k; for(i=1;i0;i--) for(j=15;j0;j--) for(k=255;k0;k--); } 程序设计分析 一、TLC1543A/D转换程序: uint read1543(uchar port) { uint ad; uint i; uchar al=0,ah=0; CLOCK=0; _CS=0; port=4; for (i=0;i4;i++) //将四位通道地址送1543 { D_IN=(bit)(port0x80);CLOCK=1;CLOCK=0; port=1; } for (i=0;i6;i++) //填6个CLOCK信号 { CLOCK=1;CLOCK=0; } _CS=1; _nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_();_nop_();_nop_();_nop_(); _nop_();_nop_();_nop_(); _CS=0; //等待AD转换结束 _nop_();_nop_();_nop_(); for (i=0;i2;i++) //D9,D8 { D_OUT=1; CLOCK=

文档评论(0)

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

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

1亿VIP精品文档

相关文档