KEIL軟仿真技巧談_第1頁
KEIL軟仿真技巧談_第2頁
KEIL軟仿真技巧談_第3頁
KEIL軟仿真技巧談_第4頁
KEIL軟仿真技巧談_第5頁
已閱讀5頁,還剩6頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、KEIL軟仿真技巧談1廢話少說,接上一章,話說建立了仿真環(huán)境后,我們就可以實(shí)現(xiàn)軟件仿真了。在仿真狀態(tài)下ViewView 菜單有堆東西:,Status Earw fils Tmlhwuild Tcolbr5 Delug ToolbiYProject Window區(qū)Output Wind出Source Browser Bi sassmbly tfindo*Vat ch業(yè)Call t ack 1 indow Msnor WindowCode C orverag W iitdov氐Ferforniflnc& Analyzer Window5ynboL WinitwSerial WiMw MlS

2、erial Window #Sexi al Window #3尸尸Tojlbox/ PexioJ.i c tfindow Vpditt5 Workbo ok Mo dew Incluie- Dp ndncisOp tOILS,頭 4 4 個(gè) BARBAR 都是普通的工具欄了。這里說一下DebugDebug ToolBarToolBar , ,就是調(diào)試工具欄:|瞻蘭孑 6H6H登踱;:然窟警尊口籽分商單片機(jī)復(fù)位全速運(yùn)行運(yùn)行中 STOPSTOPF+F+單步運(yùn)行,可以進(jìn)入函數(shù)內(nèi)運(yùn)行導(dǎo)單步運(yùn)行,可以跳過函數(shù)如果運(yùn)行進(jìn)某個(gè)函數(shù),此鍵能直接跳出當(dāng)前函數(shù)運(yùn)行到你的光標(biāo)處. .A,、,一, ,“ ,、.,、,

3、 ,., ,_ ,.找回你的 PCPC 指針:當(dāng)你的程序有好幾個(gè)文件的時(shí)候,有時(shí)候你會不知道運(yùn)行到哪里去了,按這個(gè)你就可以找會你的PCPC 指針?biāo)谔幜恕?土f ill .、. . . .y y 仿真記錄,相信很少人用到,其實(shí)這個(gè)東西可以記錄下你的仿真過程,然后回放。從回放的 錄象 中你可以觀祭每條指令的狀態(tài),例如對應(yīng)的運(yùn)行時(shí)間,各個(gè)存放器的值。個(gè)人覺得這個(gè)功能在調(diào)試OSOS 的時(shí)候特有用:色 ASMASM 弋碼和 C C 代碼之間的轉(zhuǎn)換,這個(gè)也是 NBNB 的調(diào)試?yán)?,一般隱藏的 BUBU 砒 ASAS無所遁形。Bebug k岡WATCIffiWATCIffi 口,如果你不知道什么叫watc

4、hwatch 窗口,那證明你以前一定沒寫過程序。骸 挺逗的功能,可以看到每個(gè)函數(shù)有多少條指令,和你已經(jīng)運(yùn)行了某個(gè)函數(shù)的百分之多少代碼。我從來不用這個(gè)東西的,呵呵昏串口顯示窗,如果你的程序有串口程序,那么單片機(jī)串口的輸出就顯示在這個(gè)窗上,如果你要對單片機(jī)串口輸入數(shù)據(jù),就在串口窗上打字就是 了。MemoryMemory Window,Window,存儲器觀察窗,這里可以看code,data,xdatacode,data,xdata 對應(yīng)的數(shù)據(jù)旨各函數(shù)占用時(shí)間的比例,個(gè)人感覺用處不大,在全速運(yùn)行的時(shí)候會動態(tài)顯示,用來調(diào)試UC/OSUC/OS 的時(shí)候可以看到各個(gè)任務(wù)占用的時(shí)間比。不過你需要先把你要觀察

5、的函數(shù)添加到表上才可以用。尸 這個(gè)東東一般沒用。好了,上面一堆東西,還是具體說說比擬復(fù)雜的吧,其它東西你用過就自然會的了。1 1。投仿真記錄,這個(gè)在軟件仿真的時(shí)候有, 至于硬件仿真就看你仿真器是否支持咯。當(dāng)你需要記錄的時(shí)候,就按世主,運(yùn)行一段時(shí)間了,就按那么剛剛運(yùn)行過的整段程序就會重現(xiàn)你眼前:-13C:0 x0012DHFDLJNZ-12C:0 x0011MOV-11C:0 x0012D8FDDJNZ-10 C:0zQ014753107 MOV-9C: 0t00 1702001ALJMP18 void main(void)-8C:0z0biA120025LCALL3! void initTim

6、er(voidJ-7C:0KQ025753901MOV6: THO=0d8;-&C: 0 x0028753CDEiMOV7 1靠jfribx f 0 :-5C:DK002B7SSAF0MOV3 3- -I Ik k-4C:aK0D2E2)RET21tTR隹=1:-3C:UxOOWD2SCSETS你可以選擇當(dāng)前灰色區(qū)域的所有指令,窗口都會顯示那條指令對應(yīng)的存放器值等信息。Volutt-E-ege_rO0 x00rlQuOQ*OKOOr30 x00r40 x00r50 x00rB0 x00r7OsOO:-SyeOirOObOKOOEP0 x09CI皿dptr0 x0000TG iC;QxW

7、lAsit-iE389&色e0.00038900氏)5WOHOORO,C:0011既o.qROC:oonSF(0H1).#0 x07main(C:001A)initTiinerC: 0025)TMOD(085).#OQ1THD(Qx8C),#DsD8TLQfOSA) ,#B;(QxFOJTM(Os:03. 4)ET0QDJA8. 1)EA(0A8,7)傘;r. x u = x ;-2C:0 x00 IFD2A9SETB23:EA=1;-1C:0 x0021D2AFSETS24: wh ile(1j;)C: 0 x002380FESJMPC:00233 : void initTimer

8、fvoidl2 2。 原觀察變量窗,這里可以用來觀察全局變量和局部變量的,不過要你預(yù)先手動添加。具體方法就是找到你要觀察的變量,然后點(diǎn)右鍵添加進(jìn)指定 的 WATCWATC 窗口,如下列圖:n neUOUO u-u- c c c-c- ?-?-CfC一蓋路B BToggle BoolonarkShow Disassembly at OaFFOOOOlFSet Program CounterInsert?*inclxide #1.-I;I酩 Flile(l);添加后翻開 WATCWATC 窗口就看到你剛剛的變量了:顯示的數(shù)制可以是十進(jìn)制和十六進(jìn)制的,只要你在當(dāng)前變量上點(diǎn)右鍵選擇:3 3。Memor

9、yMemory Window,Window,這里可以看到個(gè)存儲器的值,只需要在窗口上敲你需要顯示的變量區(qū)和地址:idirEEM:C:0KD000: D2 00 OE 75 8C D8 75 8A FO 32 0D 02 0D 03 78 7F E4 F6 D8 ED C:0KD014: 75 81 07 02 00 LA 1200 25 D2 8C E2 A9 D2 AF 90 FE 75 89 01 C: 0 x0028: 75 0C D3 75 SA F0 22 DO 00 00 00 LIO 00 00 00 0i0 00 00Q0 OU C:0s003C; 00 00 0D 00 00

10、 00 DC 00 00 00 00 00 00 00 00 0D 00 00叩n c . nn nn n c cc nn ccccN N C Hnr。cm m m m n白cni九 c cc一fl.Plennory #1 X Memory #2 Memory #3 Memory #4 /不同的英文字頭對應(yīng)不同的區(qū)域c:c:代碼區(qū),也就是 ROMROMd:d: datadata 區(qū),就是片內(nèi) RAMRAMx:x: xdataxdata 區(qū),片外 RAMRAM如果你想修改某個(gè)區(qū)的值,只需要點(diǎn)右鍵ModifyModify MemoryMemory atat xxxxxx就可以修改了:1D1UU = UX 1 ;759901MTHOOsdC;75OCD0MCTT.n=nxFn:敏DisasEmbl_ .DficintLUnsignedSL印喧dAsciiFloatDoubleaddress:D;OKOO :D:0 xl5:D:0z2A:D:03F :790000a ao oc cn no oo oo oc co oo ol-l_ DI 00I OD i 00Moll y ffl emorjratDzflxOln

溫馨提示

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

評論

0/150

提交評論