《NiosII處理器中文參考手冊(cè)》由會(huì)員分享,可在線(xiàn)閱讀,更多相關(guān)《NiosII處理器中文參考手冊(cè)(7頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、說(shuō)明: 該指南將會(huì)使你熟悉niosII IDE和MicroC/OS-II開(kāi)發(fā)流程。niosII IDE提供設(shè)計(jì)者一個(gè)充足的niosII開(kāi)發(fā)平臺(tái)。niosII IDE包含MicroC/OS-II實(shí)時(shí)操作系統(tǒng),為設(shè)計(jì)者提供快速地搭建基于niosII處理器的MicroC/OS-II應(yīng)用程序的能力。該指南提供了搭建一個(gè)基于MicroC/OS-II實(shí)時(shí)操作系統(tǒng)的簡(jiǎn)單程序的步驟說(shuō)明。
基于niosII處理器的MicroC/OS-II操作系統(tǒng)的詳細(xì)敘述請(qǐng)參閱the Nios II
Software Developer’s Handbook(niosII軟件開(kāi)發(fā)手冊(cè))的“MicroC/OS-II Rea
2、l-Time Operating System”(MicroC/OS-II實(shí)時(shí)操作系統(tǒng))章節(jié)。
硬件與軟件: 一下是該指南所需要的硬件與軟件:
需求: Quartus II4.1版sp1 或更高版本
NiosII 嵌入式處理器1.01版或更高版本
niosII開(kāi)發(fā)板Stratix? II 版, Cyclone? 版,Stratix 版, 或 Stratix 專(zhuān)業(yè)版
altera的USB-Blaster? 或 ByteBlaster?下載
3、電纜
要完成該指南的全部功能,你必須安裝Nios II IDE并且將你的nios開(kāi)發(fā)板與pc主機(jī)相連接,參見(jiàn)the Nios II Development Kit Getting Started
User Guide。
指南文件 niosII開(kāi)發(fā)包包含該設(shè)計(jì)向?qū)?。該硬件設(shè)計(jì)是標(biāo)準(zhǔn)參考設(shè)計(jì), 軟件設(shè)計(jì)是一個(gè)Nios II IDE模板。當(dāng)你安裝了niosII開(kāi)發(fā)包 后,你能發(fā)現(xiàn)設(shè)計(jì)文件在niosII開(kāi)發(fā)包的目錄引索中。
硬件標(biāo)準(zhǔn)參考設(shè)計(jì)文件位于
4、\examples\\\standard directory.
MicroC/OS-II軟件設(shè)計(jì)指南文件位于\examples\software\ucosii_tutorial directory.
你不需移動(dòng)或復(fù)制這些軟件文件,因?yàn)镹ios II IDE自動(dòng)復(fù)制了它們到你的工作工程目錄。
Hello MicroC/OS-II 設(shè)計(jì) 你使用的該指南的設(shè)計(jì)示例是
5、一個(gè)用于練習(xí)熟悉該操作系統(tǒng)一些基本特點(diǎn)的簡(jiǎn)單的設(shè)計(jì)。圖1—1是一個(gè)簡(jiǎn)化的應(yīng)用圖表。
圖1-1 Tutorial Example Design
在圖1-1中展示的設(shè)計(jì)有五個(gè)活動(dòng)的任務(wù)。send_task用增量數(shù)據(jù)(incrementing data)填入消息隊(duì)列(message queue)。receive_task1和receive_task2定時(shí)把消息從消息隊(duì)列中取出。getsem_task1 和 getsem_task2
競(jìng)爭(zhēng)被一個(gè)信號(hào)機(jī)(semaphore)所保護(hù)的一個(gè)共享資源。這個(gè)設(shè)計(jì)也有兩個(gè)任務(wù)沒(méi)有被展現(xiàn)在圖1-1中:一個(gè)
6、初始化任務(wù)和一個(gè)顯示狀態(tài)信息任務(wù)。
創(chuàng)建一個(gè)基于NIOSII處理器的MicroC/OS-II軟件過(guò)程包含以下步驟:
1.創(chuàng)建一個(gè)新的Nios II IDE工程.
2.設(shè)定Nios II 軟件工程庫(kù).
3.建立并運(yùn)行Nios II 軟件工程.
這些步驟在接下來(lái)的章節(jié)中被詳細(xì)描述.
創(chuàng)建一個(gè)新的Nios II IDE工程
在這個(gè)章節(jié)中你將要使用一個(gè)軟件模板來(lái)創(chuàng)建一個(gè)新的Nios II IDE工程。執(zhí)行以下步驟:
1.選擇Programs > Altera > Nios II Development Kit <版本號(hào)> > Nios II IDE (Windows 開(kāi)始菜單)
7、.
2.選擇 New > C/C++ Application (File menu). The first page of
New Project wizard opens. 在 Project Template(工程模板)選擇中, 選擇 the MicroC/OS-II Tutorial.
3.工程名與工程路徑已為你自動(dòng)填好,請(qǐng)保留這些默認(rèn)值。
4.Click Browse under Select Target Hardware(單擊瀏覽選擇目標(biāo)硬件).
5.瀏覽你正在使用的Nios擴(kuò)展板的標(biāo)準(zhǔn)例程目錄,例如:\examples\
8、og or vhdl>\\standard directory(標(biāo)準(zhǔn)目錄), 為以下各項(xiàng)中的一個(gè) :
● 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 C
9、yclone EP1C20 board
● NiosII_Stratix_1S40 for the Stratix EP1S40 board
6.選擇std_.ptf文件。
7.單擊Open。你返回到New Project.如圖1-2所示,SOPC Builder系統(tǒng)框下Select Target Hardware欄中包含的指向標(biāo)準(zhǔn)設(shè)計(jì)例程.ptf文件的路徑。另外CPU欄包含在SOPC Builder示例系統(tǒng)中的CPU的名稱(chēng)。
圖1–2. New Project Wizard Page 1
8.單擊Next至New Project第二頁(yè)。
9. 開(kāi)啟S
10、elect or create a system library選項(xiàng)。
10.單擊New System Library Project打開(kāi)系統(tǒng)庫(kù)頁(yè)面。
見(jiàn)圖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。見(jiàn)圖1-4
圖 1–4. New Project Wizard Page 2
14.單擊Finish完成你的新工程的創(chuàng)建。該范例創(chuàng)
11、建了兩個(gè)工程在C/C++ Projects視圖中,如圖1-5所示。
圖 1–5. C/C++ Projects
Nios II device drivers (niosII設(shè)備驅(qū)動(dòng)程序)
MicroC/OS-II system library for the standard hardware (用于標(biāo)準(zhǔn)硬件的MicroC/OS-II system library)
Application project (應(yīng)用設(shè)計(jì))
系統(tǒng)庫(kù)設(shè)定
通常,在你創(chuàng)建了一個(gè)新的系統(tǒng)庫(kù)以后你必須設(shè)定它,例如定義stdin, stdout, stderr,等。參見(jiàn)
12、Nios II Software Development Tutorial在線(xiàn)支持將有詳細(xì)敘述。在這個(gè)指南中你必須設(shè)定MicroC/OS-II。在設(shè)置期間Nios II IDE保存適配參數(shù)到os_cfg.h文件中。執(zhí)行以下步驟設(shè)定MicroC/OS-II核。
1. 在Nios II IDE的C/C++ Projects視圖中,右鍵在系統(tǒng)庫(kù)上單擊std_system_lib。
2. 在彈出的菜單中選擇Properties打開(kāi)Properties對(duì)話(huà)框。
3. 單擊System Library顯示system library選項(xiàng),如圖1-6所示。
圖 1–6. System Library
13、 Options
4.單擊在RTOS 下面的RTOS Options。彈出MicroC/OS-II RTOS Options對(duì)話(huà)框,如圖1-7所示。
圖 1–7. MicroC/OS-II RTOS Options
5.單擊“+”在在左邊的面板中,展開(kāi)MicroC/OS-II目錄。MicroC/OS-II是高度可設(shè)定的。你選定的對(duì)話(huà)框中的選項(xiàng)被保存在os_cfg.h文件中。選定的MicroC/OS-II選項(xiàng)被包含在二進(jìn)制映射中。通過(guò)單擊MicroC/OS-II下每一個(gè)選項(xiàng)檢查你所能選擇的選項(xiàng)。
關(guān)于MicroC/OS-II 的各種詳細(xì)特點(diǎn)
14、,請(qǐng)參見(jiàn)Nios II Software Developer’s Handbook的“MicroC/OS-II Real Time Operating System”章節(jié)。
6.選擇默認(rèn)設(shè)置單擊OK。你將返回系統(tǒng)庫(kù)選項(xiàng)對(duì)話(huà)框。
7.單擊OK完成設(shè)置。
你已經(jīng)完成了系統(tǒng)庫(kù)設(shè)定準(zhǔn)備構(gòu)造和運(yùn)行在以下章節(jié)中所描述的示例。
關(guān)于詳細(xì)敘述如何構(gòu)建和運(yùn)行Nios II IDE,請(qǐng)參見(jiàn)在線(xiàn)Nios II Software Development Tutorial。
構(gòu)建和運(yùn)行Nios II軟件設(shè)計(jì)
在這一部分,你將要在擴(kuò)展板上運(yùn)行一個(gè)設(shè)計(jì)示例。
使用Nios II IDE,你將要?jiǎng)?chuàng)建一
15、個(gè)應(yīng)用程序,為擴(kuò)展板設(shè)定一個(gè)合法的目標(biāo)文件(.sof),并且下載執(zhí)行與連接文件(.elf)
1.在Nios II IDE的 C/C++ Projects視圖中,選擇ucosii_tutorial_0工程。
2.打開(kāi)Quartus II程序選擇Quartus II Programmer (Tools menu中)。見(jiàn)圖1-8。
圖1-8Quartus II Programmer
3. 選擇 Open (File menu中).
選擇standard.sof如圖1–9所示。
圖 1–9. Open Dialog Box
5.單擊Open你會(huì)返回Quartus II程序。
6
16、.檢查Program/Configure選項(xiàng)。
7.單擊Start將SOF與擴(kuò)展板上的FPGA適配。
8.選擇Exit (File menu中)關(guān)閉Quartus II程序。你將返回Nios II IDE。
9.如果你被問(wèn)及是否想保存chain1.cdf文件單擊No。
10.選擇Run As > Nios II Hardware (Run menu中)創(chuàng)建程序,下載它到擴(kuò)展板中并運(yùn)行。
關(guān)于Nios II IDE創(chuàng)建和運(yùn)行設(shè)置,參見(jiàn)在Nios II IDE 中的在線(xiàn)幫助Nios II Software Development Tutorial
下載完成后,Nios II IDE通過(guò)
17、print_status_task()函數(shù)使控制臺(tái)視圖周期性更新,如下所示:
****************************************************************
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 message
18、s 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
****************************************************************
祝賀你成功地設(shè)定,構(gòu)建和運(yùn)行了一個(gè)MicroC/OS-II程序
為了詳細(xì)了解這個(gè)指南,你能查閱ucosii_tutorial.c.文件資源。MicroC/OS-II 的完全參考參見(jiàn)“MicroC/OS-II Nios II Software Developer’s Handboo.的“Real Time Operating System” 章節(jié)。