AD转换实验,南京理工大学紫金学院单片机实验报告.docVIP

AD转换实验,南京理工大学紫金学院单片机实验报告.doc

  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文档。上传文档
查看更多
AD转换实验,南京理工大学紫金学院单片机实验报告

单片机实验报告 实验名称: A/D转换实验 姓 名: 学 号: 班 级: 通信 时 间: 2013.12 南京理工大学紫金学院电光系 实验目的 理解A/D转换工作原理。 学习掌握ADC0809的A/D转换原理和并行A/D转换接口的编程方法。 学习使用并行模数转换芯片ADC0809进行电压信号的采样和数据处理。 实验原理 单片机给ADC提供一个启动转换信号后,ADC转换开始,当A/D转换结束时,ADC输出一个转换转换结束标志信号,通知单片机读取转换结果。单片机检验判断A/D转换结果的方法一般有中断和查询俩种。整个A/D转换都是在一定的时钟作用下完成的,其频率是决定芯片转换速度的基础。 实验内容 1.开始试验前应做好准备工作:? (1)阅读ADC0809的数据手册,熟悉ADC0809功能及A/D转换工作原理;? (2)认真阅读2.2节内容,熟悉利用DP-51PROC进行调试仿真的基本操作流程。? 2、了解本次实验涉及的各功能模块电路结构,其中,D2区有两个独立电位器,部分的电路原理图如图所示;A2区的PARK2区是ADC0809的工作区,如图所示 电位器电路原理图 ?ADC0809芯片部分电路原理图 3、?系统板硬件连线? (1)将ADC809PACK模块(选配件)插入PARK2区;? (2)将D2区1KΩ电位器和10KΩ电位器的左端金属孔通过导线连接到的该区GND金属孔,而右端金属孔通过导线连接到该区的VCC金属孔;? (3)将D2区的1KΩ电位器的中间金属孔连接到A7区的P2-IO2金属孔,而D2区10KΩ电位器的中间金属孔连接到A7区的P2-IO1金属孔;? (4)将A7区的P2-IO3-P2-IO5分别连接到A2区的A2-A0;? (5)将A7区的P2-CS连接到A2区的A15;? (6)运行编写好的软件程序,每次跑到断点就会停止,此时观察转换得结果与数字万用表测量的结果相比较是否正确(所需观察的存储单元或者变量在程序中依照注释执行) (7)改变1KΩ电位器和/或10KΩ电位器的旋转位置,用数字万用表测量中间金属孔的电压,再次运行程序至断点处,观察转换的结果是否正确。 4.程序设计 程序流程图 思考题 采用中断方法等待ADC0809转换结束 1.C语言程序 #includereg51.h #includeabsacc.h #define adc0 XBYTE[0X7FF0] #define uint unsigned int #define uchar unsigned char uchar num,cnt,flag; float dat; uint voltmeter,m,n,p; uchar dis_dat[]={0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90}; void inint() { TMOD=0x10; TH1=(65536-46083)/256; TL1=(65536-46083)%256; TR1=1; EA=1; ET1=1; EX0=1; cnt=20; adc0=0; num=0; } void delay(uint n) { uint i; for(i=0;in;i++); } void display(uchar a,b,c) { P2=0x01; P1=dis_dat[a]; delay(100); P2=0x02; P1=dis_dat[b]; delay(100); P2=0x04; P1=dis_dat[c]; delay(100); P2=0x08; P1=0xc1; delay(100); P2=0x01; P1=0x7f; delay(100); } void main() { inint(); while(1) { if(flag==1) { flag=0; dat= num/255.0*5.0; } EX0=0; voltmeter=(uint)(dat*100); m=voltmeter/100; n=voltmeter/10%10; p=voltmeter%10; display(m,n,p); EX0=1; } } void time_1()interrupt 3 { TH1=(65536-46083)/256; TL1=(65536-46083)%256; cnt--; if(cnt==0) { cnt=20; flag=

文档评论(0)

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

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

1亿VIP精品文档

相关文档