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.

为什么ads1118依次读取两个通道的信号,读取出来的值是反的

Other Parts Discussed in Thread: ADS1118

当读取第一通道的时候得到的是第二通道的值 

读取第二通道的时候得到的是第一通道的值  开始怀疑硬件接反了     后来证明没反

还有两次切换通道的时间有限制么?

  • value3=ADS_Read(ADS_2048_CH0SG);

      OSTimeDly(10);


      value4=ADS_Read(ADS_2048_CH1SG);
      

     

    #define ADS_2048_CH0SG       0xc58a
    #define ADS_2048_CH1SG       0xd58a

  • Hi

       请用示波器测试一下DIN写入到ADS1118的值?(即SPI 写入的时序图)

  • 本次读的,应该是上次的转换结果。那么从你写的代码,似乎value3是想读AIN0的结果,value4是想读AIN1的结果。但是我个人理解,机器在执行那段代码的时候,可能理解成了读上次代码,同时把括号里的指令写进去。那么value3就是读上次结果(可能会读成AIN1),同时把CH0SG的命令写进去。那么下次读“AIN1”结果的时候,出来的就是AIN0。CH0SG和CH1SG的位置互换一下应该就可以了。同时也可以参考手册34页图44,45。