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.

[参考译文] ADS1198:测试信号

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

https://e2e.ti.com/support/data-converters-group/data-converters/f/data-converters-forum/581842/ads1198-test-signal

部件号:ADS1198

您好,先生,

我已尝试生成与STM32集成的ADS1198的内部测试信号。 为了生成测试信号,使用通道1,增益=1,采样率250。所有其它通道均已关闭。 配置2寄存器设置为0x30。我得到的输出波是...


我知道测试样本的输出应该是方形脉冲,但我得到了这样的结果。如何解决这个问题?

我的SPI通信程序流如下所示:

  • ADS重置功能(在该功能组中,重置引脚低至高,芯片选择低)

  • ADS停止转换

  • ADS停止连续读取数据模式

  • 注册读写(我正在正确获取)

  • 发送启动操作码

  • 发送连续读取数据的操作码模式。

流程中是否有任何错误?

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

    x轴的单位是多少? 最大正代码应为0x7FFF = 3.2767万。 也许您没有正确解读数据。

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

    先生

    我是用样品数量来绘制的,而不是时间。 通过将2s补 码十六进制值移动 到3.2767万范围以上,可以获得绘制的y值。 我在C中编程它。在这种情况下,我组合 了通道数据(2字节),然后检查MSB位的正值或负值,然后通过相应地添加3.2767万来转换该值。 这是正确的方法吗?如果不正确,请解释方法。

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

    这不是将处理器中负二位补码值转换为铸造负值的正确方法。 请查看我的同事关于该主题的博客: e2e.ti.com/.../it-s-in-the-math-how-to-convert-adc-code-to-a-voltage-part-1

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

    先生

    感谢您的回放和链接,我已经浏览了它并对我的程序进行了更改。 我已经为我的ADS1198生成了测试信号,并按照说明绘制了该信号。config2寄存器设置为30h。 我正在附加波形。是否正确(关于振幅)。

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

    信号应以零为中心,振幅应在1 mV左右。 对于此设备,1 mV = 1e-3 V *(2^15-1)/ 2.4 V = 13.7 代码。 正代码应该大约为0x000E,负代码应该大约为0xFFF2。 这些可能会因偏移误差和噪音而略有不同。 这些是您从设备读取的值吗?

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

    海先生,

     我的正代码是0x000A,负代码是0xFFEF。我得到的是这些模式。我走错了哪里?我的图形不是围绕0。这是什么原因? 测试信号是内部生成的信号? 是否有任何关于主板的投诉?

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

    我想说这已经足够接近了。 0x00A对应于730 uv,0xFFEF对应于大约- 1.2 mV。 ADS1198中会有一些偏移,因此它不会完全围绕零。

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

    海先生

    正如我前面提到的,我可以绘制测试信号的图解,但当我尝试从模拟器绘制ECG信号时,我没有正确获取ECG图解。 所以我只想检查我的模拟器是否出错,或者是否是SPI通信的问题,是否有任何数据丢失。所以 如果可能的话,请以十六进制格式给我发送ADS1198的原始ECG数据。

    下面我共享十六进制值,只启用channel3。

    链接:https://drive.google.com/open?id=0B12gtKcFdNyVWVRXYlAwazl0cVE

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

    没有与ECG对应的准确数据输出-每个人的ECG都会略有不同。 我认为您正在从ADC中获得正确的二进制数据,因为测试信号数据与我的预期相符。 这排除了SPI问题。 现在,唯一的可能性是设计的模拟部分出现问题或软件问题。 您是唯一可以调试软件的人,但我可以查看您的原理图,看看我是否可以看到主板设计中的任何问题。 您能否在此处发布包括ADS1198在内的示意图部分的PDF?

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

    海先生,

    感谢您的回复。我所指的示例文件是关于来自ECG模拟器的数据,而不是真实的ECG值。正如您前面提到的,我可以绘制测试信号。 如果我的代码错误,如何 获得正确的值? 心电图信号的读取和绘图也使用相同的方法。我将连接电路原理图和DB15连接器电路,通过这些电路可以获得模拟器值作为输入和电源部分。 我无法准确找出问题所在,我很困惑,如果我能够绘制测试信号,为什么ECG信号没有得到?

    链接: https://drive.google.com/open?id=0B12gtKcFdNyVM0w3UUptZXJUQnM
    https://drive.google.com/open?id=0B12gtKcFdNyVZlppS2ZmNERXdWs

    https://drive.google.com/open?id=0B12gtKcFdNyVWUFSM1pIbmdjelE

    正在重新降级

    Silpa

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

    我无法从我的网络访问Google Drive。 您是否可以单击"使用丰富格式",然后将文件系统中的文件附加到您的帖子中?

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

    海先生

    很抱歉回复较晚,我要再次附加文件,请检查。以上回复中提供了说明。

    https://drive.google.com/open?id=0B12gtKcFdNyVZlppS2ZmNERXdWs

    https://drive.google.com/open?id=0B12gtKcFdNyVM0w3UUptZXJUQnM

     

    https://drive.google.com/open?id=0B12gtKcFdNyVWUFSM1pIbmdjelE

     

    此致

    Silpa

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

    请附加实际文件。 我无法访问我的网络上的Google Drive。 单击"使用丰富格式",然后单击曲别针图标,导航到文件系统中的文件位置,并将实际文件附加到帖子中。

    Brian