/************
*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);
}
} |