<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于MSP430心肺聽診技能訓(xùn)練系統(tǒng)設(shè)計方案

          基于MSP430心肺聽診技能訓(xùn)練系統(tǒng)設(shè)計方案

          作者: 時間:2012-04-21 來源:網(wǎng)絡(luò) 收藏

          2.2 語音播放

          語音播放是本系統(tǒng)一個重要組成功能之一。在這里有兩個問題需要解決,一個是語音數(shù)據(jù)的存儲,另一個是語音的編解碼和播放。由于WAV波形數(shù)據(jù)占用的空間較大,所以有必要先對原始數(shù)據(jù)進行壓縮編碼。因此該系統(tǒng)選用中青世紀科技公司開發(fā)的PM50智能語音芯片,它既是語音播放電路,也是智能單片機,其音質(zhì)水平,價格都要略優(yōu)于著名的ISD電路,同時也有21 kHz的高保真音質(zhì)。該芯片由專用的語音單片機和FLASH RAM存儲器集合構(gòu)成,它既有13~100 s的多段語音播放功能,也有單片機可編程的智能特性,該芯片具有如下特點:

          可存儲聲音長度:13~100 s;

          寬范圍工作電壓:DC 3~6 V;
          工作電流50 mA,靜態(tài)電流1μA;

          直接驅(qū)動8 Ω 0.5 W的喇叭,具備PWM和DAC兩種音頻輸出模式;

          寬范圍采樣頻率:4.8~21 kHz;

          錄制的語音可分并行1~8段和串行128段;

          自帶8個輸入端口,9個輸出端口,功能均可由用戶自定義;

          FLASH RAM結(jié)構(gòu),可以反復(fù)擦寫錄入,壽命在1萬次以上;

          兩種封裝形式:COB28和COB16;

          開發(fā)用的電腦軟件系超智能傻瓜圖形設(shè)計,外行也能使用;

          配合編程軟件可以開發(fā)出并行、串行、智能型等多種控制模式;

          最小系統(tǒng)的外圍電路只需一只振蕩電阻、一只電源濾波電容;

          有13 s/20 s/50 s/100 s多個時間檔次可選;

          完成開發(fā)和試驗生產(chǎn)后,直接用源文件投產(chǎn)掩膜,音質(zhì)效果、功能性能不變。

          2.3 多路模擬開關(guān)

          多路模擬開關(guān)主要是用來選擇播放位置點喇叭聲音的,因為PM50芯片只能連接一路揚聲器,所以只能通過多路模擬開關(guān)來選擇各路喇叭接通,而MAX306CPI芯片是十六位多路選擇開關(guān),可以將兩片芯片擴展起來形成32路選擇開關(guān),芯片電壓在4.5~30 V之間,功耗非常小,且不影響喇叭的發(fā)音,完全滿足要求。并且聽診器探頭可以輕易地觸動模型人皮下的專用位置,所以采用這種技術(shù)對本系統(tǒng)來說是一個很好的選擇。

          2.4 無線模塊的設(shè)計

          無線模塊的設(shè)計包括兩個部分:硬件設(shè)計和軟件設(shè)計。硬件設(shè)計主要包括PCB圖的布局走線和天線設(shè)計兩方面,軟件設(shè)計主要是通信協(xié)議的定義。

          無線模塊工作在ISM(Industrial Scientific Medical)超高頻段,因而對PCB板的布局提出了更高的要求。一般來說,外圍元件要盡可能靠近無線芯片,并且所有元件要盡可能排列在PCB板的同一側(cè),這樣可以在PCB板的另外一側(cè)進行大面積的敷銅以減少干擾。軟件方面,良好的通信協(xié)議也是無線模塊穩(wěn)定工作的重要保障之一。通信協(xié)議除了規(guī)定應(yīng)答關(guān)系之外,檢錯也是一個重要環(huán)節(jié)。目前比較常用的檢錯方法是循環(huán)冗余校驗(CRC校驗),其特征是信息字段和長度字段的長度可以任意選定。CRC碼集的選擇原則是:若設(shè)碼字長度為N,信息字段長度為K,校驗字段長度為R,其中N=K+R,則對于CRC碼集中的任一碼字,當且存在一個R次的多項式g(x),使得:

          R次的多項式g(x)

          式中:m(x)為K次信息多項式;r(x)為R-1次校驗多項式;g(x)為生成多項式。發(fā)送方通過生成g(x)來產(chǎn)生CRC碼字,接收方將接收到的碼字多項式與生成多項式g(x)相除,若能除盡,則說明接收正確。

          2.5 電源模塊

          在便攜式產(chǎn)品的設(shè)計中,為避免頻繁更換電池,延長產(chǎn)品的一次使用時間,低功耗設(shè)計一直是重中之重。電源模塊主要用于對電池組的管理,并給系統(tǒng)的其他模塊供電。電源橫塊主要用在遙控器上,用來供給遙控器各模塊正常工作。本系統(tǒng)采用的是兩節(jié)電池供電的方式,具有升降壓功能的DC/DC電源芯片。良好的電源模塊設(shè)計可以有效提高電池的利用效率,維持穩(wěn)定的電壓,減少電源紋波,增大輸出電流。

          2.6 低功耗設(shè)計

          由于本系統(tǒng)采用的是兩節(jié)干電池供電的方式,對系統(tǒng)功耗要求比較高。為了延長電池的使用壽命,避免頻繁地更換電池,在系統(tǒng)設(shè)計的各個環(huán)節(jié)都要考慮到低功耗的設(shè)計要求。低功耗設(shè)計就是要降低系統(tǒng)時鐘頻率、電源電壓以及門的活躍因素。從硬件方面來講,要降低系統(tǒng)的功耗,就要盡可能選擇低功耗的芯片,或者帶有休眠功能的芯片。軟件方面,可以采用間斷喚醒的工作方式。如果某個功能模塊工作的空閑時間較長時,可以暫時將其關(guān)閉或者使其處于低功耗狀態(tài),然后通過定時喚醒來檢測應(yīng)答信號,只有當接收到應(yīng)答信號時模塊才進入工作狀態(tài)。通過間斷喚醒的方式可以極大地降低系統(tǒng)的功耗。

          3 上位機教學(xué)軟件

          主控制器通過I/O口將模型人的位置信息傳到上位機,上位機根據(jù)收到的位置信號來控制上位機軟件界面的顯示,可以顯示聽診的位置、聲音特點、與呼吸的關(guān)系以及聲音的波形信息,另外還可以外接揚聲器放大播放所聽到的心肺聲音,達到醫(yī)學(xué)教學(xué)的目的。上位機界面的設(shè)計框圖如圖3所示。

          114.jpg

          4 結(jié)語

          系列單片機的迅速發(fā)展和應(yīng)用范圍的不斷擴大,主要取決于以下特點:強大的處理能力;采用了精簡指令集(RISC)結(jié)構(gòu);具有豐富的尋址方式;簡潔的27條內(nèi)核指令以及片內(nèi)數(shù)據(jù)存儲器都可以參加多重運算;高效的查表處理指令;較高的處理速度,在8 MHz晶體驅(qū)動下指令周期為125 ns。這些特點保證編制出高效率的源程序。另外系列單片機的中斷源較多,并且可以任意嵌套,使用時靈活方便。當系統(tǒng)處于省電的備用狀態(tài)時,用中斷請求將它喚醒只用6μs。

          本系統(tǒng)的優(yōu)點是由于系統(tǒng)利用超低功耗性能,因此設(shè)計具有很高的實用性和穩(wěn)定性,并且該芯片具有較高的運算速度,較大的RAM和FLASH空間,具有可擴展的I/O口,兼容一些外部芯片,調(diào)試方便等優(yōu)點。系統(tǒng)用普通聽診器去測試心肺音,更能逼真模仿真實的臨床環(huán)境,因而相關(guān)技術(shù)產(chǎn)品的研究和開發(fā),不僅對于提高現(xiàn)階段我國醫(yī)學(xué)模擬教學(xué)的水平具有重要的現(xiàn)實意義,同時也具有良好的市場前景。


          上一頁 1 2 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();