久久ER99热精品一区二区-久久精品99国产精品日本-久久精品免费一区二区三区-久久综合九色综合欧美狠狠

新聞中心

EEPW首頁 > 醫療電子 > 設計應用 > 一種基于AVR單片機的便攜式無線醫療點滴監控系統

一種基于AVR單片機的便攜式無線醫療點滴監控系統

作者: 時間:2014-09-11 來源:網絡 收藏

  3 系統軟件結構

本文引用地址:http://cqxgywz.com/article/262821.htm

  (1) 數據幀結構

  定義一個通信數據幀結構來管理控制端與設備間的通信,通過對數據幀的解析,主/從設備可以高效率地完成數據處理。按照通信傳輸的先后順序,數據幀的格式為:命令(1字節)+設備ID(1字節)+事件類型(1字節)+數據域長度(1字節)+數據域(n字節)+校驗和(2字節)。

  (2) μC/OSII的移植

  μC/OSII是一種開源、結構可裁剪的可剝奪實時內核的RTOS,其大部分代碼都是C語言,可移植性較強,已在多種系列的CPU上進行了移植。 Studio 5內部集成了Software Framework軟件包,包含 MCU接口驅動函數,在 Studio 5環境下,移植μC/OSII到AT32UC3A0512 MCU上,需要在Micrium官方移植實例中進行以下修改:

  ① 修改exception.S文件中的內容,修改如下:

  _handle_Supervisor_Call:

  lddpcpc,__OSCtxSw

  __OSCtxSw:。

  longOSCtxSw

  ② 修改cpu.h內容如下:

  #define CPU_CRITICAL_ENTER()

  {cpu_sr = CPU_SR_Save();}

  #define CPU_CRITICAL_EXIT()

  {CPU_SR_Restore(cpu_sr);}

  #define CPU_SR_Save()cpu_irq_save()

  #define CPU_SR_Restore(cpu_sr)

  cpu_irq_restore(cpu_sr)

  #define CPU_IntDis()Enable_global_interrupt()

  #define CPU_IntEn()Disable_global_interrupt()

  #define CPU_ExceptDis()Disable_global_exception()

  #define CPU_ExceptEn()Enable_global_exception()

  #define CPU_Reset()Reset_CPU()

  

 

  圖6 主控制端的軟件結構圖

  (3) 控制器部分軟件設計

  在μC/OSII系統下的軟件結構如圖6所示。

  主控制端主要通過LCD界面來完成用戶的操作,5個觸摸鍵為界面操作按鍵,數字鍵盤用軟件實現。通過數字鍵盤輸入要查詢的病房號,確認后即可查詢到該病房中點滴的速度、余量等狀態。

  界面菜單的切換關系通過定義一個結構體來實現,結構體定義為:

  typedef struct MenuItem{

  U8 MenuNum;//當層菜單項目數

  U8 *DispStr; //顯示字符串

  struct MenuItem *ChildrenMenus;//子菜單節點

  struct MenuItem *ParentMenus; //父菜單節點

  } Menu;

  (4) 終端監控部分軟件設計

  終端接收到控制端發來的命令數據包,解析出命令,實施相應的處理,并將數據處理后打包發送給控制端。終端控制部分的軟件流程如圖7所示。

  

 

  圖7 終端主程序

  結語

  基于32MCU和μC/OSII的嵌入式系統,利用無線通信方式實現遠程在線監控,無線網絡的組建增強了系統的可移動性。本文提出的一種基于AVR32的便攜式點滴監控系統的設計,將醫療點滴監控裝置小型化,近距離范圍內系統穩定。由于資源有限,關于遠距離控制的網絡組建還在進一步探索。


上一頁 1 2 下一頁

評論


相關推薦

技術專區

關閉