μC/OS-II嵌入式操作系統

μC/OS-II嵌入式操作系統

Micriμm 公司提供嵌入式軟件產品,μC/OS-II,μC/GUI,μC/FS,μC/USB,μC/FL,μC/ModBus, uC/Probe 。
μC/OS-II :一個源碼公開、可移植、可固化、可裁剪、佔先式的實時多任務操作系統。其絕大部分源碼是用ANSI C寫的,世界著名嵌入式專家Jean J.Labrosse出版的《μC/OS-II,實時內核》(ISDN 1-57820-103-9)詳細分析了該內核。μC/OS-II通過了聯邦航空局(FAA)商用航行器認證,符合RTCA(航空無線電技術委員會)DO-178B標準,該標準是爲航空電子設備所使用軟件的性能要求而制定的。自1992年問世以來,μC/OS-II已經被應用到數以百計的產品中。uC/OS-II在高校教學使用是不需要申請許可證的,但將μC/OS-II的目標代碼嵌入到產品中去,應當購買目標代碼銷售許可證。μC/GUI:一個軟件模塊集合,通過該模塊可以在我們的嵌入式產品中加入用戶圖形接口(GUI)。μC/GUI具有很高的執行效率,並且與處理器和LCD控制器相獨立。該模塊可以工作在單任務或者多任務環境,可以支持不同大小的顯示方式。
μC/FS:一個高度可移植的嵌入式FAT文件系統。該系統可以用於不同的介質,而用戶只需要提供不同設備的驅動函數。μC/FS是一個經過對速度、多功能性和內存需求等優化的高性能庫。

Micrium 推出了 uC/Probe ,這款通用工具能讓嵌入式開發人員在實時環境中監測嵌入式系統。有了 uC/Probe ,不再需要像以前一樣爲了得到系統反饋必須停止一個應用程序;有了 uC/Probe ,用戶 可以圖形化方式 觀測正在運行的嵌入式應用程序的內部,這樣節省了大量的開發時間;有了 uC/Probe , 開發者可以保證系統正確地運行,或者迅速找到系統的不穩定性 , 這些不穩定性一般情況下 ( 不用工具 ) 在系統運行時才能被發現 .

Micrium 推出首個工業級通用嵌入式系統監測工具, 榮獲 2007 美國菲斯卡爾技術論壇“最高級別”開發支持工具, uC/Probe 可以和任意能產生 ELF/DWARF 或者 IEEE 695 導出文件的編譯器 / 連接器一起工作, uC/Probe 同樣可和任何 8 位 16 位 32 位和 64 位的 CPU 以及 DSP 一起工作, 有了 uC/Probe , 就不必而定製程序或腳本了 , 從而節省了開發時間 .

數據在運行 Microsoft Windows 的 PC 上 以圖形化方式 來顯示,值可以是數字也可以量表,條線圖,區圖,曲線圖,電子顯示器,計數器或者圓形分隔統計圖表的形式來顯示。 uC/Probe 可以用於診斷系統的功能或者作爲允許 現場 技術員遙 控 設備狀態的最終產品用戶接口。 只需要 15 分鐘,就可以構建一個如上的數據顯示器。

uC/Probe 不需要用戶自己寫代碼,即使沒有實時操作系統( RTOS )也能被輕鬆操縱,這又節省了更多的開發時間。當前發行的版本支持 RS-232 或者 J-Link (對 ARM 目標機而言是 J-Tag 的特別類型)接口,用來從目標機收集數據。

μC/OS-II 是一個移植方便的、可固化的、可裁剪的、佔先的多任務實時內核,它適用於多種微處理器,微控制器和數字處理芯片。μC/OS-II 可以管理63個應用任務同時通過下列服務:
信號量 | 事件標誌組 |互斥信號量 (可用於降解優先級反轉) |消息郵箱 | 消息隊列| 任務管理| 時間管理 | 固定大小內存塊管理
μC/OS-II 發佈所有的源代碼。事實上,其源代碼與標準C完全兼容,在所有實時操作系統中,μC/OS-II的源代碼幾乎是最整潔、編寫最一致的。

μC/OS-II的內核在《 MicroC/OS-II, The Real-Time Kernel》
(ISBN 1-57820-103-9) 的書中有詳細描述,該書的作者是 Jean J. Labrosse. 所有μC/OS-II 提供的系統服務都以前綴‘OS’開始,這樣可以方便地知道用戶應用中所用到的內核服務函數。同時,這些內核服務都有明確的分類:比如OSTask() 與任務管理函數有關,OSQ()與消息隊列管理相關, OSSem() 與信號量管理相關等等。
已爲μC/OS-II開發了相關工具並提供了必要的文檔證明μC/OS-II 適用於安全性要求高的系統,能滿足航天和醫藥產品的安全要求。雖然這一特性對用戶的需求並不一定實用,但卻證明了μC/OS-II是一個非常強勁的實時系統。
μC/OS-II 目前與汽車製造業軟件可靠協會(MISRA)規範的C代碼標準99%兼容。這些標準由MISRA制定以提高安全性要求高的汽車系統C程序的可靠性和可預測性。在Micrium 的網站上,可以獲取詳細的μC/OS-II與MISRA的127條C編程規則兼容的描述列表。
μC/OS-II 可以在大部分處理器上運行在我們的網站上可以獲取(免費下載)μC/OS-II的移植。大量已移植成功的代碼可以說明μC/OS-II 確實是非常方便的,一旦新的處理器出現,μC/OS-II 很可能將在其上移植。
μC/OS-II 是可裁剪的,可以只包含用戶應用所需的性能。這樣就可以提供最小的存儲器封裝。根據處理器不同, μC/OS-II可以降低到只用 2K 字節的代碼空間 和 300 字節的數據空間 (堆棧除外)。
μC/OS-II提供的大多數服務的執行時間都是確定的常數。這意味着執行時間與應用程序中運行的任務數無關。 μC/OS-II 已經廣泛應用於全世界各個公司的成百上千種產品中。世界上許多學院和大學也都在實時系統的課程教學中採用μC/OS-II. 這保證了工作崗位上的工程師能夠獲得培訓爲以後在產品中使用μC/OS-II 做準備。
藉助於μC/OS-View 模塊用戶可以查看μC/OS-II所管理任務的狀態。要完成該功能,用戶需要添加一個小的目標駐留模塊,這個模塊通過RS-232C串口與Microsoft 的窗口應用程序通信。
μC/OS-II KA (Kernel Awareness插件)允許用戶在一系列方便的窗口中顯示 內部數據結構 ,這些窗口把C-SPY調試器和IAR Embedded Workbench結合在一起。
它爲用戶提供了目標應用系統中的活動任務,每個信號量,互斥信號量,郵箱,隊列和事件標誌組和一個等待這些內核對象的所有任務的列表等,這對嵌入式開發者在測試和調試應用程序時很有幫助。在Kernel Awareness中爲μC/OS-II提供的調試器還有: Lauterbach and Nohau

μC/FS是FAT型文件系統,它適用於所有的存儲介質,用戶可以提供這些儲存介質的基本硬件訪問函數。μC/FS 在速度,多功能性和內存封裝上都做了優化,是一個高性能的函數庫。
μC/FS是爲與各種類型的硬件兼容而設計的。爲了在 μC/FS中使用特定的硬件,
需要這種硬件的設備驅動程序。驅動程序中包括訪問硬件的底層I/O函數和全局表,
全局表中存放了這些I/O函數的指針。
μC/FS 的代碼是用ANSI C寫的,適用於所有的處理器。μC/FS具有如有一些特點:

支持與MS-DOS/Windows 兼容的FAT12,FAT16,FAT32文件系統。

支持多種設備驅動
。μC/FS支持各種不同的設備驅動,從而允許用戶在同一時間通過文件系

統訪問不同類型的硬件。

支持多種存儲介質。通過設備驅動允許用戶在同一時間訪問不同的介質。

支持操作系統。其他操作系統,包括 μC/OS-II可以很方便地與μC/FS結合。這樣用戶就可

以在多線程環境下進行文件操作。

爲用戶的應用程序提供類似於stdio.h的API,它是用ANSI C寫的,所以一個用標準C

I/O庫的應用程序可以方便地移植以使用 μC/FS.

非常簡單的設備驅動結構。μC/FS只需要讀寫分區的底層函數,所以要支持用戶定製的硬件

也是很簡單的。

提供以下設備的驅動:

SMC | SD| MMC |CF | IDE | RAMdisk| Windows (允許用戶在Windows環境下仿真軟件) 及其

他。

存儲器封裝NT

這些數字是用IAR編譯器在ARM7目標板 在ARM模式下編譯得到的。配置只允許打開一個文件。

打開更多的文件需要 1064 RAM 字節 (2 個扇區緩存+一個文件句柄).

使用Ramdisk
■ ROM: 15896                        ■ RAM: 1584

文件系統的層體系

API 層
API 層是 μC/FS 與用戶應用程序之間的接口。它包含了一個與文件函數相關的ANSI C 庫,如FS_FOpen, FS_FWrite 等。 API 層把這些調用傳遞給文件系統層。目前在μC/FS下只有FAT型的文件系統可以獲取, 但是 API層可以同時處理不同類型的文件系統層,所以在μC/FS下可以同時使用FAT 和其它文件系統。
文件系統層
文件系統層把文件操作請求傳遞給邏輯塊操作,通過這種傳遞文件系統調用邏輯塊操作來爲設備指定相應的設備驅動。


邏輯塊層
邏輯塊層的主要功能是使對設備驅動的訪問同步,併爲文件系統層提供一個便捷的接口。邏輯塊層調用一個設備驅動來進行塊操作。
設備驅動
設備驅動是處於系統底層的例程,用以訪問存儲硬件。設備驅動的結構簡單,易於與用戶自己的存儲設備進行整合。

 

μC/GUI是嵌入式應用中通用的圖形軟件,是爲帶LCD的圖形應用系統提供高效的圖形用戶接口而設計的,它不依賴於處理器和LCD控制器。μC/GUI在多任務環境下工作與在單任務環境下工作性能同樣卓越,任何尺寸大小的顯示設備,不管是物理的或是虛擬的,只要具備LCD控制器和處理器,都可以運用μC/GUI。μC/GUI產品包中包含有所有的源代碼。實際上,在所有的嵌入式圖形用戶接口中,μC/GUI提供的源代碼是最整潔最統一的。μC/GUI提供的所有服務都以該模塊相關的前綴開始(如:GUI,WM),這將易於理解應用程序中與μC/GUI相關的函數。同時,μC/GUI所有的服務都有很明晰的分類:GUI表示二維圖形,GUI_AA表示反鋸齒等。
μC/GUI適用於所有處理器,與那些需要C++編譯器的GUI不同的是,μC/GUI完全用標準C編寫。
8位至32位的處理器都可以運行μC/GUI;處於性能方面的考慮,推薦使用16位及其以上的CPU 。

可選的附加模塊允許用戶根據應用的需要和性能定製存儲器封裝。這些模塊有:
存儲設備:用於避免在繪製重疊圖案時顯示屏閃爍
窗口管理:允許用戶創建並處理各種大小的窗口
控件:控件是具有對象屬性的窗口,比如:按鈕,收音機按鈕,滾動條,複選框,列表等。它相當於Windows下的控件。
對話框:對話框一般是指需要用戶輸入信息的窗口。它可能包含多個控件,需要用戶通過選擇輸入信息,也可能是消息框和確認按鈕,給用戶顯示一些簡單的信息(比如給用戶提示或警告)
觸摸屏:目前基本的μC/GUI 包中包含有對觸摸屏的支持,該模塊包括一個底層驅動,用於處理模擬量輸入(模擬量來自於兩個8位或者更高精度的A/D轉換通道)以及觸摸屏的反跳和校準。該模塊是可選的,因爲如果用戶產品沒有觸摸屏,就不需要該模塊。
反鋸齒:通過將前景色和背景色混合得到平滑的曲線和斜線。
多個顯示設備:可以在所有層和顯示設備上顯示窗口和進行畫圖操作。多個層和多個顯示設備的處理方式是一樣的(使用相同的API例程),即便是某個嵌入式系統使用了多個顯示設備,這些顯示設備也只是簡單地被當做是多層。μC/GUI 閱讀器允許用戶查看每個單獨的層(顯示設備),但是如果是多層系統,則會查看實際的輸出(複合的視圖)。
LCD 驅動:Micrium 爲目前流行的大多數LCD控制器提供驅動
μC/GUI 產品包中包含有開發工具包,以方便用戶的項目開發
μC/GUI 包括 MSVC++下的仿真環境。它可以用於在PC上編寫和測試所有的用戶接口(不管採用什麼CPU和LCD,所有的例程都與嵌入式應用完全等同)。 這將方便調試和開發。產生在LCD上的截屏可以作爲截圖直接加入文檔中。
JPEG採用實際硬件的位圖來對目標系統進行顯示仿真。

 

μC/GUI 閱覽器, 一個獨立的程序,即便在調試時也可顯示所模擬的LCD中的內容。

μC/GUI位圖轉換器:能把所有的位圖轉換成標準的C代碼。位圖轉換器顯示要轉換的圖形。
大量例子函數都可以用位圖轉換器來實現, 包括橫向或者縱向瀏覽,旋轉位圖,以及轉換位圖的索引或顏色。

μC/GUI字體轉換器:它可以把任意一種Windows-PC下的字體轉換成一個"C"文件,在用戶的嵌入式應用中可以編譯和鏈接。這樣,用μC/GUI就可以在LCD上顯示字體,它支持各種比例大小的字體,同時可以創建外文字體。
最小化封裝
存儲器大小要求根據所用的軟件部分和目標編譯器的效率不同而有所不同,所以不可能指定精確的數值,但是下面的參數適用於典型的系統。
小型系統(沒有窗口管理器)
■ RAM: 100 bytes
■堆棧: 500 bytes
■ ROM: 10-25 kb (與所用的功能有關)
大型系統 (包括窗口管理器和控件)
■ RAM: 2-6 kb (與要求的窗口數有關)
■ 堆棧: 1200 bytes
■ ROM: 30-60 kb (與所用的功能有關)
注意如果用戶的應用需要用到很多字體則要求增加ROM的大小。上面的所以參數只是粗略估計,並不能完全保證。
例子
μC/GUI 以源代碼的形式發佈。在μC/GUI產品包中包含了大量源代碼的例子,這些例子爲μC/GUI的一些特性提供了一個簡單的介紹。比如:
■ 二維圖形
■ 反鋸齒
■ 色彩管理
■ 窗口/控件/對話框
■ 字體
■ 存儲器設備(避免閃爍)
■ 仿真PC模擬環境下的硬按鍵

還有一個例子綜合演示了μC/GUI的大部分特點。
用戶手冊
μC/GUI的源代碼結構合理,有豐富的文檔手冊。除了源代碼軟件的性質,μC/GUI的用戶手冊中包含了500頁描述API函數的內容。

μC/TCP-IP 是一個經過壓縮的、可靠的、高性能的 TCP/IP協議棧。它是在遵從Micrium公司高質量,可裁剪和高可靠性的聲譽的原則下構建的,因而可以快速地配置所需的網絡選項,使客戶的產品儘快上市。

整潔的源代碼 μC/TCP-IP 爲客戶提供業界質量最高的源代碼。μC/TCP-IP 遵從無冗餘設計,它不是來自於可以公開獲取的Unix 協議棧,但是仍然與 Berkeley 4.4 套接層接口兼容。與所有 Micrium 的產品一樣, μC/TCP-IP 用ANSI C編寫,可以在一系列優秀的交叉開發工具下廣泛使用。
方便 μC/TCP-IP 可以用於16位, 32位甚至是一些64位 的CPU上。
高性能 μC/TCP-IP 是特別爲嵌入式系統的要求設計的。臨界段被設置到最小,同時可以禁止選擇運行時間確認來提高性能。μC/TCP-IP 通過零拷貝緩存管理來實現最高效率。
可裁剪和可固化 μC/TCP-IP 允許用戶根據實際需求調整存儲封裝。μC/TCP-IP 可以配置只包括那些目標系統必需的網絡模塊。如果某個模塊沒有用到,在編譯時不會被包括以爲資源有限的嵌入式系統節約寶貴的存儲空間。
版稅免費μC/TCP-IP 授權於每個終端產品,不需要任何運行時間版稅。
以太網 μC/TCP-IP 目前支持以太網 NICs,可以方便地移植到任何一種以太網控制器上。
需要RTOS μC/TCP-IP 需要運行一個實時操作系統(RTOS)或者一個執行任務調度和互斥的內核 。μC/TCP-IP 包括了所有與μC/OS-II 接口的源代碼, 但是可以方便地移植到其它RTOS上。



這些數據是用IAR的編譯器在ARM7的目標板上的ARM模式下編譯得到的。編譯時做了優化以提高速度。選項表示是否使能那些檢查聲明、空指針、無限制的範圍、靜態計數器、錯誤計數器的代碼。

Micrium發佈USB客戶端批量協議棧:uC/USB版本1.00
USB客戶端批量協議棧已經在任何嵌入式系統上通過USB客戶端控制器設計工作。硬件抽象層容易編寫或者修改已經存在的硬件訪問子程序。這可以應用於USB1.1或者USB2.0設備。
這個協議棧包括嵌入式系統部分和PC的驅動程序。嵌入式系統部分以源碼形式發佈;PC驅動程序通常提供可執行文件(.sys),但是也可以提供源代碼。
這個USB協議棧的目標是讓開發者快速順利的開發嵌入式設備與PC通過USB通訊軟件。這個通訊象一個單一的、高速的、可靠的通道(跟TCP連接很類似)
這個協議基本能夠允許PC發送數據給嵌入式目標機,目標機接收這些數據並且應答幾個字節。PC是USB主設備,目標機是USB從設備。這個USB標準定義了4種通訊方式:控制,等時,中斷和批量。經驗說明:絕大多數嵌入式設備選擇批量通訊模式。它可以利用USB總線的最大帶寬。
速度:
USB1.1(12Mbit/sec)設備的最大可能傳輸速率大約每秒1.1Mbyte。這個數據傳輸率在快速系統上能夠達到,比如ARM7。
軟件包含(根據LICENSE的選擇):
協議棧的源代碼(目標機端)
配置樣例
硬件層子程序樣例
加載測試系統USB驅動和.inf文件的PC程序(源代碼和可執行格式)

相關datasheet 下載

1)μC/OS-II

2) μC/TCP-IP

更詳細信息請訪問:www.micrium.com

關於μC/OS-II系列軟件版權的說明

Micrium 公司產品包括μC/OS-II,μC/GUI,uC/FS,μC/TCP-IP,μC/USB等。Micrium 公司提供嵌入式系統應用方面的產品,並對其軟件擁有知識產權。Micrium花費了大量的時間和財力爲嵌入式領域提供高質量的軟件產品。所有上述產品都以源代碼的形式提供給客戶,具有極大的適用性。產品不是免費軟件,也不是開放源碼的軟件,因此,不能免費使用,需要清楚的闡明μC/OS-II和系列的軟件不是開放源碼的免費軟件,這是和Linux完全不一樣的。
開發和研究者可以通過購買Micrium公司的Jean先生的μC/OS-II的書籍,而得到μC/OS-II源代碼,但是僅可以作爲個人和學校學習使用,所有和μC/OS-II直接和間接相關的商業目的行爲,必須購買使用μC/OS-II及系列產品的商業授權,包括芯片/單板/系統廠家的任何參考設計,教學設備和最終的產品,如果沒有得到Micrium公司Jean先生簽字的合法授權都是不合法的使用,這在μC/OS-II的書籍Micrium公司(www.micrium.com)和中國代理商-北京麥克泰軟件公司網站(www.bmrtech.com)上面中有明確規定。
Micrium公司其它軟件如μC/GUI,μC/FS,μC/TCP-IP,μC/USB 等的銷售模式與μC/OS-II不同,如果沒有購買使用授權,完全不可以擁有該源代碼,也不能將源代碼用於產品的設計,培訓,教學和生產。
μC/OS-II, μC/GUI,μC/FS,μC/TCP-IP,μC/USB 等授權方式有:單個產品、產品線(系列)、按照CPU 劃分的產品三種形式,μC/OS-KA,μC/OS-VIEW 等工具是按照使用人的數目收取費用的,相對起傳統的RTOS 動輒2-3萬美圓的開發費用和每塊單板的使用費(根據數量從數百到幾個美圓),μC/OS-II及系列產品是採用一次性的收費方式,應該只是大約相當於傳統RTOS 的10-20% 的總體費用。
如果您正在將μC/OS-II系列軟件用於您的產品,您需要購買並獲得正式使用授權。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章