




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、ADC0809引脚结构功能说明图:1OTT1317m3TM2HST4nsriFM5TWOIN6AINVBSTcBOCD307OEntsCLKD5VCCFMDOQTsTD VRF.F-DID215、2628, IN0IN7 : 8路模拟量输入端。1415、8、1721 , D0D7 : 8 位数字量输出端。2325,ADDA、ADDB、ADDC : 3位地址输入线,用于选通8路模拟输入中的一路22,ALE :地址锁存允许信号,输入,高电平有效,对应ALE上跳沿,A、B、C地址状态送入地址锁存器中。6, START : A/ D转换启动信号, 输入高电平有效, START 上升沿时, 复位ADC0
2、809 ;START下降沿时启动芯片,开始进行 A/D转换;在A/D转换期间,START应保持低电平。本信号有时简写为ST.7, EOC : A/ D转换结束信号,输出,当A/ D转换结束时,此端输出一个高电平(转换期间一直为低电平)。9, 0E:数据输出允许信号,输入,高电平有效。当A/ D转换结束时,此端输入一个高电平,才能打开输出三态门,输出数字量,用于控制三态输出锁存器向单 片机输出转换得到的数据。OE=0,输出数据线呈高阻;0E=1 ,输出转换得到的数据。10, CLK :时钟脉冲输入端。要求时钟频率不高于640KHZ , EOC=0,正在进行转换;EOC=1,转换结束。使用中该状态
3、信号即可作为查询的状态标志,又可作为 中断请求信号使用。12、16, REF ( + )、REF (-):基准电压。11, Vcc :电源,单一+ 5V。13, GND :地。、ADC0809与51单片机的接口电路1、说明:D0D7接51单片机的P2 口 (P2.0 P2.7)ADIN1和ADIN2为通道IN0和IN1的电压模拟量输 入(05V)ADC080 9与阳鱼片机接口电路及应用程月By nika2008-5-18S1o OR1nRSTvcc67OE10liDIY1U19Cl30pFCLKIN3IN2IN4INIIN5IN0IN6AIN7BSICEOC ALED3OED6CLKD5vcc
4、D4VreRDOGNDVi-efDID2.WC080928Sl127ADTN2EOCM126ADIN】 JOF325ADDCSCI.E;424亠|1 kADD*CS523 i1 1622ST721D7820D619D5RST918D417DO1016IF1115D2 112|一1L.1115X216I-lOUfPl.O/TVccPl.I/TPl.2POOPl.3P0.1Pl.4P0.2PL5P0.3Pl.6P0.4Pl,7P0.5RSTATDP0.6P0.7PS.0/RXDEA/VPPP.l/TXD Pj 2/INT0ALE-PROGP3 3/INT1PSENP3 4/TOP3.5/T1PL7
5、P2.6P3.7.P2.5XTAL2P2.4P2.3XTAL1P2.2GildP2.1P2.0vcc40JiLFi93837i6笳J4J3J231for(j=125;j0;j-)应用程序如下:#includereg52.h#define uchar unsigned char sbit ST=PM0;sbit EOC=P1T;sbit OE=P1A2;sbit CLK=PM3;sbit ADDCS=PM4;uchar AD_DATA2; 转换后的数据保存IN0和IN1经AD延时函数*void delay(uchar i) uchar j;while(i-)Ikkkkkkvoid init()系
6、统初始化*/EA = 1; / 开总中断TMOD = 0x02; /设定定时器 T0工作方式TH0=216;/ 利用T0中断产生 CLK信号 TL0=216;TR0=1; /启动定时器T0ET0=1;ST=O;OE=0;/*T0中断服务程序 */void tO(void) interrupt 1 using 0CLK=CLK;转换函数*/void AD()ST=0;ADDCS=0; /选择通道 IN0ST=0;ADDCS=1; /选择通道 IN1delay(10);ST=1; / 启动AD转换 delay(10);ST=0;while(0=EOC);OE=1;AD_DATA1=P2;OE=0;
7、主函数*delay(10);ST=1; / 启动AD转换delay(10);ST=0;while(0=EOC);OE=1;AD_DATA0=P2;OE=0;void main() init();while(1)AD();注:由于ADC0809内部不带时钟电路,因此用 51单片机的定时器 T0来产生时钟信号。在通道选择时,由于 B,C接地,当A( ADDCS)为低电平时选择IN0,A为高电平时选择IN12、利用单片机AT89S51与ADC0809设计一个数字电压表,实 验任务利用单片机 AT89S51与ADC0809设计一个数字电压表, 能够测量0 -5V之间的直流电压值,四位数码显示,但要求使
8、 用的元器件数目最少。QHD 十S 30 9 8 714011*7Kmnxp.20 3J 户P3J阍 3.甬251SBXIr;98FJJgoh7321c cV stosy P0JUKD1 P02XkD2 P03XWD3 s.* P0JXKD5 s.- P0.7XKD7RLE P2.7AD P2JW P2JXM3 P24XK12 P23XKH P22XM0 P20畫GNDU1s2133V/3gdg593 .系统板上硬件连线把单片机系统”区域中的P1.0 - P1.7与动态数码显示”区域中的ABCDEFGH端口用8芯排线连 接,数码管段码控制。把 单片机系统”区域中的P2.0 - P2.3与 动态
9、数码显示”区域中的S1S2S3S4端口用8芯排线连 接,数码管位码控制。把 单片机系统”区域中的P3.0与 模数转换模块”区域中的ST端子用导线相连接,转换启动控制。把单片机系统”区域中的P3.1与模数转换模块”区域中的0E端子用导线相连接,数据输出控制。(5) 把 单片机系统”区域中的P3.2与 模数转换模块”区域中的EOC端子用导线相连接,转换结束标志。(6) 把单片机系统”区域中的P3.3与模数转换模块”区域中的CLK端子用导线相连接,为转换器提供脉冲。(7) 把模数转换模块”区域中的A2A1A0端子用导线连接到电源模块”区域中的GND端子上,始终选择IN0单通道(8) 把 模数转换模块
10、”区域中的IN0端子用导线连接到 三路可调电压模块”区域中的VR1端子上,调节电压变化。(9) 把 单片机系统”区域中的P0.0 - P0.7用8芯排线连接到 模数转换模块”区域中的D0D1D2D3D4D5D6D7端子上,数字结果输出。4程序设计内容i. 由于ADC0809在进行A/D转换时需要有 CLK信号,而此时的ADC0809的 CLK是接在 AT89S51 单片机的P3.3端口上,也就是要求从 P3.3输出CLK信号供ADC0809使用。因此产生 CLK 信号的方法就得用软件来产生了。ii. 由于ADC0809的参考电压VRE& VCC所以转换之后的数据要经过数据处理,在数码管上显示出
11、电压值。实际显示的电压值(D/256*VREF)5 C语言源程序#include unsigned char code dispbitcode=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f; unsigned char codedispcode=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;unsigned char dispbuf8=10,10,10,10,10,0,0,0;unsigned char dispcount;unsigned char getdata;unsigned int te
12、mp;unsigned char i;sbit ST=P3A0;sbit OE=P3A1;sbit EOC=P3A2;sbit CLK=P3A3;void main(void)ST=0;OE=0;ET0=1;ET1=1;EA=1;TMOD=0x12;TH0=216;TL0=216;TH1=(65536-4000)/256;TL1=(65536-4000)%256;TR 仁1;TR0=1;ST=1;ST=0;while(1)if(E0C=1)OE=1; getdata=P0;OE=0; temp=getdata*235; temp=temp/128;i=5;dispbuf0=10;dispbuf
13、1=10;dispbuf2=10;dispbuf3=10;dispbuf4=10;dispbuf5=0;dispbuf6=0;dispbuf7=0; while(temp/10) dispbufi=temp%10; temp=temp/10;i+;dispbufi=temp;ST=1;ST=0;void t0(void) interrupt 1 using 0CLK=CLK;void t1(void) interrupt 3 using 0TH1=(65536-4000)/256;显示电压值位码控制TL1=(65536-4000)%256;P1=dispcodedispbufdispcount
14、; P2=dispbitcodedispcount; if(dispcount=7)P仁P1 | 0x80;dispcount+;if(dispcount=8) dispcount=0;三、ADC0809应用说明1、 ( 1 ). ADC0809内部带有输出锁存器,可以与AT89S51单片机直接相连。(2) .初始化时,使ST和0E信号全为低电平。(3) .送要转换的哪一通道的地址到 A, B, C端口上。(4) .在ST端给出一个至少有100ns宽的正脉冲信号。(5) .是否转换完毕,我们根据EOC信号来判断。(6) .当EOC变为高电平时,这时给 OE为高电平,转换的数据就输出给单片机了。
15、2、 ST为转换启动信号。当 ST上跳沿时,所有内部寄存器清零;下跳沿时,开始进行A/D转换;在转换期间,ST应保持低电平。EOC为转换结束信号。当 EOC为高电平时,表明转换结束;否则,表明正在 进行A/D转换。OE为输出允许信号,用于控制三条输出锁存器向单片机输出转换得到的数据。OE= 1,输出转换得到的数据;OE= 0,输出数据线呈高阻状态。D7- D0为数字量输出线。CLK为时钟输入信号线。因ADC0809的内部没有时钟电路,所需时钟信号必须由外界提供,通常使用频率为500KHZ,VREF ( + ), VREF ()为参考电压输入。(1 ).进行A/D转换时,采用查询 EOC的标志信
16、号来 检测A/D转换是否完毕,若完毕则把数据通过 P0端口读入,经过数据处理之后在数码管上显示。(2) 进 行A/D转换之前,要启动转换的方法:ABC = 110选择第三通道ST = 0,ST= 1,ST= 0产生启动转换的正脉冲信号.3、ADC0809的工作过程是:首先输入 3位地址,并使 ALE=1,将地址存入地址锁存器中。此地址经译码选通8路模拟输入之一到比较器。START上升沿将逐次逼近寄存器复位。下降沿启动A / D转换,之后EOC输出信号变低,指示转换正在进行。直到A/ D转换完成,EOC变为高电平,指示 A/ D转换结束,结果数据已存入锁存器,这个信号可用作中断申请。当OE输入高
17、电平 时,输出三态门打开,转换结果的数字量输出到数据总线上。4、C语言源程序#include unsigned char code dispbitcode=0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f;/位码数组unsigned char code dispcode=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x00;段码数组unsigned char dispbuf8=10,10,10,10,10,0,0,0;unsigned char dispcount;sbit ST=P3A0;sbit OE=P
18、3A1;sbit EOC=P3A2;unsigned char channel=0xbc;/IN3unsigned char getdata;void main(void)TMOD=0x01;TH0=(65536-4000)/256;TL0=(65536-4000)%256;TR0=1;ET0=1;EA=1;P3=channel;while(1)ST=0;ST=1;ST=0;while(EOC=0);OE=1;getdata=P0;OE=0;dispbuf2=getdata/100;/分离百位getdata=getdata%100;/除去百位dispbuf1=getdata/10;/分离 10
19、 位dispbuf0=getdata%10;/分离各位void tO(void) interrupt 1 using 0TH0=(65536-4000)/256;TL0=(65536-4000)%256;P1=dispcodedispbufdispcount;采样数据P2=dispbitcodedispcount;打开所要显示数据的位码dispcount+;if(dispcount=8)dispcount=0; 四、ADC0809的内部结构1、ADC0809的内部逻辑结构图如图 9-7所示。表9-1通道选择寄祥辭洽WSTAKT CLK0E2.转换数据的传送A/D转换后得到的数据应及时传送给单片
20、机进行处理。数据传送的关键问题是如何确认A/D转换的完成,因为只有确认完成后,才能进行传送。为此可采用下述三种方式。(1)定时传送方式对于一种A/D转换其来说,转换时间作为一项技术指标是已知的和固定的。例如ADC0809转换时间为128gs,相当于6MHz的MCS-51单片机共64个机器周期。可据此设计一个延时子程序, A/D转 换启动后即调用此子程序,延迟时间一到,转换肯定已经完成了,接着就可进行数据传送。(2 )查询方式A/D转换芯片由表明转换完成的状态信号,例如ADC0809的EOC端。因此可以用查询方式,测试EOC的状态,即可却只转换是否完成,并接着进行数据传送。(3 )中断方式把表明
21、转换完成的状态信号(EOC)作为中断请求信号,以中断方式进行数据传送。不管使用上述那种方式,只要一旦确定转换完成,即可通过指令进行数据传送。首先送岀口地址并以 信号有效时,0E信号即有效,把转换数据送上数据总线,供单片机接受。不管使用上述那种方式,只要一旦确认转换结束,便可通过指令进行数据传送。所用的指令为MOVX读 指令,仍以图9-17所示为例,则有MOV DPTR , #FE00HMOVX A , DPTR该指令在送出有效口地址的同时,发出艮D有效信号,使0809的输出允许信号 0E有效,从而打开三态门输岀,是转换后的数据通过数据总线送入A累加器中。这里需要说明的是,ADC0809的三个地
22、址端 A、B、C即可如前所述与地址线相连,也可与数据 线相连,例如与D0D2相连。这是启动 A/D转换的指令与上述类似,只不过 A的内容不能为任意数,而 必须和所选输入通道号IN0 IN7相一致。我为了这个ADC0809已经痛苦了好几天了,今天终于成功了。算是一个里程碑了 为了纪念它,把东西发上来。电路图R5TP$EN ALEU2ATB0C51P1.D I PI .2 P1.3 P1.4 PI .5P1.&P1.7PQMW P0.VAD1P02/AO2PL)./AD6 Fo.e/iAoaPD 7W7P2.1M pz.azAia PZ 3W1 Pi.钠 叫脚J PZJZA14 PZP3JD/RXD 罰丽而F3.3l*lRTTpj.sm時丽P3.7/KH.VREFGJn hirrivccUNL1了 SL5 B 了OUTPUT 61ABUEX 1U3STRT3 -4ADCIW4ilhii? jin r IbJAZ 5 iUVESIHq irj氏inp iki凡Al Ein*IN3 ikHl-U-EIMXnunhLUJ DAnn /lIniiiunirw-iiJT4”PCB图实物图ll TR程序#i
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025出版合同翻译协议范本
- 2025国际服务贸易合同主体的范围
- 办公电脑软硬件维护服务合同
- 生物技术农业应用合作合同书
- 纺织设计师考试内容纲要试题及答案
- 浙江国企招聘2025温州泰顺县国有企业社会招聘20人笔试参考题库附带答案详解
- 2025河南郑州空中丝路文化传媒有限公司社会招聘6人笔试参考题库附带答案详解
- 2025年福建省福州市中国冶金地质总局二局招聘8人笔试参考题库附带答案详解
- 2025安徽省科创投资有限公司社会招聘10人笔试参考题库附带答案详解
- 高效备考2024年国际商业美术设计师考试试题及答案
- 数字化转型对企业人力资本的影响研究
- 保密基本知识培训材料范文
- 《荣安地产公司财务风险研究与防范研究(定量论文)》8200字
- 【MOOC】理性思维实训-华南师范大学 中国大学慕课MOOC答案
- 小学数学培训微讲座
- 《电子产品简介》课件
- 疑似新冠肺炎的应急演练
- 2025年湖北省武汉市高考数学模拟试卷(附答案解析)
- 赛迪顾问一线调研第36期:中国人工智能医疗器械:前路漫漫仍需披荆斩棘
- 2024秋期国家开放大学《可编程控制器应用实训》一平台在线形考(形成任务5)试题及答案
- 广东省广州三校2023-2024学年高二下学期期末考试+政治试卷(含答案)
评论
0/150
提交评论