VxWorks調(diào)試環(huán)境構(gòu)建全過程_第1頁
VxWorks調(diào)試環(huán)境構(gòu)建全過程_第2頁
VxWorks調(diào)試環(huán)境構(gòu)建全過程_第3頁
VxWorks調(diào)試環(huán)境構(gòu)建全過程_第4頁
VxWorks調(diào)試環(huán)境構(gòu)建全過程_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 VxWorks 調(diào)試環(huán)境構(gòu)建全過程設(shè)定VxWorks開發(fā)環(huán)境如下:宿主機(jī)端(Host):普通PC機(jī)一臺(tái);Tornado2.0 IDE;BSP為x86 Pentium3架構(gòu)。目標(biāo)機(jī)(Target): x86 Pentium3 CPU, 網(wǎng)卡為intel8255x系列(標(biāo)識(shí):fei)。主機(jī)和目標(biāo)機(jī)通過網(wǎng)線連接,制作步驟詳述如下(為了圖文一致,以下假設(shè)目標(biāo)機(jī)BSP文件夾名為:pcPentium):1 .修改配置文件我們要修改編譯VxWorks的配置頭文件Config.h中定義的一些參數(shù),使編譯出來的系統(tǒng)引導(dǎo)程序和VxWorks的映象符合我們的要求。(1)定位到目錄C:tornado2.2targe

2、tconfigpcPentium并打開該目錄下Config.h文件;(2)查找到定義DEFAULT_BOOT_LINE宏的地方,修改預(yù)處理?xiàng)l件CPU = PENTIUM3分支下的定義如下:#define DEFAULT_BOOT_LINE "fei(0,0)host: vxWorks h=69 e=54 u=target pw=target tn=target"其中:· fei(0,0)指定了使用第0個(gè)網(wǎng)卡和第0個(gè)處理器,fei這個(gè)標(biāo)識(shí)代表intel8255x系列100M網(wǎng)卡,若目標(biāo)機(jī)為intel8255x系列網(wǎng)卡,

3、則標(biāo)識(shí)為gei; · host指定你的主機(jī)的名字,使用host就可以; · vxWorks指定了VxWorks映象下載的完整路徑(后面會(huì)有說明); · h=69是宿主機(jī)的IP地址,可以根據(jù)實(shí)際情況修改; · e=54是目標(biāo)機(jī)的IP地址,可以根據(jù)實(shí)際情況修改; · u=target指定了FTP服務(wù)器的用戶名,這個(gè)FTP就是用來下載VxWorks映象的; · pw=target是FTP服務(wù)器與用戶名target對(duì)應(yīng)的密碼; · tn=target指定目標(biāo)機(jī)的名字,任意指定即可。(3

4、)指定網(wǎng)卡驅(qū)動(dòng)程序首先定位到“Network driver options”這段文字,保證INCLUDE_END和INCLUDE_FEI_END這兩個(gè)宏處于定義狀態(tài)(define),其他的宏都處于未定義狀態(tài)(undef),即:以下為引用的內(nèi)容:/* Network driver options */#define INCLUDE_END /* Enhanced Network Driver Support */#undef INCLUDE_DEC21X40_END /* (END) DEC 21x4x PCI interface */#undef INCLUDE_EL_3C90X_END /*

5、 (END) 3Com Fast EtherLink XL PCI */#undef INCLUDE_ELT_3C509_END /* (END) 3Com EtherLink III interface */#undef INCLUDE_ENE_END /* (END) Eagle/Novell NE2000 interface */#defineINCLUDE_FEI_END /* (END) Intel 82557/8/9 PCI interface */#undefINCLUDE_GEI8254X_END /* (END) Intel 82543/82544 PCI interface

6、 */#undef INCLUDE_LN_97X_END /* (END) AMD 79C97x PCI interface */#undef INCLUDE_ULTRA_END /* (END) SMC Elite16 Ultra interface */(4)包含PC_CONSOLE缺省情況下,VxWorks系統(tǒng)是不接受外部輸入設(shè)備(如鍵盤)的輸入,也不向外部輸出設(shè)備(如顯示器)輸出數(shù)據(jù)。為了便于調(diào)試,我們必須改變它的這種缺省狀態(tài),包含對(duì)PC控制臺(tái)的支持。查找定位宏INCLUDE_PC_CONSOLE,保證其處于定義狀態(tài)(define)即可,即:以下為引用的內(nèi)容:#define INCLU

7、DE_PC_CONSOLE /* PC keyboard and VGA console */#ifdef INCLUDE_PC_CONSOLE# define PC_CONSOLE (0) /* console number */# define N_VIRTUAL_CONSOLES (2) /* shell / application */#endif /* INCLUDE_PC_CONSOLE */2. 編譯Bootrom和VxWorks映像編譯Bootrom打開Tornado開發(fā)工具,在Build菜單下選擇Build Boot ROM,選擇BSP為pcPentium(目標(biāo)機(jī)的BSP名稱

8、),image類型為bootrom,工具為gnu,如圖8。點(diǎn)擊OK,Bootrom就會(huì)編譯。 編譯VxWorks映像編譯生成bootrom后,還要?jiǎng)?chuàng)建一個(gè)VxWorks映象(image),也就是VxWorks操作系統(tǒng)本身的代碼,步驟為:(1) 創(chuàng)建一個(gè)“bootable VxWorks image”的工程,BSP 選擇pentium(目標(biāo)機(jī)BSP名稱); (2) 選擇需要的VxWorks組件如圖10,在這個(gè)例子中我們需要包括兩個(gè)重要的組件:Telnet server 和 Target shell。前者使我們可以通過Telnet協(xié)議登錄到VxWorks操作系統(tǒng)中;后者則可以讓

9、我們通過命令行控制VxWorks系統(tǒng)。另外,需要把所有 C+相關(guān)的選項(xiàng)都包含進(jìn)去。 完成選擇后,即可開始編譯程序。到此我們已經(jīng)生成了VxWorks的系統(tǒng)引導(dǎo)程序和運(yùn)行時(shí)的代碼映象。在每次修改完系統(tǒng)的配置信息(如: config.h)后,都要重新創(chuàng)建一個(gè)工程來編譯VxWorks映象。將生成的名為“vxworks”的文件復(fù)制到D:(這個(gè)目錄任意選擇,但是要和FTP服務(wù)器下的目錄保持一致,后續(xù)說明)下。3. 創(chuàng)建引導(dǎo)軟盤由于目標(biāo)機(jī)從軟盤啟動(dòng),我們需要制作VxWorks引導(dǎo)磁盤,用于引導(dǎo)VxWorks操作系統(tǒng)映象。3.1 MS-DOS控制臺(tái),定位到 C:Tornado2.2hostx86-w

10、in32bin目錄,運(yùn)行torvars;3.2 定位到C:tornado2.2targetconfigpcPentium目錄,插入已經(jīng)格式化好的軟盤,運(yùn)行:mkboot a: bootrom該命令將在軟盤上建立VxWorks系統(tǒng)引導(dǎo)分區(qū),并將引導(dǎo)程序復(fù)制到軟盤上,至此,用軟盤引導(dǎo)VxWorks映像的步驟已做完,若要用硬盤引導(dǎo)并加載VxWorks映像,則還需要以下步驟:1)準(zhǔn)備一張軟盤,軟盤為dos622系統(tǒng)盤,包含fdisk.exe, 、(位于C:Tornado2.2hostx86-win32bin目錄,拷貝到軟盤上);2)用dos622系統(tǒng)盤(fdisk命令)為硬盤建立一個(gè)主DOS分區(qū),文件

11、格式為fat16;3)格式化硬盤分區(qū)(如:format c:),重起目標(biāo)機(jī),再次進(jìn)dos622環(huán)境;4)執(zhí)行vxsys c:,拷貝bootrom.sys(位于前面做bootrom的軟盤中)和VxWorks映像到硬盤上,拷貝過程中要保證文件的連續(xù)性。 至此,硬盤引導(dǎo)加載VxWorks映像已經(jīng)制作完畢。4. 建立調(diào)試環(huán)境4.1配置FTP服務(wù)器宿主機(jī)上的FTP服務(wù)器用于在系統(tǒng)成功引導(dǎo)后,下載VxWorks的運(yùn)行時(shí)映象,最好使用Tornado開發(fā)環(huán)境自帶的FTP服務(wù)軟件。 如圖11,打開Tornado FTP Server,選擇“Security”菜單下的“Users/Rights”子菜單,

12、創(chuàng)建User Name為“target”,修改“Home Directory”為“D:”(即VxWorks映像目錄),修改用戶名為“target”,對(duì)應(yīng)密碼為“target”,點(diǎn)擊“Done”按鈕完成修改,F(xiàn)TP服務(wù)就啟動(dòng)了。為了便于觀察引導(dǎo)程序是否從FTP上下載了VxWorks映像,最好打開FTP Server的日志功能。選擇“Logging”菜單下的“Logging Options”子菜單,其中除了“Winsock Calls”外,讓其他選項(xiàng)全都處于開啟狀態(tài)。保持FTP Server窗口處于打開狀態(tài),即保證FTP服務(wù)器處于運(yùn)行狀態(tài)。若從軟盤啟動(dòng),需要把BIOS啟動(dòng)順序設(shè)成軟驅(qū)優(yōu)先,接下來重

13、起目標(biāo)機(jī),會(huì)下載服務(wù)器上的D:vxworks映像,服務(wù)器的FTP會(huì)有相關(guān)的log,如圖12: 圖12 FTP服務(wù)器 若從硬盤啟動(dòng),則需要修改引導(dǎo)信息,如下: 引導(dǎo)設(shè)備:fei0 改成 ata=1,0(當(dāng)硬盤位于IDE1,Master位置時(shí),當(dāng)硬盤位于IDE0,Master位置時(shí),則改成ata=0,0。由此類推,硬盤位置從BIOS可以看出)。 VxWorks映像路徑:vxWorks改成/ata0a/vxWorks,或者/ata0/vxWorks,執(zhí)行h命令可以看出是”/ata0”還是”/ata0a”.4.2 配置target server如圖13,打開您的Tornado開發(fā)環(huán)境,選擇“

14、Tools->Target Server->Configure”菜單,在“Description”中任意填寫一個(gè)名字,這里是“net00”;在“Available Back”中選擇“wdbrpc”,并在下面的IP地址框中填寫目標(biāo)機(jī)的IP地址,這里是“54”(由 DEFAULT_BOOT_LINE參數(shù)決定);將“Target Server Properties”下拉框更改至“Core File and Symbols”,并在“File Path”一項(xiàng)中選擇您的映象的完整路徑,這里是“D:VxWorks”(由DEFAULT_BOOT_LINE參數(shù)決定)。圖13

15、配置Target Server完成以上兩項(xiàng)配置,如果目標(biāo)機(jī)已經(jīng)啟動(dòng),點(diǎn)擊“Launch”按鈕,就可以啟動(dòng)Target Server了。再回到Tornado開發(fā)環(huán)境,在工具條上的Target Server下拉框列表中選擇“69host”。這時(shí)您會(huì)發(fā)現(xiàn)工具條中一些原先處于“禁用”狀態(tài)的工具按鈕,現(xiàn)在都已經(jīng)處于“激活”狀態(tài)了。試一試,我們打開TShell,并運(yùn)行“i”命令察看目標(biāo)機(jī)上當(dāng)前運(yùn)行的任務(wù),效果如圖14: 圖14 在TShell中運(yùn)行命令5. 編寫和調(diào)試應(yīng)用程序現(xiàn)在,編寫應(yīng)用程序的所有條件已經(jīng)完全具備了。我們來編寫一個(gè)簡單的應(yīng)用。如圖15,建立一個(gè)名為“test”的可下載的應(yīng)用程序模塊:圖15建立可下載的應(yīng)用程序模塊如圖16,注意工具鏈的選擇,應(yīng)該為PENTIUMgnu:圖16 選擇PENTIUMgnu工具鏈這個(gè)時(shí)候工程中還一個(gè)文件都沒有,我們編寫一個(gè)簡單的程序:以下為引用的內(nèi)容:#includevoid test(void)int i = 0;while(1)printf ("%dt",i);i+;if(i=10000)br

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論