导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[zxy20042050]ADC0809和89C52数据采集问题求



No.4859
作者:zxy20042050
邮件:zhuoxinyuan2006@163.com
ID:101021
登陆:1次
文章数:5篇
最后登陆IP:
最后登陆:2008/2/27 9:28:24
注册:2008/2/27 9:28:24
财富:100
发帖时间:2008/4/4 19:43:24
发贴者IP:124.161.77.132
标题:zxy20042050:ADC0809和89C52数据采集问题求助
摘要:No.4859ADC0809和89C52数据采集问题求助 
要求:ADC0809和AT89C52完成数据采集,通过串口发送到PC机在电脑界面上显示出来。(PC机显示界面和接收程序用VB编写)
我先描述一下硬件电路的连接:单片机的PO口依次和74LS373的D0~D7口同时和ADC0809的D0~D7口相连。373的Q0,Q1,Q2依次和ADC0809的A,B,C端口相连。89C52的ALE端口连接373端口的G端,同时ALE端口通过分频器连接到ADC0809的CLK端口。89C52的P2.7端口和/WR经过或非门连接到ADC0809的ALE和START端口,P2.7和/RD经过或非门连接到OE端口。ADC0809的EOC端口通过非门连接到89C52的/INTO端口。剩下的89C52端口都是标准的接法,用的11.0592MHZ,ADC0809的Vref(+)和VCC连接到+5V,Vref(-)和GND连接到地。
程序如下:
/* 从ADC0809的8个通道轮流采集一次数据,采集的结果放在数组ad中.其程序如下: */
#include  <absacc.h>  
#include  <reg51.h>  
#define uchar unsigned char
#define IN0 XBYTE[0x7ff8] //设置ADC0809的通道0地址
sbit ad_busy=P3^2;//EOC状态 
void ad0809(uchar idata *x)
{uchar i;
 uchar xdata *ad_adr;
 ad_adr=&IN0;
 for(i=0;i  <8;i++)//处理8个通道
 {*ad_adr=0;//启动转换
  i=i;//延时等待EOC变低
  i=i;
 while(ad_busy==0);//查询等待是否结束
 x[i]=*ad_adr;//存转换结果
 ad_adr++; ......

>>返回讨论的主题


  发表回复
用户名   *您没有注册?
密码   *
验证码   * .
标题   *
心情
随便说说    我回答你    最新发现    得意的笑   
气死我了    真是没劲    坚决同意    表示反对   
大家过来    好奇怪哟    懒得理它    大家小心   
文件上传
内容


字体:      字体大小:    颜色:
粗体 斜体 下划线 居中 超级连接 Email连接 图片 Flash图片 Shockwave文件 realplay视频文件 Media Player视频文件 QuickTime视频文件 引用 飞行字 移动字 发光字 阴影字 查看更多的心情图标 背景音乐
点击加入表情
                         
选项
有回复时用短消息通知您?

   




老古网执行:16毫秒 最大:4266毫秒 查询6次