在Nios II中使用MicroCOS-II實時操作系統指南

admin @ 2014-03-26 , reply:0

說明:  該指南將會使你熟悉nios II IDE和MicroC/OS-II開發流程。niosII IDE提供設計者一個充足的niosII開發平台。niosII IDE包含MicroC/OS-II實時操作系統,為設計者提供快速地搭建基於niosII處理器的MicroC/OS-II應用程序的能力。該指南提供了搭建一個基於MicroC/OS-II實時操作系統的簡單程序的步驟說明。
基於niosII處理器的MicroC/OS-II操作系統的詳細敘述請參閱the Nios II Software Developer's Handbook(niosII軟體開發手冊)的“MicroC/OS-II Real-Time Operating System”(MicroC/OS-II實時操作系統)章節。

硬體與軟體:   以下是該指南所需要的硬體與軟體:

需求:   Quartus® II4.1版sp1 或更高版本
                NiosII 嵌入式處理器1.01版或更高版本
                niosII開發板Stratix™ II 版, Cyclone™ 版,Stratix 版,                 或 Stratix 專業版
                altera的USB-Blaster™ 或 ByteBlaster™下載電纜
   要完成該指南的全部功能,你必須安裝Nios II IDE並且將你的nios開發板與pc主機相連接,參見the Nios II Development Kit Getting Started
User Guide。

指南文件        niosII開發包包含該設計嚮導。該硬體設計是標準參考設計, 軟體設計是一個Nios II IDE模板。當你安裝了niosII開發包后,你能發現設計文件在niosII開發包的目錄索引中。
          硬體標準參考設計文件位於 <Nios II kit path>\examples\<verilog or vhdl>\<Nios development board>\standard directory.
          MicroC/OS-II軟體設計指南文件位於 <Nios II kit path>\examples\software\ucosii_tutorial directory.
          你不需移動或複製這些軟體文件,因為Nios II IDE自動複製了它們到你的工作工程目錄。


Hello MicroC/OS-II 設計
     你使用的該指南的設計示例是一個用於練習熟悉該操作系統一些基本特點的簡單的設計。圖1—1是一個簡化的應用圖表。

 
圖1-1  Tutorial Example Design

       在圖1-1中展示的設計有五個活動的任務。send_task用增量數據(incrementing data)填入消息隊列(message queue)。receive_task1和receive_task2定時把消息從消息隊列中取出。getsem_task1 和 getsem_task2 競爭被一個信號機(semaphore)所保護的一個共享資源。這個設計也有兩個任務沒有被展現在圖1-1中:一個初始化任務和一個顯示狀態信息任務。

  1. 創建一個基於NIOSII處理器的MicroC/OS-II軟體過程包含以下步驟:
  2. 創建一個新的Nios II IDE工程.
  3. 設定Nios II 軟體工程庫.
  4. 建立並運行Nios II 軟體工程.

這些步驟在接下來的章節中被詳細描述.

創建一個新的Nios II IDE工程
在這個章節中你將要使用一個軟體模板來創建一個新的Nios II IDE工程。執行以下步驟:
1.選擇Programs > Altera > Nios II Development Kit <版本號> > Nios II IDE (Windows 開始菜單).
2.選擇 New > C/C++ Application (File menu). The first page of
New Project wizard opens. 在 Project Template(工程模板)選擇中, 選擇 the MicroC/OS-II Tutorial.
3.工程名與工程路徑已為你自動填好,請保留這些默認值。
4.Click Browse under Select Target Hardware(單擊瀏覽選擇目標硬體).
5.瀏覽你正在使用的Nios擴展板的標準常式目錄,例如:<Nios II kit
path>\examples\<verilog or vhdl>\<Nios development
board>\standard directory(標準目錄), <Nios development board>為以下各項中的一個 :

  •  NiosII_StratixII_2S60_ES for the Stratix EP2S60ES board
  •  NiosII_Stratix_1S10 for the Stratix EP1S10 board
  •  NiosII_Stratix_1S10_ES for the Stratix EP1S10ES board
  •  NiosII_Cyclone_1C20 for the Cyclone EP1C20 board
  •  NiosII_Stratix_1S40 for the Stratix EP1S40 board

6.選擇std_<device name>.ptf文件。
7.單擊Open。你返回到New Project.如圖1-2所示,SOPC Builder系統框下Select Target Hardware欄中包含的指向標準設計常式.ptf文件的路徑。另外CPU欄包含在SOPC Builder示例系統中的CPU的名稱。
 
圖1–2. New Project Wizard Page 1
 8.單擊Next至New Project第二頁。
9. 開啟Select or create a system library選項。
10.單擊New System Library Project打開系統庫頁面。
見圖1-3。
 
圖 1–3. New System Library Dialog Box
11.在Name欄中輸入std_system_lib
12.在Select Type of system library欄中選擇MicroC/OS-II。
13.單擊Finish返回New Project。見圖1-4
 
圖 1–4. New Project Wizard Page 2
14.單擊Finish完成你的新工程的創建。該範例創建了兩個工程在C/C++ Projects視圖中,如圖1-5所示。
 
圖 1–5. C/C++ Projects
Nios II device drivers   (niosII設備驅動程序)
MicroC/OS-II system library for the standard hardware (用於標準硬體的MicroC/OS-II system library)
Application project  (應用設計)

系統庫設定
通常,在你創建了一個新的系統庫以後你必須設定它,例如定義stdin, stdout, stderr,等。參見Nios II Software Development Tutorial在線支持將有詳細敘述。在這個指南中你必須設定MicroC/OS-II。在設置期間Nios II IDE保存適配參數到os_cfg.h文件中。執行以下步驟設定MicroC/OS-II核。
1. 在Nios II IDE的C/C++ Projects視圖中,右鍵在系統庫上單擊std_system_lib。
2. 在彈出的菜單中選擇Properties打開Properties對話框。
3. 單擊System Library顯示system library選項,如圖1-6所示。
 
圖 1–6. System Library Options
4.單擊在RTOS 下面的RTOS Options。彈出MicroC/OS-II RTOS Options對話框,如圖1-7所示。

 
圖 1–7. MicroC/OS-II RTOS Options
 
5.單擊“+”在在左邊的面板中,展開MicroC/OS-II目錄。MicroC/OS-II是高度可設定的。你選定的對話框中的選項被保存在os_cfg.h文件中。選定的MicroC/OS-II選項被包含在二進位映射中。通過單擊MicroC/OS-II下每一個選項檢查你所能選擇的選項。
關於MicroC/OS-II 的各種詳細特點,請參見Nios II Software Developer’s Handbook的“MicroC/OS-II Real Time Operating System”章節。
6.選擇默認設置單擊OK。你將返回系統庫選項對話框。
7.單擊OK完成設置。
 你已經完成了系統庫設定準備構造和運行在以下章節中所描述的示例。

關於詳細敘述如何構建和運行Nios II IDE,請參見在線Nios II Software Development Tutorial。

構建和運行Nios II軟體設計
在這一部分,你將要在擴展板上運行一個設計示例。
使用Nios II IDE,你將要創建一個應用程序,為擴展板設定一個合法的目標文件(.sof),並且下載執行與連接文件(.elf)
1.在Nios II IDE的 C/C++ Projects視圖中,選擇ucosii_tutorial_0工程。
2.打開Quartus II程序選擇Quartus II Programmer (Tools menu中)。見圖1-8。
 
圖1-8 Quartus II Programmer
 
3. 選擇 Open (File menu中).
選擇standard.sof如圖1–9所示。
 
圖 1–9. Open Dialog Box
 
5.單擊Open你會返回Quartus II程序。
6.檢查Program/Configure選項。
7.單擊Start將SOF與擴展板上的FPGA適配。
8.選擇Exit (File menu中)關閉Quartus II程序。你將返回Nios II IDE。
9.如果你被問及是否想保存chain1.cdf文件單擊No。
10.選擇Run As > Nios II Hardware (Run menu中)創建程序,下載它到擴展板中並運行。
關於Nios II IDE創建和運行設置,參見在Nios II IDE 中的在線幫助Nios II Software Development Tutorial
下載完成後,Nios II IDE通過print_status_task()函數使控制台視圖周期性更新,如下所示:
****************************************************************
Hello From MicroC/OS-II Running on Nios II. Here is the status:
The number of messages sent by the send_task: 39
The number of messages received by the receive_task1: 10
The number of messages received by the receive_task2: 3
The shared resource is owned by: getsem_task2
The Number of times getsem_task1 acquired the semaphore 30
The Number of times getsem_task2 acquired the semaphore 24
****************************************************************
祝賀你成功地設定,構建和運行了一個MicroC/OS-II程序
為了詳細了解這個指南,你能查閱ucosii_tutorial.c.文件資源。MicroC/OS-II 的完全參考參見“MicroC/OS-II Nios II Software Developer’s Handboo.的“Real Time Operating System” 章節。




[admin via 研發互助社區 ] 在Nios II中使用MicroCOS-II實時操作系統指南已經有1352次圍觀

http://cocdig.com/docs/show-post-43269.html