a一级爱做片免费观看欧美,久久国产一区二区,日本一二三区免费,久草视频手机在线观看

新聞中心

EEPW首頁 > 嵌入式系統 > 設計應用 > 基于ARM的胎兒心電信號數據采集系統

基于ARM的胎兒心電信號數據采集系統

作者: 時間:2009-05-07 來源:網絡 收藏

4.1 ;C/OS-Ⅱ在S3C44BOX上的移植

;C/OS-Ⅱ是源代碼公開的嵌入式操作,是優先級的搶占式實時多任務內核,代碼采用ANSIC編寫,具有很強的可移植性和較好的可裁剪性。;C/OS-Ⅱ提供了實時所需的基本功能包括任務調度、任務管理、時間管理、任務間的通信與同步及內存管理等,總是執行處于就緒條件下優先級最高的任務,最多可以管理64個任務,它把連續的大塊內存按分區來進行動態管理,可以有效地解決內存碎片的問題。在移植過程中只需對與處理器相關的一些代碼進行修改,包括:

(1)處理器頭文件OS_ CPU.H ,其中包括了用#define定義的與處理器相關的變量、宏和定義類型;

(2)在OS_CPU_A.ASM中編寫4個簡單的匯編語言函數:OSStartHighRdy(),OSCtxSw(),OSIntCtxSw()和OSTickISR(),分別用于啟動當前就緒的優先級最高的任務、任務間的切換,從ISR中執行切換功能以及時鐘節拍ISR功能;

(3)在OS_ CPU_C. C中編寫任務堆棧初始化函數OSTaskStInit()和5個必須聲明但不需包含代碼的HOOK()函數。

4.2 應用程序設計

根據采集的特性.將系統主要任務劃分如下:系統監控任務(優先級4),按鍵掃描任務(優先級5),LCD顯示刷新任務(優先級6)、存儲任務(優先級7),優先級0,1,2,3保留以供系統使用。系統初始化以后,µC/OS-Ⅱ根據優先級和就緒狀態對任務進行調度和執行。初始化工作包括初始化所有數據結構、分配堆棧空間、建立任務及任務間通信的信號量、消息隊列和優先級。在運行OSStart()函數后,最先運行優先級最高的系統監控任務,查詢其他任務是否向其發送消息.如果沒有則將監控任務掛起。此時,鍵盤掃描任務從就緒態切換到運行態。該任務執行完畢,如果檢測到有按鍵操作,則向響應任務發送消息,使它們進入就緒態,同時向監控任務發送消息以示此任務工作正常,并且調用延時函數OSTimedly()使該任務進入掛起態。由于監控任務收到消息,將再次進入運行態,重新查詢其他被監視任務的運行信息,沒有則進入掛起態。此時其他處于就緒態中優先級相對較高的任務開始執行。當鍵盤延時時間到,系統內核自動將該任務轉入就緒態。如果在運行過程中出現異常,監控任務將按照設定處理表對其進行相應處理.使系統順利運行。

5結束語

本文設計的系統在Embest S3CEV4O開發板的基礎上進行改進和實驗,充分利用其本身提供的硬件資源,在實時操作系統µC/OS-Ⅱ基礎上進行應用程序開發,顯示與存儲數據。

本文作者創新點:合理有效設計胎兒心號提取電路,結合自身的優勢,進行算法分離,具有良好的工程意義。


上一頁 1 2 3 下一頁

評論


相關推薦

技術專區

關閉