心電信號的幅度約為0~4 mV,STM32 AD轉換的輸入電平要求為3.3 V,因此,為了單片機能夠處理采集到心電信號,需將采集到的模擬信號放大800~1 000倍。前置放大電路已放大了10倍,理論上主放大電路約放大100倍即可。為確保信號不失真,一般單級放大不超過10倍,因此,可采取兩級放大的方式來達到放大100倍的效果,U9固定放大10倍,U11的反饋電阻采用可調電阻,這樣就可以通過變阻器的調節達到放大100的效果。此外,因為STM32單片機的A/D采集不能采集負電平,因此這里設計了如U7所示的電平抬升電路把心電信號提到0電平以上,方便單片機采集。
3 軟件設計
得到心電信號后要輸入STM32進行AD采集和軟件濾波,最終送LCD實現波形顯示,單片機初始化后,程序設計定時器每6 ms中斷一次,在中斷函數里,對讀取到的A/D值采取均值濾波的形式濾除干擾,然后把之轉換與彩屏對應的坐標值,在彩屏上畫線實現波形的實時顯示,整個系統的程序流程如圖7所示。
4 測試結果分析
通過電極片和三導聯線在人的左臂,右臂,右腿部采集心電信號經前端模擬電路和STM32處理后,最后在示波器和彩屏上得到的心電信號如圖8所示。
從彩屏和示波器上所得的心電圖來看,50 Hz工頻信號和基線漂移得到了較好的抑制,從示波器上可看出,相鄰兩個波峰之間的時間大約為900 ms,這與真實的心電信號基本吻合,圖像清晰穩定,能夠較好地反映人體心電特征。
5 結束語
本設計實現的是以STM32為控制核心,以AD620,OP07為模擬信號采集端的小型心電采集儀,該設計所測心電波形基本正常,噪聲干擾得到有效抑制,電路性能穩定,基本滿足家居監護以及病理分析的要求,整個系統設計簡單,成本低廉,具有一定的醫用價值。
評論
查看更多