基于SPCE061的心電檢測系統設計
摘要:針對人們對心臟疾病問(wèn)題的日益關(guān)注,介紹了一種新型心電檢測系統,它具有體積小,實(shí)用性強,價(jià)格低廉等特點(diǎn),特別適合家庭使用。同時(shí)為了解決與PC間的接口問(wèn)題,依據USB1.1規范,采用PHILIPS公司的PDIUSBD12接口芯片,大大提高了數據傳輸的速度。經(jīng)實(shí)驗檢測,系統運行穩定可靠。
本文引用地址:http://dyxdggzs.com/article/201610/311528.htm隨著(zhù)社會(huì )的進(jìn)步和科技的發(fā)展,人們對健康觀(guān)念、健康方式和途徑都發(fā)生著(zhù)深刻的變化。我國是心腦血管疾病的高發(fā)區,然而多數醫院的心電監護設備數量少、不宜移動(dòng)、且成本高,無(wú)法滿(mǎn)足市場(chǎng)的需求。為了滿(mǎn)足對心電監護設備的需求,降低醫療成本,需要一種與PC相結合的心電檢測系統。計算機與外設連接的總線(xiàn)接口由多種形式,其中PCI和ISA總線(xiàn)插拔麻煩,且擴展槽有限;RS232串行總線(xiàn)傳輸速度慢且與主機的串行口數目較少。近幾年USB總線(xiàn)接口異軍突起,它具有熱插拔、即插即用、系統擴展和配置方便,高效數據傳輸等顯著(zhù)優(yōu)點(diǎn),克服了傳統總線(xiàn)接口的缺陷,本文設計的心電監測系統也采用了這種方法。
1 硬件電路設計
1.1 硬件的總體結構
本文設計的心電檢測系統硬件總體結構圖如圖1所示,包括導聯(lián)電路,濾波放大電路,微控制器,Flash存儲器,電源變換電路和USB接口電路等幾部分組成。通過(guò)電極從人體采集到心電信號,經(jīng)導聯(lián)電路和濾波放大電路后進(jìn)入單片機的A /D,再經(jīng)單片機處理存儲到Flash,從而完成心電信號的采集。系統可以通過(guò)USB接口電路實(shí)現與PC機的通信,將存儲在Flash中的心電數據以文件格式轉存到PC機中,從而實(shí)現了數據的無(wú)限存儲功能,同時(shí)通過(guò)VC軟件編程可以在屏幕上顯示心電波形。電源變換電路中采用9V電池供電,體積小巧,易于便攜使用。

1.2 USB接口電路
本文使用的是Philips公司的PDI-USBD12。 PDI-USBD12是一款性?xún)r(jià)比很高的USB器件,完全符合USB1.1版的規范。它通常用作微控制器系統中實(shí)現與微控制器進(jìn)行通信的高速通用并行接口,并且支持本地的DMA傳輸。此外,PDIUSBD12還集成了許多特性,包括SoftConnetTM、GoodLinkTM、可編程時(shí)鐘輸出、低頻晶振和終止寄存器集合。所有這些特性都為系統節約了大量成本,同時(shí)使USB功能在外設上的應用變得容易。
圖2為USB接口電路,USB接口采用4線(xiàn)電纜,D+、D -兩根線(xiàn)是用于發(fā)送信號,VDD、GND二條線(xiàn),向設備提供電源。 PDIUSBD12的XTAL1和XTAL2引腳外接6M晶振。數據線(xiàn)和控制線(xiàn)分別與單片機的I /O口相連,通過(guò)SPCE061發(fā)送命令和數據從而控制USB接口芯片PDIUSBD12,實(shí)現數據的快速高效傳輸。

1.3 單片機系統
本文采用凌陽(yáng)公司推出的16位SPCE061單片機,該單片機具有較寬的電源電壓范圍(2.4~3.6V),CPU最大速度為49.125MHz,8道10位ADC(A /D的轉換速度最大為96kbps),片內2k的RAM,32k的Flash,32個(gè)I /O接口等特點(diǎn)。 Flash采用凌陽(yáng)公司512k*8位的SPR4096,工作電壓為2.25~2.75V,它與SPCE061具有很好的相互傳輸能力。
1.4 放大濾波電路
放大濾波電路如圖3所示,前置放大器采用ANALOG DEVICES公司的AD620,這是一款性?xún)r(jià)比很高的儀用放大器,輸入失調電壓最大為50uV,輸入失調漂移0.6uV每度,共膜抑制比120dB(G=10),且最大供電電流只有1.3mA。放大器采用低功耗低噪音的TLC2254,每通道供電電流35uA,噪聲為19nV /Hz(1kHz),非常適合便攜式設備。由于心電信號多在0.5~150Hz,所以需要進(jìn)行濾波,在TLC2254上加一個(gè)0.48~159Hz的帶通濾波器。對于工頻50Hz干擾,為了減少硬件設計,同時(shí)考慮降低功耗問(wèn)題,將采用軟件濾波方式,經(jīng)切比雪夫2次濾波和平滑濾波,效果較為理想。由于心電信號存在負值,而凌陽(yáng)單片機的A /D范圍為0~3。3V,所以必須對信號進(jìn)行抬壓。這里采用LM385 -1.2V精密基準電壓源,與信號相加,從而實(shí)現了信號所有點(diǎn)的取值為正。

2 系統軟件設計
心電檢測系統的軟件設計包括數據采集存儲程序設計和USB數據傳輸程序設計。
2.1 采集存儲程序設計
采集存儲程序設計如圖4所示,首先對單片機和Flash芯片初始化,設置系統時(shí)鐘、采樣頻率、引腳定義等。然后對每次采樣數據進(jìn)行濾波,由于前邊硬件設計中已經(jīng)設計了一個(gè)帶通濾波器,所以這里主要考慮去除50Hz工頻以及毛刺。采用切比雪夫I型2次濾波可以有效去除50Hz工頻而平滑濾波,并可以去除毛刺,公式如下:



考慮到使用切比雪夫濾波器產(chǎn)生的系數為小數,為利于計算,將其變換成整數,每部分系數均乘以4096,取整數部分,計算得到的結果再采用右移12位的方法得到最終結果。
圖5為心電信號處理前后對照圖,可以看出效果比較明顯。


2.2 USB數據傳輸程序設計
USB數據傳輸程序設計的目的就是使PDIUS-BD12在USB上達到最大傳輸速度。 PDIUSBD12的程序設計采用中斷驅動(dòng),當CPU處理前臺任務(wù)時(shí),USB的傳輸可在后臺進(jìn)行,這就確保了最佳的傳輸速率和更好的軟件結構。后臺中斷服務(wù)程序和前臺主程序循環(huán)之間的數據交換通過(guò)事件標志和數據緩沖區來(lái)實(shí)現。主機首先要發(fā)令牌包給PDIUSBD12,PDIUSBD12接收到令牌包后就給單片機發(fā)中斷,單片機進(jìn)入中斷服務(wù)程序,首先讀PDIUSBD12的中斷寄存器,判斷USB令牌包的類(lèi)型,然后執行相應的操作。
SPCE061單片機與PDIUSBD12的通信中,PDI-USBD12負責處理所有與USB總線(xiàn)事務(wù)有關(guān)的任務(wù),如總線(xiàn)喚醒、數據接收/發(fā)送、打包、CRC校驗等,但不負責解釋這些數據的意義;SPCE061負責處理數據、響應主機請求、以及控制PDIUSBD12的工作。主要是靠單片機給PDIUSBD12發(fā)命令和數據來(lái)實(shí)現的。SPCE061的中央處理單元(CPU)通過(guò)執行存儲在芯片固件里的指令集來(lái)控制PDIUSBD12的活動(dòng)。CPU支持一個(gè)包括用于移動(dòng)數據、執行數學(xué)和邏輯操作、程序分支等的機器語(yǔ)言指令的指令集。PDIUSBD12的命令字分為三種:初始化命令字、數據流命令字和通用命令字。 PDIUSBD12給出了各種命令的代碼和地址。單片機先給PDIUSBD12的命令地址發(fā)命令,根據不同命令的要求再發(fā)送或讀出不同的數據。因此,可以將每種命令做成函數,用函數實(shí)現各個(gè)命令,以后直接調用函數即可。
圖6為程序設計的層次框圖,其中D12CI.C、CHAP9.C和ISR.C可進(jìn)行固件接口的移植,EPPHAL.C和MAINLOOP.C需自行設計。在MAINLOOP.C中需要設計發(fā)送USB請求、讀測試Key、控制LED和和處理USB總線(xiàn)事件。在EPPHAL.C中需設計各I/O口對PDIUSBD12個(gè)引腳的控制與數據傳輸。

3 結語(yǔ)
基于USB總線(xiàn)的心電檢測系統的軟硬件設計及開(kāi)發(fā),充分體現了USB便捷、低成本、高抗干擾等特點(diǎn)。經(jīng)測試,工作穩定可靠,心電波形清晰,是一種較為理想的心電檢測系統。由于心電干擾的復雜性以及軟硬件設計中的限制,心電信號的消噪問(wèn)題還有待進(jìn)一步提高。
評論