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.

关于FPGA读写ADS1219的问题

Other Parts Discussed in Thread: ADS1219

TI工程师你好:

我最近在使用ads1219这款模数转换器,遇到一些问题,我是想通过FPGA来读取ADS1219的两路单端的模拟信号,在疑惑是读写流程和使用single-shot模式和continuous的区别,如果我是使用continuous模式,是不是我一开始只要把配置好的数据和START/SYNC写进去,就可以开始continuous转换了? 针对我这个读取单端两路模拟信号,我设计的I2C写读的流程内容如下。

I2C写过程

1.slave地址

2.WREG(40h)

3.configration(通道,增益设置)

4.RREG(用于DRDY状态查询)

5.START/START/SYNC

I2C读取

1.读取DRDY信号

2.根据DRDY有效,写入RREG,来读取每一端的数据

上面是我对ADS1219的读写过程,是先写入(上面的1~5)之后,再执行下面的读取操作(读取是根据DRDY有效进而写入RREG,来读取转换后的DATA的。

请问我这种读写流程是否存在问题呢?continuous模式是否可以读取单端两路模拟信号?还有就是写入的RREG是否可以理解为要读取的data处寄存器的地址?

  • 您好,
    ADS1219的I2C接口是符合标准I2C协议的。每一次读写都需要slave地址的。
    建议Master先通过I2C RESET 命令对ADS1219进行复位,已确保ADS1219上电后寄存器状态是默认状态。
    然后通过写寄存器命令WREG配置寄存器,需要配置的参数有输入接口MUX[2:0]、增益、基准电压、采样率、工作模式,为确保相应的参数已正确写入,最好再读出来判断一下。
    然后START/SYNC命令启动转换,循环检测DRDY信号是否低电平,为低则RDATA命令读取转换结果。
    检测DRDY信号有两种方法,一是中断的方式检测DRDY管脚低电平触发,一是读取寄存器状态判断。
    最后POWERDOWN命令停止转换。

    因为只有一路ADC,不能两路模拟信号同时转换,如果要采集两路模拟信号,可以来回切换输入接口MUX[2:0]。