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.

[参考译文] ADS7142:ADS7142使用 I2C 读取数据

Guru**** 2535150 points
Other Parts Discussed in Thread: ADS7142

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1047015/ads7142-ads7142-use-i2c-to-read-data

器件型号:ADS7142

您好,μ A
使用ADC ADS7142透過I2C 讀取Buffer 內的資料,目前console 每次跑到1 /3就卡住,確認Console線功能是正常的。

以下是我的程式碼,請問ADC ADS7142读取数据寄存器有哪裡設錯嗎?或是其他原因造成Console 延迟 ?

I2C_Write (ADC1、0x1E、0x01);//对该寄存器的写入操作启动通道扫描序列。
I2C_READ (ADC1、0xFF);
printf ("ADC1 = 0x%02x%02x 0x%02x%02x 0x%02x 0x%02x%02x "、g_au8ADCbuf[0]、g_au8ADCbuf[1]、g_au8ADCbuf[2]、g_au8ADCbuf[3]、 G_au8ADCbuf[4]、g_au8ADCbuf[5]、g_au8ADCbuf[6]、g_au8ADCbuf[7]);
printf ("0x%02x%02x 0x%02x%02x 0x%02x 0x%02x%02x%02x\n"、g_au8ADCbuf[8]、g_au8ADCbuf[9]、g_au8ADCbuf[10]、g_au8ADCbuf[11]、 G_au8ADCbuf[12]、g_au8ADCbuf[13]、g_au8ADCbuf[14]、g_au8ADCbuf[15]);
I2C_Write (ADC1、0x1F、0x00);//对该寄存器的写操作会中止通道扫描序列。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!  

    很遗憾、我不理解您的问题、请您将其翻译成英文吗?

    从我收集的数据中、您似乎难以从 ADC 获取数据。 不过、我不确定您是指 ADC 测量数据还是寄存器内容。  

    要写入寄存器、您需要使用操作码。 若要读取或写入寄存 器、该帧将包含32个 SCLK 脉冲、数据包括器件地址、8位操作码、8位寄存器地址以及内容、数据表的图52将提供有关此内容的更多信息。 根据我收集的内容、您丢失了操作码。  

    此致、  

    Cynthia