TI中文支持网
TI专业的中文技术问题搜集分享网站

使用ADS1x9x_ECG_Recorder_FW的问题

hi,我们在使用ads1292采集ecg的过程中,参考了TI提供的 ADS1x9x_ECG_Recorder_FW。其中,在滤波算法中有个地方不明白,麻烦解释下。

在 void ADS1x9x_Filtered_ECG(void) 这个函数中,有如下语句

ADS1x9x_ECG_Data_buf[1] = ADS1x9x_ECG_Data_buf[1] >> 4;   //为什么是向右移位4位,出于什么原因?
ADS1x9x_ECG_Data_buf[2] = ADS1x9x_ECG_Data_buf[2] >> 4;
ADS1x9x_ECG_Data_buf[1] &= 0xFFFF;
ADS1x9x_ECG_Data_buf[2] &= 0xFFFF;
ECGRawData[0] = (short)ADS1x9x_ECG_Data_buf[1];   //该变量存储24位数据,经过上述移位后,有效位变为20。在给滤波算法时,为什么不是给数据前16位,
ECGRawData[1] = (short)ADS1x9x_ECG_Data_buf[2];   //而是数据中间的16位?
ECG_ProcessCurrSample_ch0(&ECGRawData[0],&ECGFilteredData[0]);
ECG_ProcessCurrSample(&ECGRawData[1],&ECGFilteredData[1]);
QRS_Algorithm_Interface(ECGFilteredData[1]);

user151383853:

这是滤波的结果在前面的高 16 中. 如果想弄明白为何这样, 得看滤波算法了.

应用上先这样用就可以了, 以后有空去查一下源码

user5293077:

老铁,例程在哪找的,方便发给我一份吗?674181868@qq.com,谢谢了

赞(0)
未经允许不得转载:TI中文支持网 » 使用ADS1x9x_ECG_Recorder_FW的问题
分享到: 更多 (0)