[求助]max1112
我对max1112的测试程序,只对0通道进行转换,外部时钟,16 Clocks/Conversion Timing,可是没有转换结果,请求各位大虾指教。
uchar SETUP(uchar i) /*设置控制字节*/
{
uchar TB1=0x8f; /*10001111*/
i=i < <4;
TB1=TB1|i; /*选择转换通道*/
return(TB1);
}
/*Transmit control byte and receive the conversation byte*/
uchar transrec(uchar a)
{
uchar i=0,j=0x80;
uchar TB,RB;
for(i=0;i <8;i++)
{
TB=a&(j> > i);
SCLK=0;
_Nop();
_Nop();
_Nop();
if(TB==0)DIN=0;
else DIN=1;
_Nop();
SCLK=1;
_Nop();
_Nop();
_Nop();
if(DOUT==0)RB=RB|0x00;
else RB=RB|(j> > i);
SCLK=0;
_Nop();
}
return(RB);
}
void ADC1(void)
{
uchar TB1,TB2,TB3,RB1,RB2,RB3;
TB1=SETUP(0);
CS2=0;
RB1=transrec(TB1);
TB2=0x00;
RB2=transrec(TB2);
TB3=0x00;
RB3=transrec(TB3);
CS2=1;
ad1[0]=(RB2 < <2)|(RB3> > 6);
}
发表时间:2003年7月3日16:27:08