最近的幾篇關(guān)于MicroZed系列的博客中我們介紹并了解了RTOS(實(shí)時(shí)操作系統(tǒng))的概念,既然已經(jīng)介紹了基本知識(shí),是時(shí)候在MicroZed開發(fā)板上實(shí)現(xiàn)運(yùn)行我們的第一個(gè)操作系統(tǒng)。我們將使用Micrium公司的uC/OS-III RTOS(實(shí)時(shí)操作系統(tǒng))。(注:Micrium公司的uC/OS-II實(shí)時(shí)操作系統(tǒng)被應(yīng)用到好奇號(hào)火星車上,運(yùn)行在火星車上的一個(gè)分析實(shí)驗(yàn)室中)。這篇博客將會(huì)告訴你怎么獲得工程模塊并運(yùn)行起來(lái)。
顯然我們要做的第一步是從Micrium的網(wǎng)站下載uC/OS-III操作系統(tǒng),你可以使用這個(gè)鏈接。一旦你下載好了安裝文件,你只需要做的就是解壓幾個(gè)ZIP格式的壓縮文件到正確的目錄。目錄選擇為你的計(jì)算機(jī)中Xilinx工具集安裝的目錄。
將名字為Zynq-7000-ucosiii-bsp.zip的壓縮包解壓到\14.X\ISE_DS\EDK\sw\lib\bsp\. 這個(gè)目錄下,你會(huì)發(fā)現(xiàn)一些別的類型的操作系統(tǒng)也在這個(gè)目錄下,例如:standalone和 xilkernel。
下一步,解壓Zynq-7000-ucosiii-demo.zip壓縮文件到\14.X\ISE_DS\EDK\sw\lib\sw_apps\.這個(gè)目錄下,同樣你會(huì)看到一些其他的應(yīng)用模塊也存在于這個(gè)目錄下。
安裝完上面兩個(gè)文件,我們將使用SDK創(chuàng)建一個(gè)工程,為了能這樣做,我將使用前面幾篇博客中使用到的同樣的硬件工程文件。然而我們還需要為操作系統(tǒng)創(chuàng)建一個(gè)應(yīng)用程序和一個(gè)BSP(板級(jí)支持包)文件 。
在SDK軟件環(huán)境下,關(guān)閉所有工程文件出了你將要使用到了硬件工程設(shè)計(jì)文件,然后在菜單欄選擇file -> new -> application project。給新建的工程命名然后選擇操作系統(tǒng),這里我們當(dāng)然選擇uC/Os-III操作系統(tǒng)。
點(diǎn)擊選擇next選擇uC/OS-III demo應(yīng)用,這一步將會(huì)導(dǎo)入操作系統(tǒng)所需的所有文件。
點(diǎn)擊Finish然后上一步選擇過(guò)得應(yīng)用程序和BSP就會(huì)出現(xiàn)在SDK界面中,如果你設(shè)置了自動(dòng)編譯,你會(huì)看到編譯的報(bào)告中出現(xiàn)一些錯(cuò)誤,這些錯(cuò)誤告訴你不是所有的參考文件都是正確的,為了修改這些錯(cuò)誤,我們需要導(dǎo)入?yún)⒖寄K的一些設(shè)置,點(diǎn)擊菜單欄的Project選項(xiàng)選擇setting。
右鍵選擇XML文件,查看此文件的屬性。按照下圖所示復(fù)制XML文件的路徑信息。
當(dāng)你拷貝好文件的路徑信息,右鍵選擇所建立工程,選擇properties選項(xiàng),在C/C++ General擴(kuò)展菜單下選擇paths and symbol選項(xiàng)。然后選擇導(dǎo)入設(shè)置信息,粘貼前面復(fù)制的文件的路徑信息。
確保庫(kù)文件的路徑信息正確同樣很重要,可以通過(guò)選擇菜單欄的Tools-> Repositories檢查庫(kù)文件的路徑信息,這個(gè)應(yīng)該顯示我們前面安裝過(guò)的uC/Os-III BSP文件的路徑信息。
我們需要借助UART串口輸出這個(gè)演示模塊的運(yùn)行狀態(tài)信息,顯示何時(shí)完成初始化,顯示正在運(yùn)行的任務(wù),因此我們需要在BSP的設(shè)置選項(xiàng)中設(shè)置下UART串口的stdin和stdout(標(biāo)準(zhǔn)輸入和標(biāo)準(zhǔn)輸出)。
當(dāng)你完成了上面所有的操作,你應(yīng)該可以編譯你的工程。然而仍然會(huì)有些warning(警告)信息,如果這樣你就嘗試在Microzed開發(fā)板上運(yùn)行這個(gè)工程,它的運(yùn)行狀態(tài)可能不是很正常,主要原因是我們沒(méi)有聲明一個(gè)函數(shù)
#include "xil_cache.h
在bsp.c文件中加入上面這句程序,重新編譯就不會(huì)有警告信息了。
當(dāng)我在程序中增加了上面的頭文件,編譯工程,就可在Microzed開發(fā)板上如我們所期望的那樣運(yùn)行了。
原文鏈接:
? Copyright 2014 Xilinx Inc
如需轉(zhuǎn)載,請(qǐng)注明出處
評(píng)論