打印
[其它应用]

一般情况下AD采集不到数据怎么回事啊

[复制链接]
1544|18
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
langgq|  楼主 | 2018-2-9 19:56 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一般情况下AD采集不到数据怎么回事啊
沙发
wangzsa| | 2018-2-9 19:59 | 只看该作者

具体看情况啊,你得程序呢

使用特权

评论回复
板凳
langgq|  楼主 | 2018-2-11 10:57 | 只看该作者

#include <SH79F6488.H>
#include"periphral.h"
ulong data ADC_Data;

unsigned long data ADCData;
uchar data Temp;
unsigned long data ADvalue;
void ad_init(void)
{
           REGCON=0x01;        //2.7V
        //ADCON=0x80;                //AN2-AIN0   基准电压vref1,和VDDR同源
        //ADCON=0xa0;                //AN2-AIN0   基准电压vref2=1.19        ,和VDDR不同源
        ADCON=0xC4;                //AN0单端输入,VREF=2.7
        //ADCON=0x85;                //AN1单端输入,VREF=2.7
        //ADCON=0x86;                //AN2单端输入,VREF=2.7
        //ADCON=0x87;                //AN3单端输入,VREF=2.7
        //ADCON=0x80;                //差分输入AIN0+和AIN0-
        //ADCON=0x87;                //差分输入AIN1+和AIN1-
        //ADCON=0x87;                //差分输入AIN2+和AIN2-

        

        //ADT=0xFC;                //ADC=XXXHz@12MHz
    //ADT=0xFD;                //ADC=500Hz@12MHz
        //ADT=0xFB;                //ADC=300Hz@12MHz
        //ADT=0xF9;                //ADC=214Hz@12MHz
    ADT=0xF1;                //ADC=100Hz@12MHz
        //ADT=0xE2;                //ADC=50Hz@12MHz  
        //ADT=0xA0;                //ADC=10Hz@12MHz
        //ADCH=0x3F;          //VREF=0.15*VDDR,AIN0
        //ADCH=0x7F;          //VREF=0.22*VDDR,AIN0
        //ADCH=0xBF;          //VREF=0.3*VDDR,AIN0
        ADCH=0xFF;          //VREF=0.4*VDDR,AIN0
        //ADCDS=0x03;            //VINOS=1,ADCDF=1
          PGAM=0x04;            //PGA Gain=1,chop=1K
        //PGAM=0x14;            //PGA Gain=2,chop=1K
        //PGAM=0x24;            //PGA Gain=4,chop=1K
        //PGAM=0x64;            //PGA Gain=8,chop=1K
        //PGAM=0x84;            //PGA Gain=16,chop=1K
        //PGAM=0x94;        //PGA Gain=32,chop=1K
    //PGAM=0xA4;        //PGA Gain=64,chop=1K
        //PGAM=0xE4;        //PGA Gain=128,chop=1K  


        
}

unsigned long ScanADCData(void)
{


        while(1)
        {
                Temp=ADCON&0x40;
                if(Temp==0x40)break;
        }
        ADCON&=0xBF;
        
        ADCData=ADDH;
        ADCData=ADCData*256;
        ADCData=ADCData+ADDM;
        ADCData=ADCData*16;
        ADCData=ADCData+ADDL;

        return ADCData;
}

void main()
{

   ad_init();
   {
      ADvalue=ScanADCData();
   }
}

使用特权

评论回复
地板
zhuww| | 2018-2-11 11:00 | 只看该作者

ADCH的第5位设置为1,表示P1.0作为外部参考电压输入口,而ADCON选择了内部参考电压,有些冲突。

使用特权

评论回复
5
lium| | 2018-2-11 11:03 | 只看该作者

ADCON是控制位,应该在选择好了通道等设置后再设置第7位启用AD功能。请再试试!

使用特权

评论回复
6
guoyt| | 2018-2-11 11:05 | 只看该作者
手册上写的:选择内部基准电压,VREFOS需置1。

使用特权

评论回复
7
langgq|  楼主 | 2018-2-11 11:10 | 只看该作者

是啊,我也说啊

使用特权

评论回复
8
hanwe| | 2018-2-11 11:13 | 只看该作者
那就不知道了。。。

使用特权

评论回复
9
yufe| | 2018-2-11 11:19 | 只看该作者

你的ADC问题搞定了吗

使用特权

评论回复
10
langgq|  楼主 | 2018-2-11 11:22 | 只看该作者

算了,明天再说吧,先结贴了

使用特权

评论回复
11
zhuww| | 2018-2-12 09:43 | 只看该作者

直接看看datasheet不就行了

使用特权

评论回复
12
yufe| | 2018-2-12 09:47 | 只看该作者
想简单比较一下

使用特权

评论回复
13
zhanglli| | 2018-2-12 09:51 | 只看该作者

方便灵活的应用工具 :JET51与KeilC的无缝连接(在线调试) ,大批量烧写工具Pro-06(一拖四),个性化下载方式(ISP) ,低成本、可在线调试、可脱机烧写、可设置烧写次数的S-Lab

使用特权

评论回复
14
zhanglli| | 2018-2-12 09:54 | 只看该作者
高集成度,真正意义的SOC :串口X 2;比较器X 2 ,10Bit高精度ADC X 8 ,8Bit PWM X 3 ,内置EEPROM X 1K

使用特权

评论回复
15
lium| | 2018-2-12 09:58 | 只看该作者

88/89是前年推出来的吧,你可以直接百度搜中颖,一般能了解的都有

使用特权

评论回复
16
guoyt| | 2018-2-12 10:01 | 只看该作者

还不错 我用下来 发现isp很快. jtag下载也非常好. 抗干扰能力很强的.

使用特权

评论回复
17
hanwe| | 2018-2-12 10:05 | 只看该作者

高集成度,抗干扰能力强

使用特权

评论回复
18
yufe| | 2018-2-12 10:08 | 只看该作者

结贴了,多谢大家讨论这么多哈,呵呵

使用特权

评论回复
19
yufe| | 2018-2-12 10:20 | 只看该作者

结贴了,多谢大家讨论这么多哈,呵呵

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

932

主题

8762

帖子

1

粉丝