你的單片機(jī)程序怎么調(diào)試?我教你用Keil uVision2軟件如何調(diào)試資料下載
2021-04-16 |
pdf |
114.28KB |
次下載 |
3積分
資料介紹
先說一個(gè)概念:調(diào)試,在企業(yè)程序設(shè)計(jì)里(我把企業(yè)商務(wù)類型的軟件開發(fā)叫企業(yè)程序設(shè)計(jì),把單片機(jī)與驅(qū)動(dòng)程序這樣接觸底層匯編與硬件相關(guān)的程序設(shè)計(jì)叫底層程序設(shè)計(jì)),調(diào)試一般都用來跟蹤變量的賦值過程,以及查看內(nèi)存堆棧的內(nèi)容,查看這些內(nèi)容的目的在于觀察變量的賦值過程與賦值情況從而達(dá)到調(diào)試的目的。由于企業(yè)程序的宿主就是開發(fā)它的計(jì)算機(jī)本身,因此企業(yè)程序設(shè)計(jì)比起底層程序設(shè)計(jì),特別是單片機(jī)的程序設(shè)計(jì)調(diào)試來的更直觀,調(diào)試也更方便。
單片機(jī)的程序設(shè)計(jì)調(diào)試分為兩種,一種是使用軟件模擬調(diào)試,意思就是用開發(fā)單片機(jī)程序的計(jì)算機(jī)去模擬單片機(jī)的指令執(zhí)行,并虛擬單片機(jī)片內(nèi)資源,從而實(shí)現(xiàn)調(diào)試的目的,但是軟件調(diào)試存在一些問題,如計(jì)算機(jī)本身是多任務(wù)系統(tǒng),劃分執(zhí)行時(shí)間片是由操作系統(tǒng)本身完成的,無法得到控制,這樣就無法時(shí)時(shí)的模擬單片機(jī)的執(zhí)行時(shí)序,也就是說 ,不可能像真正的單片機(jī)運(yùn)行環(huán)境那樣執(zhí)行的指令在同樣一個(gè)時(shí)間能完成(往往要完成的比單片機(jī)慢)。為了解決軟件調(diào)試的問題,第二種是硬件調(diào)試,硬件調(diào)試其實(shí)也需要計(jì)算機(jī)軟件的配合,大致過程是這樣的:計(jì)算機(jī)軟件把編譯好的程序通過串行口、并行口或者USB口傳輸?shù)接布{(diào)試設(shè)備中(這個(gè)設(shè)備叫仿真器),仿真器仿真全部的單片機(jī)資源(所有的單片機(jī)接口,并且有真實(shí)的引腳輸出),仿真器可以接入實(shí)際的電路中,然后與單片機(jī)一樣執(zhí)行。同時(shí),仿真器也會(huì)返回單片機(jī)內(nèi)部內(nèi)存與時(shí)序等情況給計(jì)算機(jī)的輔助軟件,這樣 就可以在軟件里看到真實(shí)的執(zhí)行情況。不僅如此,還可以通過計(jì)算機(jī)斷的軟件實(shí)現(xiàn)單步、全速、運(yùn)行到光標(biāo)的常規(guī)調(diào)試手段。
圖1:仿真器
總結(jié)一下兩者的不同與相同:
相同點(diǎn):
1:都可以檢測單片機(jī)執(zhí)行時(shí)序下的片內(nèi)資源情況(如R0-R7 、PC計(jì)數(shù)器等)
2:可以實(shí)現(xiàn)斷點(diǎn)、全速、單步、運(yùn)行到光標(biāo)等常規(guī)調(diào)試手段。
不同:
1:軟件調(diào)試無法實(shí)現(xiàn)直接連接硬件電路的調(diào)試,只能通過軟件窗口虛擬硬件端口的電平輸出情況而仿真器可以實(shí)現(xiàn)與單片機(jī)一樣的功能的硬件連接,從某種意義上說這個(gè)時(shí)候仿真器就是一個(gè)單片機(jī)。
2:軟件調(diào)試執(zhí)行單片機(jī)指令的時(shí)間無法與真實(shí)的單片機(jī)執(zhí)行時(shí)間畫上等號(hào),也就是說如果一個(gè)程序在單片機(jī)中要執(zhí)行300us,可能在計(jì)算機(jī)中執(zhí)行的時(shí)間可能會(huì)比這個(gè)長很多,而且無法預(yù)料。仿真器則是完全與單片機(jī)相同。
3:軟件調(diào)試只能是一種初步的,小型工程的調(diào)試,比如一個(gè)只有幾百上千行的代碼的程序,軟件調(diào)試能很好的完成,如果是一個(gè)協(xié)調(diào)系統(tǒng),可能還需要借助幾個(gè)單片機(jī)仿真器和相關(guān)的儀器才能解決。
4:軟件仿真不需要額外花錢,而硬件需要,一個(gè)仿真器一般都上千元,同時(shí)可以仿真許多種單片機(jī)的工作。
最后,調(diào)試一般都是在發(fā)生錯(cuò)誤與意外的情況下使用的,如果程序能正常執(zhí)行調(diào)試很多時(shí)候是用不上的,所以最高效率的程序開發(fā)還是程序員自己做好規(guī)范,而不是指望調(diào)試來解決問題。
下面將具體介紹如何使用Keil uVision 來軟件調(diào)試單片機(jī)程序。
首先:打開一個(gè)已經(jīng)編譯通過的單片機(jī)項(xiàng)目(如何新建與編譯單片機(jī)程序項(xiàng)目這里省略)
選擇Debug下面的Start/Stop Debug Session,這個(gè)選項(xiàng)可以打開調(diào)試也可以關(guān)閉調(diào)試
接下來看到的窗口就是調(diào)試窗口了:
下面具體說說相關(guān)子窗口的功能:
1:左側(cè)的ProjectWorkspace
Regs是片內(nèi)內(nèi)存的相關(guān)情況值,Sys是系統(tǒng)一些累加器、計(jì)數(shù)器等。Regs很簡單就不多說。具體介紹一下Sys
a 累加器ACC,往往在運(yùn)算前暫存一個(gè)操作數(shù)(如被加數(shù)),而運(yùn)算后又保存其結(jié)果(如代數(shù)和)。
b 寄存器B ,主要用于乘法和除法操作
sp
sp_max
dptr 數(shù)據(jù)指針DPTR
PC $
states 執(zhí)行指令的數(shù)量
sec 執(zhí)行指令的時(shí)間累計(jì)(單位 秒)
psw 程序狀態(tài)標(biāo)志寄存器PSW,八位寄存器,用來存放運(yùn)算結(jié)果的一些特征,如有無進(jìn)位、借位等。
p 奇偶標(biāo)志P。反映累加器ACC內(nèi)容的奇偶性,如果ACC中的運(yùn)算結(jié)果有偶數(shù)個(gè)1(如11001100B,其中有4個(gè)1),則P為0,否則,P=1。
f1
ov 溢出標(biāo)志位OV。MCS-51反映帶符號(hào)數(shù)的運(yùn)算結(jié)果是否有溢出,有溢出時(shí),此位為1,否則為0。
rs
f0
ac 輔助進(jìn)位標(biāo)志AC。又稱半進(jìn)位標(biāo)志,它反映了兩個(gè)八位數(shù)運(yùn)算低四位是否有半進(jìn)位,即低四位相加(或減)有否進(jìn)位(或借位),如有則AC為1狀態(tài),否則為0。
cy 進(jìn)位標(biāo)志CY(PSW7)。它表示了運(yùn)算是否有進(jìn)位(或借位)。如果操作結(jié)果在最高位有進(jìn)位(加法)或者借位(減法),則該位為1,否則為0
由于PSW存放程序執(zhí)行中的狀態(tài),故又叫程序狀態(tài)字?運(yùn)算器中還有一個(gè)按位(bit)進(jìn)行邏輯運(yùn)算的邏輯處理機(jī)(又稱布爾處理機(jī))
根據(jù)指令執(zhí)行的不同上述值會(huì)有相應(yīng)的變化,也正是為了監(jiān)測這些在單片機(jī)中看不到的值而達(dá)到調(diào)試的目的。
雖然軟件調(diào)試無法實(shí)現(xiàn)硬件調(diào)試那樣的信號(hào)輸出,但是可以通過軟件窗口的模擬監(jiān)測輸出信號(hào)的高低電平以及單片機(jī)相關(guān)端口的變化。
上圖所示,Port0,Port1,Port2,Port3就對(duì)應(yīng)于單片機(jī)的四個(gè)P0,P1,P2,P3 口,共32個(gè)針腳。
這是全部打開后的效果。
有了輸出,就應(yīng)該有輸入的設(shè)置:
這個(gè)按鈕可以打開輸入預(yù)設(shè)窗口,輸入值窗口如下:
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 51單片機(jī)入門——Keil uVision4的使用
- UC-002:使用Keil uVision2 IDE用C語言開發(fā)
- Keil程序調(diào)試窗口資料下載
- Keil軟件使用和調(diào)試學(xué)習(xí)課件免費(fèi)下載 3次下載
- Keil uVision2中文版應(yīng)用程序合集免費(fèi)下載 0次下載
- keil uvision2應(yīng)用程序和資料合集免費(fèi)下載 0次下載
- 單片機(jī)開發(fā)環(huán)境keil uvision4應(yīng)用程序免費(fèi)下載 37次下載
- 單片機(jī)多功能調(diào)試助手應(yīng)用程序軟件和程序資料免費(fèi)下載 19次下載
- Keil uVision2入門教程免費(fèi)下載(單片機(jī)應(yīng)用開發(fā)軟件) 11次下載
- 單片機(jī)高級(jí)語言編程與_uVision2應(yīng)用實(shí)踐 4次下載
- keil C51 uVision2安裝方法 7次下載
- Keil uVision2 107次下載
- keil uvision2使用教程
- Keil uVision2 教程,uVision2教程
- keil uvision2中文版keil uvision2 0次下載
- 如何用keil給單片機(jī)燒錄程序 3796次閱讀
- 51單片機(jī)燒錄軟件怎么用 1397次閱讀
- 嵌入式程序基于源代碼仿真調(diào)試 1314次閱讀
- 如何創(chuàng)建51單片機(jī)KEIL工程步驟 3290次閱讀
- 單片機(jī)的工控調(diào)試 1152次閱讀
- 單片機(jī)C語言軟件開發(fā)系統(tǒng)Keil C51的使用教程 9258次閱讀
- STM32單片機(jī)中OBG調(diào)試接口的介紹 5720次閱讀
- 單片機(jī)C語言有哪些優(yōu)越性?如何建立一個(gè)Keil C51項(xiàng)目 1.2w次閱讀
- C51單片機(jī)數(shù)據(jù)類型的具體定義及應(yīng)用 1.6w次閱讀
- 51單片機(jī)編程環(huán)境的搭建及代碼編寫的方法 2.3w次閱讀
- 介紹利用Keil的軟件仿真功能來實(shí)現(xiàn)51單片機(jī)串口調(diào)試用戶程序的方法 3w次閱讀
- 如何使用Keil3開發(fā)51單片機(jī)程序 7345次閱讀
- keil uvision2中文版|keil uvision2漢化補(bǔ)丁下載 1w次閱讀
- keil uvision2下載|keil uvision2漢化免費(fèi)版下載 1.1w次閱讀
- 單片機(jī)Keil軟件仿真與調(diào)試技巧 6w次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德爾著
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論