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.

[参考译文] ADC128S102:ADC128S102

Guru**** 1818760 points
Other Parts Discussed in Thread: TMS320F2808, ADC128S102
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/1369359/adc128s102-adc128s102

器件型号:ADC128S102
主题中讨论的其他器件:TMS320F2808

工具与软件:

您好!

我正在使用两个 ADC128S102 A/D 转换器对10个模拟通道进行采样。 这两个 ADC128S102芯片通过 SPI D 端口连接到 TMS320F2808 DSP。

DSP 使用两个 GPIO 来驱动 ADC128S102芯片的每个 CS 引脚-每个 ADC CS 线路一个 GPIO。

但是、每个 ADC128S102芯片的 SPI 时钟、MISO 和 MOSI 线路都合并到 DSP 的 SPI-D 线路中、即两个 ADC 的 SPI 时钟一起连接到 DSP 的 SPI-D 时钟线路、MOSI 和 MISO 线路也是如此。

我已按如下方式配置 SPI 线路:

1.每个 ADC128S102的 CS 线路都连接到 DSP 的一个引脚、该引脚配置为通用输出且启用内部上拉电阻。

2. SPI-D 时钟设置为10MHz。

3.用于 SPI-D MISO 和 MOSI 线路的 GPIO PUD 寄存器配置为启用内部上拉电阻。

4. SPI-D 波特率寄存器配置为16位字模式、以便整个12位 ADC 值响应可从 ADC 芯片计时并从 SPI-D RX 寄存器读取。

当我从 ADC128S102读取模拟通道 ADC 值时、我通过将其拉低来启用单个 ADC128S102芯片的片选择线路、然后进行 SPI 读取—即、当我读取一个 ADC128S102芯片时、另一个 ADC128S102芯片的 CS 线路被禁用(设置为数字状态高电平)。  

VA 上的 ADC 基准电压为3.3V。 VD 也是3.3V。

ADC 芯片、DSP 和模拟输入的 GND 是相同的。

以下是我的观察结果:

当我只从一个 ADC128S102芯片读取模拟通道、例如 IN0时、我只获得模拟信号实际 ADC 值的一半。 例如、如果 IN0模拟信号为2.361V、则 ADC 值为1464、此时应获得值2928。 我已经确认我的 DSP 代码正确、而这正是我读取 RX 寄存器时获得的值。  为什么会这样呢? 我缺少什么吗?

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

    尊敬的 Subramanian:

    您能否向我发送您所描述问题的逻辑捕获? 为此、您可以把一个已知电压馈送给它。 确保提供所需的电压、并使用万用表测量电压 VA。 根据我的判断、您的硬件实现似乎不错。 两个器件是否都发生了这种情况?

    此致!
    乔尔