1. 程式人生 > >ADS1292R有心電波形但是資料兩兩相同的原因及解決方法

ADS1292R有心電波形但是資料兩兩相同的原因及解決方法

鹹魚最近在使用ADS1292R採集心電,取樣率為250HZ,在電腦的繪製出心電圖,直接看心電圖沒有什麼問題,如下圖所示:

但是在分析資料的時候,發現頻域不正常。將心電資料複製到Excel表格之後,發現資料兩兩相同,心電波形放大之後發現也有鋸齒。如下圖所示:

但是資料多了之後鋸齒就不明顯,如下圖所示:

將取樣率提高為500Hz或者降低到125Hz,都是一樣的情況,所以這個和取樣率沒有關係。既然能出來波形(雖然這個波形不準,但確實是心電波形),那說明暫存器配置沒有問題。鹹魚就懷疑是讀取資料的時機問題,在程式中是通過ADS1292R的資料中斷進行讀取的,當ADS1292R資料準備好之後會通過DRDY引腳發出中斷訊號,主控檢測到中斷之後就通過SPI介面讀取資料。看了資料手冊,DRDY引腳在資料準備好之後會變為低電平,讀取資料則變為為高電平。資料手冊中的引腳說明及時序圖如下圖所示:

以上可以看出ADS1292R在取樣好資料之後,DRDY引腳是由高電平變為低電平的(下降沿),所以主控MCU在配置中斷觸發時要配置為下降沿觸發(FALLING),而在程式中設定的為上升沿觸發(RISING),所以會出現資料兩兩相同的現象。如下圖所示:

修改之後,在看一下波形和資料,如下圖所示:

複製心電波形資料到Excel中,發現數據沒有出現兩兩相同的情況,並且波形放大之後也很平滑,如下圖所示:

資料多了之後,心電波形更加平滑,如下圖所示:

以上就是資料兩兩相同的原因,如果遇到這種現象就檢查一下中斷是否配置為下降沿觸發

更多文章請關注微信公眾號:ubug404