uint8_t AD7606_readConversionValue(u16 *data)
{
char i,j;
uint16_t count=0;
AD7606_CONAB_HIGH();
AD7606_CS_HIGH();
AD7606_RD_HIGH();
AD7606_reset();
i = AD7606_BUSY_STATE();
printf("1busy=%d\r\n",i);
AD7606_startConv();
i = AD7606_BUSY_STATE();
while(i!=1)
{
//printf("3busy=%d\r\n",i);
LED2(0);
i = AD7606_BUSY_STATE();
count++;
if(count==10000)
{
count=0;
return 1;
}
}
while(i)
{
printf("3busy=%d\r\n",i);
LED2(0);
i = AD7606_BUSY_STATE();
count++;
if(count==10000)
{
count=0;
return 1;
}
}
i = AD7606_BUSY_STATE();
printf("3busy=%d\r\n",i);
LED2(1);
AD7606_CS_LOW();
for(j=0;j<8;j++)
{
AD7606_RD_LOW();delay_us(1);
data[j]=AD7606_READ_DATA();
AD7606_RD_HIGH();delay_us(1);
}
AD7606_CS_HIGH();
for(j=0;j<8;j++)
{
printf("v%d:%x\r\n",j+1,data[j]);
}
return 0;
}
/************************************************
*************************************************/
void AD7606_reset(void)
{
AD7606_RST_LOW();
delay_us(1);
AD7606_RST_HIGH();
delay_us(1);
AD7606_RST_LOW();
delay_us(1);
}
/************************************************
*************************************************/
void AD7606_startConv(void)
{
AD7606_CONAB_LOW();
delay_us(1);
AD7606_CONAB_HIGH();
//delay_ns(100);
//delay_us(1);
}