點擊 File,如圖,選擇 New Project,將出現新建工程向導部 分,在此可以設置文件名(Name)和保存路徑(Path)
Proteus8.0 版本自身支持匯編語言,故先以匯編語言為例。 由于前面已經設置過外部代碼編譯器,所以此時工程包含 Source Code(源代碼),如
Proteus8.0 或以上版本自帶源代碼編輯、編譯器,所以不再需要外部文本編輯器。 具體操作界面如圖所示,在指定位置(Write your code here)進行編碼。
下的 Build Project 或者 Rebuild Project 編譯固件。 如果代碼錯誤,系統會自動提示哪行代碼出現錯誤,比如下圖:
系統自動生成名為 Debug.hex 的文件,并自動拷入到前面的原理圖中,點擊按鈕即 可仿真運行。這也是 Proteus8.0 版本與以往版本的不同之處,該版本不再需要用 Keil 編程后 生成.Hex 文件再手動拷入到原理圖中,一切都是自動完成的,節約了很多時間。
如果現在點擊運行程序,程序執行到斷點代碼處將自動停止。 到達斷點后,可以通過源代碼窗口右上角或 VSM Studio 調試菜單中的常用命令單步執行
如果用 C51 編程,則代碼的調試與匯編語言代碼的調試十分相似,具體如下: 首先,由于本人電腦沒有安裝有關 C51 編譯的軟件,故用 Proteus8.0 版本本身自帶的一
此時進行仿真,結果運行到斷點處便會停止。 如果需要查看程序執行的細節,具體到每一條指令的執行過程,則可以在反匯編代碼中
Keil 是德國 Keil 公司(ARM 公司收購)現已被開發的 8051 單片機軟件開發平臺,經過 不斷升級,現已經成為一個重要的單片機開發平臺。Keil 界面不復雜,操作也不困難,很 多優秀程序都是在 Keil 的平臺上編寫出來的。Keil 是一個重要的單片機語言開發軟件平臺, 用戶群極為龐大。
(1)Keil 的μVision3 可進行純粹的軟件仿真(仿真軟件程序,不接硬件電路);也可 以利用硬件仿真器,搭接上單片機硬件系統,在仿真器中載入項目程序后進行實時仿真;還 可以使用μVision3 的內嵌模塊 Keil Monitor-51,在不需要額外的硬件仿真器的條件下, 搭接單片機硬件系統對項目程序進行實時仿真。
(2)μVision3 調試器具備所有常規源代碼級調試,符號調試特性以及歷史跟蹤,代 碼覆蓋,復雜斷點等功能。Keil μVision3 可以編輯、編譯匯編語言、C51 語言,連接定位 目標文件和庫文件,創建.hex 文件,調試目標程序等。
前面介紹了 Proteus 下完成原理圖設計文件后,再在 keil μVision3 下編寫 C51 程序, 經過調試、編譯最終生成.hex 文件后,在 Proteus 下把.hex 文件載入虛擬單片機中,然后 進行系統聯調。如果要修改程序,需再回到 keilμVision3 下修改,再經過調試、編譯,新 生成.hex 文件,重復上述過程,直至系統正常運行為止。但是對于較為復雜的程序,如果 沒有達到預期效果,這時可能需要 Proteus 與 KeilμVision3 進行聯合調試。
首先打開 Proteus 需要聯調的程序文件,但不要運行,然后選中“調試”菜單中的“使 用遠程調試監控”選項,如下圖所示。使得 KeilμVision3 能與Proteus 進行通信。
在 Debug 選項卡中選定右邊的“Use”及其中的選項“Proteus VSM Simulator”,如果 Proteus 與 Keil C 安裝在同一臺計算機中,右邊“Setting”中的Host 與 Port 可保持默認 值 127.0.0.1 與 8000 不變,如圖所示。在跨計算機調試時則需要進行相應的修改。
會自動運行,出現的聯調界面如圖 4-4 所示。左半部分為 Keil μVision3 的調試界面,右 半部分是 Proteus ISIS 的界面。如果希望觀察運行過程中某些變量的值或者設備狀態,需 要在 Keil μVision3 中恰當使用各種 Step In/ Step Over/ Step Out/ Run To Cursor Line 及 Breakpoint 進行跟蹤,來觀察右面的虛擬硬件系統運行的情況。總之,需要把 Keil μVision3 中的各種調試手段,如單步、跳出、運行到當前行、設置斷點等恰當地配合來進 行單片機系統運行的軟硬件聯調。
需要說明的是,聯調方式不支持需要調試的程序工程的中文名字,因此應將中文名字改 為英文名字,例如,需將 “流水燈.Uv2”工程文件的名字改為英文字符的名字“LSD.Uv2”。
需要注意的是,這種聯調方式在有些場合并不適用。例如鍵盤矩陣掃描時,就不能用單 步跟蹤,因為程序運行到某一步驟時,如果單擊按鍵后,再到 KeilC 中繼續單步跟蹤,這 時按鍵早已釋放了。又如程序中某些函數模擬了訪問某個芯片的程序,如果在內部單步跟蹤, 這樣也會失去芯片時序的仿真模擬,跟蹤也是達不到效果的。
切換到原理圖部分,在左邊的部分選擇電壓探針圖標,選擇 VOLTAGE。接下來在編輯 窗口單擊,開始進行探針的放置,即移動鼠標到想要放置探針的位置,左鍵單擊即可,如圖:
歡迎光臨 (http://www.raoushi.com/bbs/) | Powered by Discuz! X3.1 |