咸鱼最近在使用ADS1292R采集心电,采样率为250HZ,在电脑的绘制出心电图,直接看心电图没有什么问题,如下图所示:
但是在分析数据的时候,发现频域不正常。将心电数据复制到Excel表格之后,发现数据两两相同,心电波形放大之后发现也有锯齿。如下图所示:
但是数据多了之后锯齿就不明显,如下图所示:
将采样率提高为500Hz或者降低到125Hz,都是一样的情况,所以这个和采样率没有关系。既然能出来波形(虽然这个波形不准,但确实是心电波形),那说明寄存器配置没有问题。咸鱼就怀疑是读取数据的时机问题,在程序中是通过ADS1292R的数据中断进行读取的,当ADS1292R数据准备好之后会通过DRDY引脚发出中断信号,主控检测到中断之后就通过SPI接口读取数据。看了数据手册,DRDY引脚在数据准备好之后会变为低电平,读取数据则变为为高电平。数据手册中的引脚说明及时序图如下图所示:
以上可以看出ADS1292R在采样好数据之后,DRDY引脚是由高电平变为低电平的(下降沿),所以主控MCU在配置中断触发时要配置为下降沿触发(FALLING),而在程序中设置的为上升沿触发(RISING),所以会出现数据两两相同的现象。如下图所示:
修改之后,在看一下波形和数据,如下图所示:
复制心电波形数据到Excel中,发现数据没有出现两两相同的情况,并且波形放大之后也很平滑,如下图所示:
数据多了之后,心电波形更加平滑,如下图所示:
以上就是数据两两相同的原因,如果遇到这种现象就检查一下中断是否配置为下降沿触发。
----------------------------- End -------------------------------