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.

Cannot get the correct heart rate on ads1292 CH2 ECG

Other Parts Discussed in Thread: ADS1292

Hi all,

我使用TI的ADS1292 ECG芯片来检测心率, 当然是基于TI的EVM板来做的, 可是没法得到稳定的心率值, 心率值变化非常快, 范围是0~250。 但是, TI的EVM板是可以获得较稳定的心率值。因此, 最近在找原因,

1.  对比过CH2的状态寄存器为(0xc0), 与datasheet一致, 这表明samples是有效的。

2. 与TI的EVM板的寄存器配置Reg Map对比, 也是一致的(在此就不列出)。

3.  对比QRS算法, 用的算法是TI提供的代码, 未作任何改动。

不知是哪里的原因, 各位高人有什么高见?

另外, 本人用TI的CCS Studio V5.2.1.00018 来打开TI的demo 工程文件(ADS1x9x_ECG_Recorder_FW), 编译有很多错误,  如下:

"../SRC/ADS1x9x.c", line 527: error: identifier "UCB0STAT" is undefined

>> Compilation failure

"../SRC/ADS1x9x.c", line 527: error: identifier "UCBUSY" is undefined

"../SRC/ADS1x9x.c", line 530: error: identifier "UCB0RXBUF" is undefined

"../SRC/ADS1x9x.c", line 908: error: identifier "USCI_B0_VECTOR" is undefined

"../SRC/ADS1x9x.c", line 911: error: identifier "UCB0IV" is undefined

"../SRC/ADS1x9x.c", line 918: error: identifier "UCB0RXBUF" is undefined

"../SRC/ADS1x9x.c", line 922: error: identifier "UCB0IE" is undefined

"../SRC/ADS1x9x.c", line 922: error: identifier "UCRXIE" is undefined

"../SRC/ADS1x9x.c", line 928: error: identifier "UCB0TXBUF" is undefined

"../SRC/ADS1x9x.c", line 937: error: identifier "PORT1_VECTOR" is undefined

"../SRC/ADS1x9x.c", line 940: error: identifier "P1IFG" is undefined

"../SRC/ADS1x9x.c", line 940: error: identifier "BIT1" is undefined

"../SRC/ADS1x9x.c", line 943: error: identifier "UCB0RXBUF" is undefined

 

谁知道如何打开和编译这个DEMO project?

Thanks a lot

  • TI在Windows上面的ECG应用程序能够导出原始的(24bits/16bits )samples吗? 或者可以导入24/16 bits samples来计算心率及画心电图?

  • 你好。

    1这个工程是基于MSP430的,你需要在ccs里设置,包含处理的头文件,这个问题如果有疑问请在MSP430版求助

    2 你的工程里只有CH2工作不正常么?

  • 可以导出数据,在analysis scope里右键有导出选项可导出数据,并不能导入数据。

  • 这个CCS工程无法编译, 我不清楚你所指的CH2部分。 估计是没有include到相关的头文件。 我的项目的问题是测出来的心率一点也不稳定, 变化范围在0~250之间, 不停的大范围变化(如果是小范围变化的话, 或许正确)。 现在不知道是哪里出问题: 比如说是硬件还是软件。

    1. 从硬件来看, 是与EVM板一样, 也和TI的FAE讨论过。 采集到的原始24bit数据时, 查看过每个smaples时的状态寄存器都是0xC0, 这表明硬件采样时, 原始24bit数据是有效(但我们不知道在这一步如何证明是正确的)。

    2. 从软件来看, 寄存器配置与EVM板REG MAP也是一致。 算法不变, 只是用到算法里的DATA_STREAMING_STATE模式, 而不是recorder写到flash模式。

    3. 请问, scope导出来的数据是什么数据, 比如是经过1). IIR Filter - DC signal removal, 2). Multiband-pass Filter, 3). QRS Algorithm 还是其他处理过的数据?

    4. 请问, TI有原始的24bit心跳数据吗(至少1500个samples), 这样我们可以验证我们移植的ECG算法的正确性(尽管没有改动CODES, 但是我们是用IAR编译工具,非TI的CCS而已)。或者, TI有可以导入原始24bit心跳数据的ECG 的应用程序吗, 这样我们可以验证我们的硬件所采样到的samples正确与否。

    谢谢!

  • hi,linxzhang zhang .

    我现在遇到了和你一样的问题,不知道最后你解决了你的问题3么?

    3. 请问, scope导出来的数据是什么数据, 比如是经过1). IIR Filter - DC signal removal, 2). Multiband-pass Filter, 3). QRS Algorithm 还是其他处理过的数据?