- 51單片機應用基礎(C51版)
- 胡進德 丁如春 劉愛榮
- 8363字
- 2019-11-27 11:56:40
學習單元三 建立軟件實訓環境(1)——Keil軟件的安裝與使用
目前比較流行的51單片機開發軟件有德國Keil公司推出的Keil軟件。該軟件提供了包括C編譯器、宏匯編、鏈接器、庫管理和一個功能強大的仿真調試器等在內的完整開發方案,通過一個集成開發環境uVision IDE(即Integrated Development Environment),將這些部分組合在一起。通過Keil軟件,既可以對匯編語言源程序(ASM文件)進行匯編,也可對C語言源程序進行編譯,鏈接目標模塊與庫模塊以產生一個目標文件,最后生成HEX文件以便對程序進行調試等。目前該軟件使用的版本一般為uVision2或uVision3,統稱為uVision。Keil軟件為英文界面,要求初學者有較好的英文基礎。
一、Kei1軟件的安裝
可以從Keil公司及其代理公司處購得Keil軟件。如果想試用,可以到Keil公司的網站(http:/www.Keil.com)下載試用版本Eval版本。下載得到的Keil軟件是一個壓縮包,解壓后雙擊其中的Setup.exe即可安裝。
二、Kei1軟件的使用
Keil軟件的使用過程如下:
雙擊桌面uVision圖標,即可進入Keil軟件的集成開發環境,可以看到一個標準的Windows程序窗口。該程序窗口又由多個子窗口組成,如圖2-6所示。為了較為全面地了解窗口的組成,該圖顯示了盡可能多的子窗口,但在初次進入uVision IDE時,只能看到工程管理窗口、源程序窗口和輸出窗口。

圖2-6 uVision IDE的窗口組成
工程管理窗口有3個選項卡,分別是Files、Regs和Books,這三個選項卡分別顯示當前項目的文件結構、CPU的寄存器及部分特殊功能寄存器的值(在進入系統調試時才出現)和所選CPU的附加說明文件。如果是第一次啟動Keil,那么這三個選項卡全是空的。圖2-6中還有內存窗口、外圍設備對話框等,這些窗口和對話框在進入系統調試后才能看到。
1.新建工程
在單片機項目開發中,Keil使用工程(Project)這一概念將所有與項目開發相關的文件都加在一個工程中,只能對工程而不能對單一的源程序進行編譯/匯編和連接。
在圖2-6中選擇“Project—New Project...”,出現創建新工程的對話框,如圖2-7所示,要求給定一個工程名稱如“ONE LED FLASH”并保存。一般應把工程建立在與源文件相同的文件夾如“D:\ONE LED”中。

圖2-7 新建工程對話框
注意:工程名不用加擴展名(已有默認的擴展名uv2),單擊“保存”即可。
2.為工程選擇目標器件
進入下一步,為新建工程選擇目標單片機,如圖2-8所示。

圖2-8 選擇目標單片機
Keil支持所有400余種以8051/80C51為內核的單片機系列。可以根據需要來選擇合適的單片機,也可任選一種單片機,這里選擇Atmel公司的AT89S51:在圖2-8所示左側的Date base列表框中單擊Atmel展開,選擇其中的AT89S51。在其右邊的DescriPtion顯示區域中有關該單片機特性的一般性描述。在圖2-8中單擊“確定”按鈕出現圖2-9所示對話框。

圖2-9 對話框
圖2-9中提示是否將8051啟動代碼文件(Startup.a51)拷貝到工程文件夾并添加到工程中,點擊按鈕“否”后返回主界面。
3.為工程添加源程序
新建工程后返回到主界面時,在工程窗口的文件頁中,出現了“Target1”,前面有“+”號,點擊“+”號展開,可以看到下一層的“Source Group1”,這時的工程還是一個空的工程,里面什么文件也沒有,需要編寫源程序或為工程添加源程序。
1)編寫并保存源程序
uVision IDE內集成有一個文本編輯器,可以在uVision集成環境中直接進行源程序的輸入,輸入的源程序在源程序窗口顯示。該文本編輯器支持對匯編或C語言中關鍵字以變色顯示。在圖2-6中選擇“File—New...”,在源程序窗口出現一個新的文件輸入窗口,在該窗口輸入源程序,如【例2-1】中的匯編語言源程序。輸入完畢之后,選擇“File—Save/Save As”,給該源程序文件取名如“ONE LED FLASH.ASM”或“Hujinde.ASM”(文件名可任意取)并保存在文件夾如“D:\ONE LED”中,如圖2-10所示。

圖2-10 編寫并保存源程序
圖2-10所示的窗口中,左邊為工程管理窗口,右邊為源程序編輯窗口。在源程序編輯窗口中輸入【例2-1】中的源程序,至于該程序是怎樣編寫出來的,先暫且不管。【例2-1】程序中的每一行由兩部分組成:分號左邊的是指令代碼,分號及分號右邊部分是指令的注釋,注釋部分可以不錄入。
在輸入程序時要注意以下幾點:
1)程序中有冒號(:)、分號(;)以及圓點(.)等符號,這些符號必須在半角方式下錄入,否則,編譯/匯編時就會報錯。
2)程序中的空格可以是一個或多個空格,輸入指令時按Tab鍵可實現空格的錄入。
3)程序中,“MAIN”、“DELAY”、“LOOP1”為指令標號,即指令的符號地址。標號以冒號結尾,其后的冒號不可丟去。為便于閱讀,標號一般頂頭輸入,而指令一般退幾格后錄入。
4)不區分大小寫,即字符的大小寫等價。
需注意:給源程序取名時必須要加上擴展名,一般匯編程序均以“ASM”為擴展名。
(2)為工程添加源程序
要把剛才編寫好的源程序如“ONE LED FLASH.ASM”加入到工程中,需點擊“Source Group1”使其反白顯示,然后,點擊鼠標右鍵,出現一個下拉菜單,如圖2-11所示。
選中圖2-11中的“Add files to Group'Source Group1”,出現一個對話框,要求尋找源程序文件,如圖2-12所示。注意,該對話框下面的“文件類型”默認為C source file(*. c),也就是以C為擴展名的文件,而我們的文件是以asm為擴展名的,所以在列表框中找不到asm源文件,要將文件類型改掉,點擊對話框中“文件類型”后的下拉列表,找到并選中“Asm Source File(*.s*; *.src; *.a*),這樣,在列表框中就可以找到源程序asm文件了,雙擊源程序asm文件,將文件加入項目。

圖2-12 尋找源程序文件
注意:在asm文件加入項目后,該對話框并不消失,等待繼續加入其他文件,但初學者時常會誤認為操作沒有成功而再次雙擊同一文件,這時會出現一對話框,提示你所選文件已在列表中,此時應點擊“確定”,返回前一對話框,然后點擊“Close”即可返回主界面。返回后,點擊“Source Group 1”前的加號,會發現源程序asm文件已在其中。雙擊源程序文件名,即可打開該源程序。

圖2-11 將源程序添加到工程
4.設置工程的配置參數
工程建立好后,還要設置工程的配置參數,以滿足要求。首先點擊左邊Project窗口中的Target 1,使其反白顯示,然后,點擊鼠標右鍵,出現一個下拉菜單,如圖2-13所示。

圖2-13 設置工程配置參數
選中圖2-13中的“Options for target‘target1'”,即出現工程設置對話框中的Target頁面,如圖2-14所示。工程設置對話框比較復雜,共有10個頁面,但絕大部分設置項取默認值就行了。

圖2-14 工程設置對話框中的Target頁面
(1)設置對話框中的Target頁面,如圖2-14。
1)Xtal后面的數值是晶振頻率值,默認值是所選目標單片機的最高可用頻率值。該數值與最終產生的目標代碼無關,僅用于軟件模擬調試時顯示程序執行時間。正確設置該數值可使顯示時間與實際所用時間一致,一般將其設置成與你的硬件所用晶振頻率相同,如果沒必要了解程序執行的時間,也可以不設。
2)Memory Model用于設置RAM使用情況有三個選擇項:Small是所有變量都在單片機的內部RAM中;Compact是可以使用一頁外部擴展RAM; Larget則是可以使用全部外部的擴展RAM。
3)Code Rom Size用于設置ROM空間的使用,同樣也有三個選擇項。
Small模式:只用低于2k的程序空間;
Compact模式:單個函數的代碼量不能超過2k,整個程序可以使用64k程序空間;
Larget模式:可用全部64k空間。
4)Use on-chip ROM選擇項確認是否僅使用片內ROM(注意:選中該項并不會影響最終生成的目標代碼量)。
5)Operating項是操作系統選擇,Keil提供了兩種操作系統:Rtx tiny和Rtx full。關于操作系統是另外一個很大的話題了,通常我們不使用任何操作系統,即使用該項的默認值:None(不使用任何操作系統)。
6)Off Chip Code memory用以確定系統擴展ROM的地址范圍。
7)Off Chip xData memory用于確定系統擴展RAM的地址范圍,這些選擇項必須根據所用硬件來決定,由于新型51單片機一般不用擴展ROM和RAM,所以均不重新選擇,按默認值設置。
(2)設置對話框中的OutPut頁面,如圖2-15所示。
1)按鈕“Select Folder for objects”是用來選擇最終的目標文件HEX所在的文件夾,默認是與工程文件在同一個文件夾如“D:\ONE LED”中。
2)Name of Executable用于指定最終生成的目標文件HEX的名字,默認與工程的名字相同。
3)Creat Hex file用于生成可執行代碼文件HEX,默認情況下該項未被選中,如果要將程序寫入單片機,就必須選中該項,這一點是初學者易疏忽的,在此特別提醒注意。選中Debug information將會產生調試信息,這些信息用于調試,如果需要對程序進行調試,應當選中該項。Browse information是產生瀏覽信息,該信息可以用菜單view-→Browse來查看,這里取默認值。

圖2-15 工程設置對話框中的OutPut頁面
工程設置對話框中的其他各頁面與C51編譯選項、BL51連接器的連接選項等用法有關,這里均取默認值,不作任何修改。
5.編譯與連接工程
在設置好工程后,即可進行編譯、連接。編譯、連接及工程設置工具條見圖2-16。

圖2-16 編譯、連接及工程設置工具條
(1)編譯或匯編當前文件:若當前文件是匯編語言程序文件,則使用A51匯編器對匯編語言程序進行匯編處理;若當前文件是C語言源程序文件,則使用C51編譯器進行編譯處理。最終得到目標代碼HEX文件。
(2)建立目標文件:根據匯編或編譯得到的目標文件,并調用有關庫模塊,連接產生絕對地址的目標文件。如果在上次匯編或編譯過后又對源程序作了修改,將先對源程序進行匯編或編譯,然后再連接。
(3)重建全部:對工程中所有文件進行重新編譯、匯編處理,然后再進行連接以產生目標代碼。使用該按鈕可以防止由于一些意外情況(如系統日期不正確)而造成源文件與目標代碼不一致。
(4)停止建立:在建立目標文件的過程中,可以單擊該按鈕停止這一工作。
(5)工程設置:該按鈕用于對工程進行設置,其效果如同選擇“Project—Option for target‘target1'”。
以上建立目標文件的操作也可以通過選擇菜單“Project—Translate …”、“Project—Build target”、“Project—Rebuild All target files”和“Project—Stop Build”進行。
編譯過程中的信息將出現在輸出窗口中的Build頁中,如圖2-17所示。如果源程序中有語法錯誤,會有錯誤報告出現,雙擊該行,可以定位到出錯的位置。對源程序反復修改之后,如在輸出窗口顯示“…0 Error(s),0 Warning(s)”,提示獲得了名為“ONE LED FLASH.hex”的目標文件,該文件即可被寫入到單片機中。

圖2-17 編譯后Build頁中的信息提示
6.觀察數據和程序運行結果
前面我們學習了如何建立工程、匯編、連接工程,并獲得目標代碼,但是做到這一步僅僅代表源程序沒有語法錯誤,至于源程序中存在著的其他錯誤,必須通過調試才能發現并解決,事實上,除了極簡單的程序以外,絕大部分的程序都要通過反復調試才能得到正確的結果,因此,調試是軟件開發中重要的一個環節,下面將介紹常用的調試命令、在線匯編、各種設置斷點進行程序調試的方法,并通過實例介紹這些方法的使用。
1.Keil的調試命令、在線匯編與斷點設置
(1)常用調試命令。在對工程成功地進行匯編、連接以后,按Ctrl+F5或者使用菜單“Debug-→Start/Stop Debug Session”即可進入調試狀態,Keil內建了一個仿真CPU用來模擬執行程序,該仿真CPU功能強大,可以在沒有硬件和仿真器的情況下進行程序的調試,下面將要學的就是該模擬調試功能。不過在學習之前必須明確,模擬畢竟只是模擬,與真實的硬件執行程序肯定還是有區別的,其中最明顯的就是時序,軟件模擬是不可能和真實的硬件具有相同的時序的,具體的表現就是程序執行的速度和各人使用的計算機有關,計算機性能越好,運行速度越快。
進入調試狀態后,界面與編緝狀態相比有明顯的變化,Debug菜單項中原來不能用的命令現在已可以使用了,如圖2-18所示。另外,工具欄會多出一個用于運行和調試的工具條,如圖2-19所示,Debug菜單上的大部分命令可以在此找到對應的快捷按鈕,從左到右依次是復位、運行、暫停、單步、過程單步、執行完當前子程序、運行到當前行、下一狀態、打開跟蹤、觀察跟蹤、反匯編窗口、觀察窗口、代碼作用范圍分析、1#串行窗口、內存窗口、性能分析、工具按鈕等命令。

圖2-18 Debug菜單項

圖2-19 用于運行和調試的工具條
學習程序調試,必須明確兩個重要的概念,即單步執行與全速運行。全速執行是指一行程序執行完以后緊接著執行下一行程序,中間不停止,這樣程序執行的速度很快,并可以看到該段程序執行的總體效果,即最終結果正確還是錯誤,但如果程序有錯,則難以確認錯誤出現在哪些程序行。單步執行是每次執行一行程序,執行完該行程序以后即停止,等待命令執行下一行程序,此時可以觀察該行程序執行完以后得到的結果是否與我們寫該行程序所想要得到的結果相同,借此可以找到程序中問題所在。程序調試中,這兩種運行方式都要用到。使用菜單“STEP”或相應的命令按鈕或使用快捷鍵F11可以單步執行程序,使用菜單“STEP OVER”或功能鍵F10可以以過程單步形式執行命令,所謂過程單步,是指將匯編語言中的子程序或高級語言中的函數作為一個語句來全速執行。
按下F11鍵,可以看到源程序窗口的左邊出現了一個黃色調試箭頭,指向源程序的第一行(源程序的第一行“ORG 0000 H”是偽指令,即不是可執行的指令,故黃色調試箭頭實際指向源程序的第二行),如圖2-20所示。每按一次F11,即執行該箭頭所指程序行,然后箭頭指向下一行,當箭頭指向“LCALL DELAY”行時,再次按下F11,會發現,箭頭指向了延時子程序“DELAY”的第一行。不斷按F11鍵,即可逐步執行延時子程序。

圖2-20 調試窗口
通過單步執行程序,可以找出一些問題的所在,但是僅依靠單步執行來查錯有時是困難的,或雖能查出錯誤但效率很低,為此必須輔之以其他的方法,例如在軟件延時程序中的某一行程序要執行幾千甚至幾萬次才能達到延時目的時,如果用按F11的方法來執行完該程序行,顯然不合適,為此,可以采取以下一些方法:
第一種方法,用鼠標在子程序的最后一行“RET”點一下,把光標定位于該行,然后用菜單“Debug-→Run to Cursor line”(執行到光標所在行),即可全速執行完黃色箭頭與光標之間的程序行。
第二種方法,在進入該子程序后,使用菜單“Debug-→Step Out of Current Function”(單步執行到該函數外),使用該命令后,即全速執行完調試光標所在的子程序或子函數并指向主程序中的下一行程序(這里是“CLR P1.0”行)。
第三種方法,在開始調試時,按F10而非F11,程序也將單步執行,不同的是,執行到“LCALL DELAY”行時,按下F10鍵,調試光標不進入子程序的內部,而是全速執行完該子程序,然后直接指向下一行“CLR P1.0”。靈活應用這幾種方法,可以大大提高查錯的效率。
(2)在線匯編。在進入Keil的調試環境以后,如果發現程序有錯,可以直接對源程序進行修改,但是要使修改后的代碼起作用,必須先退出調試環境,重新進行編譯、連接后再次進入調試,如果只是需要對某些程序行進行測試,或僅需對源程序進行臨時的修改,這樣的過程未免有些麻煩,為此Keil軟件提供了在線匯編的能力,將光標定位于需要修改的程序行上,用菜單“Debug-→Inline Assambly…”即可出現如圖2-21所示的對話框,在“Enter New”后面的編緝框內直接輸入需更改的程序語句,輸入完后鍵入回車將自動指向下一條語句,可以繼續修改,如果不再需要修改,可以點擊右上角的關閉按鈕關閉窗口。

圖2-21 在線匯編對話框
(3)斷點設置。程序調試時,一些程序行必須滿足一定的條件才能被執行到(如程序中某變量達到一定的值、按鍵被按下、串口接收到數據、有中斷產生等),這些條件往往是異步發生或難以預先設定的,這類問題使用單步執行的方法是很難調試的,這時就要使用到程序調試中的另一種非常重要的方法——斷點設置。斷點設置的方法有多種,常用的是在某一程序行設置斷點,設置好斷點后可以全速運行程序,一旦執行到該程序行即停止,可在此觀察有關變量值,以確定問題所在。在程序行設置/移除斷點的方法是將光標定位于需要設置斷點的程序行,使用菜單“Debug-→Insert/Remove BreakPoint”設置或移除斷點(也可以用鼠標在該行雙擊實現同樣的功能);“Debug-→Enable/Disable Breakpoint”是開啟或暫停光標所在行的斷點功能;“Debug-→Disable All Breakpoint”暫停所有斷點;“Debug-→Kill All BreakPoint”清除所有的斷點設置。這些功能也可以用工具條上的快捷按鈕進行設置。
除了在某程序行設置斷點這一基本方法以外,Keil軟件還提供了多種設置斷點的方法,按“Debug-→Breakpoints…”即出現一個對話框,該對話框用于對斷點進行詳細的設置,如圖2-22所示。

圖2-22 斷點設置對話框
圖2-22中Expression后的編緝框內用于輸入表達式,該表達式用于確定程序停止運行的條件,這里表達式的定義功能非常強大,涉及到Keil內置的一套調試語法,這里不作詳細說明,僅舉若干實例,希望讀者可以舉一反三。
(1)在Experssion中鍵入a==0xf7,再點擊Define即定義了一個斷點,注意,a后有兩個等號,意即相等。該表達式的含義是:如果a的值到達0xf7則停止程序運行。除使用相等符號之外,還可以使用>、>=、<、<=、!=(不等于)、&(兩值按位與),&&(兩值相與)等運算符號。
(2)在Experssion后中鍵入Delay再點擊Define,其含義是如果執行標號為Delay的行則中斷。
(3)在Experssion后中鍵入Delay,按Count后的微調按鈕,將值調到3,其意義是當第三次執行到Delay時才停止程序運行。
(4)在Experssion后鍵入Delay,在Command后鍵入printf(“SubRoutine‘Delay'has been Called\n”)主程序每次調用Delay程序時并不停止運行,但會在輸出窗口Command頁輸出一行字符,即SubRoutine‘Delay'has been Called。其中“\n”的用途是回車換行,使窗口輸出的字符整齊。
(5)設置斷點前先在輸出窗口的Command頁中鍵入DEFINE int I,然后在斷點設置時同(4),但是Command后鍵入printf(“SubRoutine ‘Delay'has been Called %d times\n”, ++I),則主程序每次調用Delay時將會在Command窗口輸出該字符及被調用的次數,如SubRoutine‘Delay'has been Called 10 times。
對于使用C源程序語言的調試,表達式中可以直接使用變量名,但必須要注意,設置時只能使用全局變量名和調試箭頭所指模塊中的局部變量名。
2.Keil程序調試窗口
Keil提供的各種窗口如輸出窗口、觀察窗口、存儲器窗口、反匯編窗口、串行窗口等可以幫助我們觀察數據和段程序運行結果。
Keil軟件在調試程序時提供了多個窗口,主要包括輸出窗口(Output Windows)、觀察窗口(Watch&Call Statck Windows)、存儲器窗口(Memory Window)、反匯編窗口(Dissambly Window)、串行窗口(Serial Window)等。點擊菜單“Debug->Start/Stop Debug Session”進入調試模式后,可以通過菜單View下的相應命令打開或關閉這些窗口,如圖2-23所示。

圖2-23 菜單View下的程序調試窗口
圖2-24是輸出窗口、觀察窗口和存儲器窗口,各窗口的大小可以使用鼠標調整。進入調試程序后,輸出窗口自動切換到Command頁。該頁用于輸入調試命令和輸出調試信息。對于初學者,可以暫不學習調試命令的使用方法。

圖2-24 調試窗口(命令窗口、觀察窗口、存儲器窗口)
(1)存儲器窗口。存儲器窗口如圖2-25所示。存儲器窗口中可以顯示系統中各種內存中的值,通過在Address后的編緝框內輸入“字母:數字”即可顯示相應內存值,其中字母可以是C、D、I、X,分別代表代碼存儲空間、直接尋址的片內存儲空間、間接尋址的片內存儲空間、擴展的外部RAM空間,數字代表想要查看的地址。例如輸入D:0即可觀察到地址0開始的片內RAM單元值、鍵入C:0即可顯示從0開始的ROM單元中的值,即查看程序的二進制代碼。該窗口的顯示值可以以各種形式顯示,如十進制、十六進制、字符型等,改變顯示方式的方法是點鼠標右鍵,在彈出的快捷菜單中選擇,該菜單用分隔條分成三部分,其中第一部分與第二部分的三個選項為同一級別,選中第一部分的任一選項,內容將以整數形式顯示,而選中第二部分的Ascii項則將以字符型式顯示,選中Float項將相鄰四字節組成的浮點數形式顯示、選中Double項則將相鄰8字節組成雙精度形式顯示。第一部分又有多個選擇項,其中Decimal項是一個開關,如果選中該項,則窗口中的值將以十進制的形式顯示,否則按默認的十六進制方式顯示。Unsigned和Signed后分別有三個選項:Char、Int、Long,分別代表以單字節方式顯示、將相鄰雙字節組成整型數方式顯示、將相鄰四字節組成長整型方式顯示,而Unsigned和Signed則分別代表無符號形式和有符號形式,究竟從哪一個單元開始的相鄰單元則與你的設置有關,以整型為例,如果你輸入的是I:0,那么00H和01H單元的內容將會組成一個整型數,而如果你輸入的是I:1,01H和02H單元的內容全組成一個整型數,以此類推。有關數據格式與C語言規定相同,請參考C語言書籍,默認以無符號單字節方式顯示。第三部分的Modify Memory at X:xx用于更改鼠標處的內存單元值,選中該項即出現如圖2-26所示的對話框,可以在對話框內輸入要修改的內容。

圖2-25 存儲器數值各種方式顯示選擇

圖2-26 存儲器的值的修改
(2)工程窗口寄存器頁。圖2-27是工程窗口寄存器頁的內容,寄存器頁包括了當前的工作寄存器組和系統寄存器,系統寄存器組有一些是實際存在的寄存器如A、B、DPTR、SP、PSW等,有一些是實際并不存在或雖然存在卻不能對其操作的如PC等。每當程序中執行到對某寄存器的操作時,該寄存器會以反色(藍底白字)顯示,用鼠標單擊然后按下F2鍵,即可修改該值。

圖2-27 工程窗口寄存器頁
(3)觀察窗口。觀察窗口是很重要的一個窗口,工程窗口中僅可以觀察到工作寄存器和有限的寄存器如A、B、DPTR等,如果需要觀察其他的寄存器的值或者在高級語言編程時需要直接觀察變量,就要借助于觀察窗口了。
(4)外圍接口。為了能夠比較直觀地了解單片機中定時器、中斷、并行端口、串行端口等常用外設的使用情況,Keil提供了一些外圍接口對話框,通過Peripherals菜單選擇,該菜單的下拉菜單內容有Interrupt(中斷)、I/O Ports(并行I/O口)、Serial(串行口)、Timer(定時/計數器)這四個外圍設備菜單,如圖2-28所示。打開這些對話框,列出了外圍設備的當前使用情況,各標志位的情況等,可以在這些對話框中直觀地觀察和更改各外圍設備的運行情況。

圖2-28 外圍設備接口對話框
一般情況下,我們僅在單步執行時才對變量的值的變化感興趣,全速運行時,變量的值是不變的,只有在程序停下來之后,才會將這些值最新的變化反映出來,但是,在一些特殊場合下我們也可能需要在全速運行時觀察變量的變化,此時可以點擊“View-→Periodic Window Updata”(周期更新窗口),確認該項處于被選中狀態,即可在全速運行時動態地觀察有關值的變化。但是,選中該項,將會使程序模擬執行的速度變慢。