导航: 老古网老古论坛XMOS公共讨论区XMOS开源项目区单片机程序设计嵌入式系统广告区域
→发表看法:[guest]关于MSC1210的ADC问题?



No.30232
作者:guest
邮件:guest@guest.com
ID:6
登陆:16560次
文章数:7648篇
最后登陆IP:219.68.9.43
最后登陆:2005/5/20 1:37:44
注册:2003/3/10 16:21:00
财富:35062
发帖时间:2003/5/14 16:44:08
发贴者IP:218.12.255.17
标题:guest:关于MSC1210的ADC问题?
摘要:No.30232关于MSC1210的ADC问题? 我参照着示例对MSC1210的ADC编写了驱动,但是只有温度的转换还算正常(维持在20度左右,室内温度)。但是当我把这个程序的ADMUX换成AIN0时,输出的结果就不正确了,无论我连地还是3V电源,输出结果都是4.999XXXXX,后三位起变化。对于数据的处理,我是读10遍寄存器的值后(每遍都乘系数5/2^24),再将平均值除10,的出的结果显示出来。
是否我的初始化有问题?请各位帮忙!
程序如下:

#include   <REG1210.H>  
#include   <stdio.h>  
#include   <stdlib.h>  //此库不知有何作用?
#include   <math.h>  
#define BYTE unsigned char
#define WORD unsigned int
#define LSB 298.0232e-9//基数LSB = 5.0/2^24

void UARcon(void) //配置串口,11.0592,19200

TR1=0;
TH1=0xfd;
TL1=0xfd;
SCON0=0x52;
TMOD=0x20;
PCON=0x80;
TR1=1;
}

long read(void)//读ADRES寄存器,返回该值。
{
long g_inbuf;
g_inbuf=ADRESH;
g_inbuf=g_inbuf  <  <8; 
g_inbuf=g_inbuf+ADRESM;
g_inbuf=g_inbuf  <  <8; 
g_inbuf=g_inbuf+ADRESL;
return(g_inbuf);
}
/* MAIN PROGRAM */
void  ......

>>返回讨论的主题



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


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

   




老古网执行:15毫秒 最大:7276毫秒 查询6次