520 likes | 624 Views
開發軟體介紹. 軟體安裝. 本書所使用的 Embest IDE for ARM 整合開發環境及 Flash 燒錄器軟體可以在本書所附光碟中找到。或在下面網頁找到。 http://www.embedinfo.com/chinese/download/filedown.asp?filename=IDEProEdu.rar 。 Embest IDE 安裝 本章節介紹如何安裝實驗系統的軟體,首先將書附光碟放入電腦光碟機,然後在 embestIDE 目錄下執行安裝程式 setup.exe 。. 軟體啟動.
E N D
軟體安裝 • 本書所使用的Embest IDE for ARM整合開發環境及Flash燒錄器軟體可以在本書所附光碟中找到。或在下面網頁找到。http://www.embedinfo.com/chinese/download/filedown.asp?filename=IDEProEdu.rar。 • Embest IDE安裝 • 本章節介紹如何安裝實驗系統的軟體,首先將書附光碟放入電腦光碟機,然後在embestIDE目錄下執行安裝程式setup.exe。
軟體啟動 • 程式安裝完之後,系統提示是否重新啟動電腦,為了完成整個安裝過程,建議重新啟動電腦。啟動電腦後,按一下Embest IDE的圖示執行Embest IDE。
Flash 燒錄器安裝 • Flash 燒錄器安裝,選擇Flash目錄下的setup.exe執行安裝程式。使用者按照安裝步驟可正確安裝Flash燒錄器。軟體安裝完畢後,請詳細閱讀相關軟體說明文件及軟體使用手冊。
Embest IDE整合開發軟體 • 在Windows 98/NT/2000/XP環境中執行Embest IDE for ARM(主應用程式為EmbestIDE.exe)後,即進入Embest IDE整合開發環境。
專案管理 • Embest IDE專案管理提供以下功能: • 將所有原始檔案組成一個專案 • 實現一個具體的應用。在專案管理視窗中可方便地管理組成專案的所有原始檔案。 • 以專案為單位定義設定應用程式的各選項 • 包括目標處理器和除錯設備的選擇與設定,除錯相關資訊的設定,以及編譯、組譯、鏈結等選項的設定等。系統提供一個專門的對話方塊來設定這些選項 • 提供build功能表和工具按鈕,讓使用者輕鬆進行專案的編譯、鏈結 • 行來定位相應的原始檔案行。 • 一個應用專案編譯鏈結後根據編譯器的設定生成相應格式的除錯資訊檔
專案的建立 • 專案是置於工作區之中進行管理的,因此在建立一個專案的同時,會建立一個工作區。操作過程: • 按一下功能表項File > New Workspace,系統彈出一個對話方塊。 • 在Project name框中輸入新建專案名,Location框中輸入該專案要保存的目錄路徑,或按一下 選擇要保存的目錄路徑。 • 也可在一個打開的工作區視窗中,利用右鍵功能表中的“Add New Project to Workspace…”來建立一個新專案,其操作同以上操作相同,只是建立的專案也將加入當前工作區。
專案管理-建立一個新的原始檔案 • 按一下功能表項File > New • 系統彈出一個新的、沒有標題的文本編輯窗,輸入游標位於視窗中第一行 • 使用者即可編輯輸入原始檔案程式碼
專案管理-專案中加入檔案 • 選擇Project功能表中Add To Project>Files 命令,或單擊專案管理視窗中的相應右鍵功能表命令 • 彈出檔選擇對話方塊,在專案目錄下使用CTRL鍵同時選擇要加入的原始檔案。
專案管理-設定目前使用專案 • 在一個工作區中可以存在幾個同時打開的專案,但只有一個專案處於目前狀態,處於目前狀態的專案才可以作為除錯專案。 • 在工作區視窗中,選中要設定為目前狀態的專案,按一下滑鼠右鍵,彈出右鍵功能表,選擇Save as Active Project項,可將該專案設定為目前狀態; • 或選中要設定為目前狀態的專案,按一下功能表項Project > Set Active Project,選擇專案名即可將相應專案設定為目前狀態。
專案設定 • 在建立專案後,要先對專案作一些基本的設定,之後程式的編譯及除錯才可以正常運行。 • 其中較重要的設定包含,處理器設定,模擬器設定,除錯設定,及連結選項設定。 • 選擇功能表項Project > Settings…或快捷鍵Alt+F7,彈出專案設定對話方塊。
編譯設定 • GNU Tools for ARM編譯器的Compiler屬性頁,該屬性頁中的命令行開關選項用於C編譯器和C++編譯器,使用者的所有設定顯示在Compile Options的編輯框中,專案在選定相應的Build Tools時,系統提供設定。命令開關選項格式如下: • [Opt-1] [Opt-2] … $(SOURCE_FILE) … [Opt-n] … –o[Path]$(OBJ_FILE) • 編譯設定有五個類別選擇頁,分別為編譯一般資訊設定頁(General)、警告資訊設定頁(Warning Options)、輸出除錯符號檔格式設定頁。(Debug/Optimisation)、與目標板相關的設定頁(Target Specific Options)和程式碼生成選項設定頁(Code Generation Options)。
組譯選項設定 • GNU Tools for ARM編譯器的Assembler屬性頁如圖1-47所示,該屬性頁中的命令行開關選項用於組譯器,使用者的所有設定顯示在Assemble Options的編輯框中,專案在選定相應的Build Tools時,系統提供預設設定。命令開關選項格式如下: • [Opt-1] [Opt-2] … $(SOURCE_FILE) … [Opt-n] … –o[Path]$(OBJ_FILE) • 組譯設定有四個類別選擇頁,分別為一般資訊設定頁(General)、程式碼生成選項設定頁(Code Generation Options)、與目標板相關的設定頁(Target Specific Options)和警告資訊設定頁(Warning Options)。
專案鏈結 - Include Object and LibraryModules選項設定屬性頁
專案鏈結 -Add Library Searching Path選項設定屬性頁
專案的編譯鏈結 • 完成專案的設定後,就可以對專案進行編譯鏈結了。使用者可以通過選擇主視窗Build功能表項或Build工具列按鈕,編譯相應的檔或專案,同時將在輸出窗的Build子視窗中輸出有關資訊。 • 如果在編譯鏈結過程中,出現任何錯誤,包括原始檔案語法錯誤和其他錯誤時,編譯鏈結操作立刻終止,並在輸出窗的Build子視窗中提示錯誤,如果是語法錯誤,使用者可以通過滑鼠左鍵雙擊錯誤提示行,來定位引起錯誤的原始檔案行。
除錯 • Embest IDE for ARM包含ARM模擬器,支援脫離目標板的ARM應用類比除錯,是開發人員進行線上除錯前的開發輔助工具。 • 線上除錯時,首先將整合環境與JTAG模擬器連接,按一下Debug > Remote Connect功能表項可啟動連接,然後按一下Download功能表將目標檔下載到目標系統的指定記憶體區中。 • 如果在專案設定對話方塊除錯選項中設定了自動下載選項,Embest IDE中的除錯器會在與模擬器連接後自動進行下載,檔下載後即可進行模擬器除錯。
除錯-中斷點和單步 • 除錯器可以控制目的程式的執行和停止,並反組譯正在除錯的二進位碼,同時可通過設定中斷點來控制程式的執行,輔助使用者更快的除錯目的程式。 • Embest IDE的除錯器可以在原始程式、反組合語言程式、以及原始程式組合語言程式混合模式視窗中設定和刪除中斷點。
除錯-設定中斷點的有以下幾種方法 • 將滑鼠指向原始程式行左邊需設定中斷點處,滑鼠形狀會變成手形指標,然後單擊滑鼠左鍵,這時,程式列左邊會出現紅色圓形含黃色條的中斷點旗標。 • 將游標設定在需要設定中斷點的程式碼行處,按F9快捷鍵。 • 將游標設定在需要設定中斷點的程式碼行處,按一下Debug功能表,選取Toggle Breakpoint功能表項。
除錯-有效中斷點旗標 • 第一次設定的中斷點均為有效中斷點,設定了有效中斷點的原始程式介面如圖所示,青色圈處為有效中斷點旗標: • 在原始程式窗,若在一條非執行語句設中斷點,Embest IDE不會做出任何回應。
除錯-無效中斷點旗標 • 中斷點狀態分為有效和無效狀態,程式不會在無效狀態的中斷點停止。無效中斷點的原始程式介面如圖所示,青色圈處為無效中斷點旗標:
除錯-停止在中斷點處 • 當程式執行到有效中斷點處時,會停止在有效中斷點處,其介面如圖所示:
中斷點列表對話方塊 • 使用者可使用中斷點列表來查詢所有中斷點資訊和狀態。 • 按一下Debug功能表,選取“Breakpoint…”功能表項,即可彈出中斷點列表對話方塊,中斷點列表對話方塊如圖所示:
除錯-中斷點資訊修改 • 在中斷點列表對話方塊按一下Delete按鈕將會刪除當前選擇的中斷點,按一下Delete ALL按鈕將刪除當前列表中所有中斷點,按一下View Code按鈕將顯示當前所選擇中斷點對應的原始檔案,如果是組譯中斷點並且不對應任何原始檔案,按一下View Code按鈕將沒有任何反應,雙擊某一中斷點行或者按一下Modify按鈕,將可修改中斷點資訊,修改介面如圖所示:
除錯-條件中斷點資訊修改 • 若要設定中斷點條件屬性,按一下中斷點資訊修改視窗的Advanced按鈕,將下拉出另一附加視窗,介面如圖所示,“When”輸入欄用於輸入中斷點條件運算式,“Command”輸入欄用於輸入程式到達中斷點時候系統自動執行的命令。
反組譯窗 • 反組譯窗用於顯示反組譯二進位碼後得到的組譯級程式碼,可以混合原始碼顯示,也可以混合二進位碼顯示。反組譯窗可以設定和清除組譯級別中斷點,並可按照ARM或THUMB格式的反組譯二進位碼。
暫存器視窗 • 按一下功能表項View>debug windows>Variables可以打開和關閉暫存器視窗。 暫存器視窗用於顯示和修改目標系統中處理器核心暫存器及其週邊介面暫存器值。暫存器名稱和數目依賴於目標系統處理器類型,當除錯不同目標系統的時候,顯示的內容會不一樣。暫存器值可以按照十進位、十六進位或者二進位格式顯示,並可自動刷新或者根據需要由使用者手動刷新顯示。暫存器顯示按照暫存器組方式,每組暫存器都可以分別設定不同的顯示格式。
記憶體區視窗 • 記憶體區視窗用於顯示和修改目標系統中記憶體區的內容。記憶體區視窗顯示從輸入的起始位址開始存儲的記憶體區內容,顯示長度根據記憶體區視窗大小而自動匹配。記憶體區內容可以按照位元組、半字或字長度顯示,並同時以十六進位數和對應的ASCII字元顯示記憶體區內容。當記憶體區視窗顯示範圍內的記憶體區資料有變化的時候,會以紅色顯示這些資料。IDE 同時提供了兩個記憶體顯示視窗Memory1窗和Memory2窗(功能同Memory1窗)。
資料觀察窗 • 按一下功能表項View > Debug Windows >Watch可以打開和關閉資料觀察窗。資料觀察窗用於顯示使用者想要觀察的變數或運算式值,使用者可以隨時增加或刪除觀察資料。觀察資料值可以按照十進位或者十六進位格式顯示。觀察資料值會跟隨使用者的每一步操作而自動重新計算和顯示。資料觀察窗有兩個頁面:“Watch 1”和“Watch 2”,每個頁面可以單獨輸入不同的資料。觀察資料名會跟隨專案自動存儲,當下一次打開同一個專案的時候,會自動調入原先存在的觀察資料名。
變數視窗 • 按一下功能表項View > Debug Windows > Variables可以打開和關閉變數視窗。變數視窗用於顯示全局以及局部變數資訊,並可修改變數值。變數視窗有兩個頁面:“Global”和“Local”,分別用於顯示總體變數和函數局部變數。變數值可以按照十進位或者十六進位格式顯示。變數值以及局部變數名會跟隨使用者的每一步操作而自動重新計算和顯示。當變數視窗中變數值有變化的時候,變數視窗會變紅顯示這些資料值。
呼叫堆疊視窗 • 按一下功能表項View > Debug Windows > Call Stack可以打開和關閉呼叫堆疊視窗。呼叫堆疊視窗用於顯示函數執行使用關係,函數參數值可以按照十六進位或者十進位格式顯示。最後使用的函數(即當前執行函數)在視窗最上部的第一行,按照使用關係依次往下排列,起始函數在視窗末的最後一行。
呼叫堆疊視窗 • 函數參數的名字、類型或值都可以單獨設定是否顯示。如果關閉所有函數參數顯示,將只顯示函數名字和返回類型。雙擊呼叫堆疊視窗的某一函數所在行,原始檔案窗會顯示出該函數使用函數堆疊中上一函數返回後將要執行的下一句程式碼,並在該原始碼行前面放置一藍色向右箭頭旗標(如下圖的青色圓圈包圍處),呼叫堆疊視窗同時會高亮顯示該函數堆疊函數資訊行。