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

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動化 > 設(shè)計應(yīng)用 > MIPS架構(gòu)的醫(yī)院智能導(dǎo)診系統(tǒng)設(shè)計

          MIPS架構(gòu)的醫(yī)院智能導(dǎo)診系統(tǒng)設(shè)計

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


          2 基于嵌入式Linux和MiniGUI的主控程序
          2.1 嵌入式Linux
          Linux是一個完全免費的開源操作,內(nèi)核可以被裁剪到134 KB左右。Linux是一個能夠適應(yīng)多種CPU和硬件平臺的操作,裁剪之后的Linux用于這些設(shè)備中執(zhí)行資源管理、任務(wù)調(diào)度、存儲空間分配等任務(wù)。嵌入式應(yīng)用系統(tǒng)的開發(fā)一般可以分為如下幾個步驟:交叉編譯工具的建立,Bootloader的編譯和燒寫,編譯內(nèi)核并移植到開發(fā)板,文件系統(tǒng)的編譯和燒寫。交叉編譯是嵌入式系統(tǒng)開發(fā)中需要用到的一個常見技術(shù),其主要特征是嵌入式設(shè)備上的可執(zhí)行程序通常是在另外一臺機器上編譯生成的。通常將前者稱為目標機器(Target),后者稱為主機(Host)。主機擁有的資源豐富很適合在上面編譯機器相關(guān)的代碼,這種技術(shù)為軟件的不同平臺移植創(chuàng)造了便利條件。交叉編譯工具配置在主機(Host)上編譯及配置環(huán)境變量后,就可以用來編譯Bootloader、內(nèi)核和文件系統(tǒng)。Bootloader是一個啟動加載Linux內(nèi)核的固件程序,有點類似于PC機的BIOS程序,在完成硬件初始化以及內(nèi)存映射等操作之后,通常會將外部存儲介質(zhì)上存放的內(nèi)核鏡像加載到RAM中,然后跳轉(zhuǎn)到指定的內(nèi)存位置執(zhí)行。
          2.2 MiniGUI用戶界面
          GUI(Graphical User Interface)是指采用圖形方式顯示的計算機操作用戶界面。系統(tǒng)中所要闡述的高清播放機上需要提供人機交互界面,控制諸如視頻的暫停、播放、文件更新以及播放機的聲音控制和開關(guān)機控制等圖形界面。系統(tǒng)中使用的圖形用戶界面采用的是MiniGUI。MiniGUI是一個跨平臺的面向嵌入式系統(tǒng)的輕量級圖形用戶界面支持系統(tǒng),可在Linux/μClinux、eCos、μC/OS-II、VxWorks、pSOS、ThreadX等操作系統(tǒng)以及Win32平臺上運行,廣泛應(yīng)用于手持信息終端、機頂盒、工業(yè)控制系統(tǒng)、便攜式多媒體播放器機等產(chǎn)品和領(lǐng)域。

          3 播放機軟件系統(tǒng)
          3.1 系統(tǒng)的軟件
          SMP8654為應(yīng)用開發(fā)提供分層服務(wù),軟件系統(tǒng)主要根據(jù)SMP8654分層服務(wù)模型,找出最優(yōu)化的方案。通過研究DCC的控制邏輯,及Sigma公司的SDK文檔,設(shè)計出了如圖2所示的SMP8654高清播放機的軟件系統(tǒng)。智能導(dǎo)診系統(tǒng)首先對硬件平臺初始化,接著初始化有線或者無線網(wǎng)絡(luò)(這部分主要作用是網(wǎng)絡(luò)接口卡初始化操作,日志部分初始化是跟蹤和調(diào)試應(yīng)用程序的重要組成部分);接著創(chuàng)建MiniGUI主窗口,最后進入消息循環(huán)。

          本文引用地址:http://www.ex-cimer.com/article/160634.htm

          b.jpg


          當MiniGUI接收到MSG_CLOSE消息時,由HWNDDESKTOP向主窗口發(fā)送退出消息,至此程序結(jié)束,播放機被關(guān)閉;當播放機接收到圖片顯示命令時,將命令消息存入到消息隊列中,這里要創(chuàng)建消息隊列是因為MiniGUI在接收到用戶的各種不同命令時,都會將命令解析并且存入到任務(wù)隊列中,由任務(wù)派發(fā)器將任務(wù)發(fā)送到不同模塊處理。MiniGUI的主程序會根據(jù)用戶選擇的視頻及音頻文件,選擇將消息發(fā)送到視頻解碼進程處理,當用戶選擇打開某個高清的圖片時,消息隊列中會保留圖片大小、圖片格式、圖片的顯示時間等控制信息。這里要使用任務(wù)隊列的原因其實很簡單,分離出播放器的一個個任務(wù),讓不同的軟件服務(wù)模塊處理。如果要播放視頻,調(diào)度程序會將任務(wù)隊列中的視頻播放任務(wù)派發(fā)給視頻解碼進程處理。如果要使用GFX引擎高效率繪制圖片,則任務(wù)被分派到高清圖片處理進程處理。
          智能導(dǎo)診系統(tǒng)服務(wù)進程主要負責從HIS信息系統(tǒng)的接口函數(shù)中獲得當前病人的掛號信息,并且通過TCP發(fā)送到高清播放機上,最后通過MiniGUI的Draw Text函數(shù)將相關(guān)病人信息以列表的方式顯示在預(yù)先定義的排隊隊列中。這里的視頻解碼進程是獨立的進程,主控程序和此進程的通信是通過Linux的消息隊列機制實現(xiàn)的。消息隊列是一種內(nèi)核標示,兩個進程之間的交互是通過調(diào)用msgsnd和msgrecv這樣的函數(shù)實現(xiàn)的,只要兩個進程的消息隊列標識是一致的,進程之間就可以交互。當MiniGUI接收到退出消息時,會向視頻解碼進程發(fā)送退出消息,讓視頻解碼進程清空所占用的系統(tǒng)資源。

          光耦相關(guān)文章:光耦原理


          萬用表相關(guān)文章:萬用表怎么用


          dc相關(guān)文章:dc是什么


          手機電池相關(guān)文章:手機電池修復(fù)


          c語言相關(guān)文章:c語言教程


          linux相關(guān)文章:linux教程


          c++相關(guān)文章:c++教程




          評論


          相關(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); })();