This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

关于ADS8332的使用疑问

Other Parts Discussed in Thread: ADS8332

因为项目有12路模拟量需要转换,所以使用DG408DY进行单路选通到ADS8332进行AD转换,在调试过程中遇到几个问题:

ADS8332的寄存器配置为:0xE6FD

1 如果不间断读取12路数据,那么读出的码值不准确,如果适当的增加延时(至少1ms),那么读出的数据也比较准确;

   如果不间断只读取一路数据更接近实际值;

   这种现象是逐次逼近型AD的特点么?大概代码如下

    DG408DY_IO_Switch(0);//切换到第一路模拟量进行采样

    Delay_ms(1);

    u16 val[0] = ADS8332_ReadData(ADS8332_Channel_0);

   val[0] = ADS8332_ReadData(ADS8332_Channel_0);//如果不连续读取两次,则采样的数据是第上一模拟量即第十二路的数据

   

   DG408DY_IO_Switch(1);//切换到第二路模拟量进行采样

    Delay_ms(1);

   val[1] = ADS8332_ReadData(ADS8332_Channel_0);

    val[1] = ADS8332_ReadData(ADS8332_Channel_0);

    。。。。。

   

    DG408DY_IO_Switch(11);//切换到第十二路模拟量进行采样

    Delay_ms(1);

    val[11] = ADS8332_ReadData(ADS8332_Channel_0);

    val[11] = ADS8332_ReadData(ADS8332_Channel_0);

2  如果ADS8332的寄存器配置成自动模式即:0x8FD,那么要怎么读取转换值呢,因为是8个通道进行自动循环采样和转换的,那读取的时候 是不用发送通道选择数据的,那读取的数据怎么知道是0~8哪个通道的数据呢?Datasheet里好像没有介绍


3 有没有ADS8332的例程代码,自动模式和手动模式的