为什么采集电压不正确

[复制链接]
查看3326 | 回复0 | 2015-8-5 14:39:50 | 显示全部楼层 |阅读模式
/************
*file name:tc0.c
*date :2015.08.01
************/

//        include head file
#include <sn8p2711b.h>
#define uint unsigned int


//        declare variable
int resi;

void initio()
{
        FP41M=0;//ADI as input
        P4UR=0x00;
        P4=0x01;//ADI,ADV,MN=0;
        P4CON=0x02;
}
//initial interrupt moudel
void initerr()
{
        FADCIEN=1;//enable T0 count interrupt;
        FGIE=1;
}
//interrupt program
void __interrupt[0x08] isr()
{
        P0=0x34;
        FADS=1;//start convert
}
void initadc(void)
{
        unsigned int i;
        FADENB = 1;                // 打开ADC电路
        i = 100;                // 延时 200us
        do
        {
                i--;
        }
        while(i);        //4+2 = 6T
        VREFH = 0x00;
        FADCKS0 = 0;                                // 时钟设置        16分频
        FADCKS1 = 1;                       
}
void GetAdcVal(int ch)
{
        ADM = 0xD0 + ch;
        while(FEOC==1);
        //resi  = (ADB<<2);
   // resi |= ((ADR>>2)&0x03);
      resi=ADB;
          FEOC=0;
}
void main()
{
        initio();
   // initerr();
        initadc();
        while(1)
        {
                _ClearWatchDogTimer();
                GetAdcVal(0x01);
        }
}
您需要登录后才可以回帖 登录 | 注册

本版积分规则