基于USB傳輸之嵌入式生理量測系統(tǒng)之研制
圖 5-2 數(shù)位區(qū)塊配置示意圖
本系統(tǒng)采用型號為CY8C24794 之PSoC 晶片,經(jīng)由儀表放大器放大後之波形輸入至PSoC 內(nèi)部做訊號處理和轉(zhuǎn)換。波形先經(jīng)過低通濾波器(Low Pass Filter)將20Hz 以下之雜訊濾除,再通過高通濾波器(HighPass Filter)將180Hz 以上之雜訊濾除,由於會跨過電源頻率60Hz,因此還需要使用陷波器將其雜訊濾除。濾除過後之訊號再透過放大器(PGA)做二級放大。處理過後之波形訊號透過ADCINC(A/D 轉(zhuǎn)換模組)將類比訊號轉(zhuǎn)換成數(shù)位訊號。選用此顆PSoC 晶片主要之目的是為了運(yùn)用其USB 模組,透過USB 通訊協(xié)定設(shè)定,將心電訊號數(shù)據(jù)資料轉(zhuǎn)換成USB 封包格式,利用USB介面傳輸把數(shù)據(jù)資料傳送到系統(tǒng)平臺或儲存到儲存裝置。如圖6 所示為運(yùn)用USB 介面傳輸資料之示意圖。
圖6 運(yùn)用USB 介面傳輸資料之示意圖
第三部份 USB 介面?zhèn)鬏攨f(xié)定分析
應(yīng)用CY8C24794 晶片設(shè)計(jì)本系統(tǒng)之硬體架構(gòu),它提供了USB2.0 的傳輸速度。此顆IC 在USB 模組方面設(shè)計(jì)了USB Setup wizard 選單,使用者能新增移除選單上預(yù)設(shè)的描述元符號(Descriptor)、字串/語言特性(String/LANGID)和人機(jī)介面裝置回報(bào)描述符號 (HIDReport Descriptor),如圖7 所示為USB Setup wizard 設(shè)計(jì)介面。
圖 7 USB Setup wizard 設(shè)計(jì)介面
USB 的傳輸方式可分為:控制、中斷、等時和巨量等四種不同傳輸型態(tài)。資料傳輸可細(xì)分三大交易階層:設(shè)置(Setup)、資料(Data)、狀態(tài)(State) 等。每個階層可分類成三種封包型態(tài):執(zhí)照(Token)、資料(Data)、交握(Handshake)等。如圖8 所示為USB 資料傳輸之樹狀結(jié)構(gòu)。在自制板與主機(jī)端之間的傳輸中,當(dāng)主機(jī)在設(shè)置階層時,是以控制傳輸方式來達(dá)成。當(dāng)主機(jī)與裝置在進(jìn)行資料交易時,是以中斷傳輸方式來達(dá)成。
圖 8 USB 資料傳輸之樹狀結(jié)構(gòu)
如圖9 所示,USB 資料傳輸型式是由主機(jī)端與裝置端之間相互溝通,當(dāng)裝置(Device)連接主機(jī) (Host)時,主機(jī)會先以預(yù)設(shè)位址0 (Addr )和端點(diǎn)0 (EP)向裝置詢問其為何種描述字元、裝置型態(tài)和重新設(shè)定新的傳送位址和端點(diǎn),往後的資料傳送都依據(jù)新的位址和端點(diǎn)來發(fā)送。確定好位址後,裝置會將其列舉資訊與HID 報(bào)告回報(bào)給主機(jī)端,當(dāng)雙方在傳輸協(xié)定上達(dá)成協(xié)議時,資料才能開始進(jìn)行傳送的動作。
圖 9 裝置連結(jié)主機(jī)相互溝通之方塊圖
主機(jī)端(PC、系統(tǒng)平臺)傳送訊息至裝置端(自制板)是透過位址3 和端點(diǎn)4 來傳輸和要求資料。裝置端是透過位址3 和端點(diǎn)3 來向主機(jī)傳輸和要求資料。我們設(shè)置訊框輪詢時間(Interval)時間為5msec,而所量測的心電訊號經(jīng)由PSoC 轉(zhuǎn)換成USB 封包格式傳送,每次傳送2Bytes 心電訊號資料。心電訊號的取樣率為240(sps):每一秒取樣240 個取樣點(diǎn)。
三、系統(tǒng)平臺
本文中的系統(tǒng)架構(gòu)是以EDUKIT III Embest ARM開發(fā)平臺為基礎(chǔ)架構(gòu),再基礎(chǔ)架構(gòu)上整合開發(fā)心電圖訊號量測系統(tǒng)。系統(tǒng)核心為S3C2410X ARM920T,在程式設(shè)計(jì)方面以Embedded Linux 來開發(fā)程式。然而如果要將心電圖量測裝置掛載至系統(tǒng)平臺,需要撰寫適合硬體裝置之驅(qū)動程式才得以驅(qū)動運(yùn)作。嵌入式Linux 下之設(shè)備驅(qū)動程式,是介於作業(yè)系統(tǒng)核心和硬體之間的介面,從應(yīng)用程式層面來看硬體設(shè)備,其就像是一個設(shè)備檔案,應(yīng)用程式如要針對設(shè)備檔案進(jìn)行操作,只要像一般檔案一樣的操作方式即可達(dá)到讀寫和控制之目的。
圖 10 驅(qū)動程式設(shè)計(jì)之流程
如圖10 所示,當(dāng)裝置掛載至系統(tǒng)平臺時,其設(shè)計(jì)流程可分為以下幾個步驟:(1)透過Insmod 指令將kernel module 載入到kernel 的address space(2)對裝置做初始化的動作(3)裝置向主機(jī)注冊成為裝置節(jié)點(diǎn)(4)應(yīng)用程式可透過驅(qū)動程式所提供的入口點(diǎn)(open、read、write、 close、ioctl)詢問主機(jī)是否可讀取資料或裝置是否可寫入資料(5)裝置向主機(jī)取消注冊(6)清除裝置(7)透過rmmod 指令卸載核心模組。以上說明為驅(qū)動程式設(shè)計(jì)之流程。
四、系統(tǒng)架構(gòu)整合
如圖11 為本論文之系統(tǒng)架構(gòu)之整合。
如圖11 系統(tǒng)架構(gòu)整合圖
實(shí)驗(yàn)結(jié)果
心電圖訊號透過感測元件的擷取,再經(jīng)由硬體裝置的訊號轉(zhuǎn)換,利用USB 介面?zhèn)鬏斢嵦栔岭娔XPC 上顯示。如圖12 所示為量測到的心電圖訊號。
圖 12 心電圖訊號呈現(xiàn)
PQRST 特性說明:
P 波:心房去極化。QRS 波前會出現(xiàn),P-P 心房之速率。
PR 區(qū)間:從心房去極化傳到心室去極化。
QRS 波:心室的去極化。
ST 區(qū)間 (代表時間):從QRS 的末端至T 波的開始。
T 波:心室的再極化。
QT 區(qū)間(代表時間):從QRS 的開始至T 波的結(jié)束。
所量測之心電訊號能夠在行動平臺上呈現(xiàn)其結(jié)果,如圖13(a)是連接到PC 端接收的軟體執(zhí)行結(jié)果,圖13(b)是連接到嵌入式平臺上應(yīng)用軟體執(zhí)行結(jié)果。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論