基本的嵌入式開發調試工具覆蓋
上一次,我們看了用于調試嵌入式系統的高級工具,包括仿真器(in-circuit emulator,ICE)、芯片級的調試器(特指BDM和JTAG仿真器),以及ROM監控器。但是許多嵌入式的項目能夠完美地使用諸如發光二極管(LED)、串口和示波器這樣的簡單設備調試。
中層、中產和中堅分子。他們的工作強度大大超出了常規的“敬業”標準 串行口許多嵌入式的主板都具有一個RS232串行口,它允許你將調試信息傳送到PC工作站上標準的COM口上。如果你的嵌入式對象還有剩余的內存空間,你就可以使用標準的puts()、printf()或者相等同的函數來發送有用的調試信息。
如果你正在使用Windows工作站,你就只需要運行一個終端仿真器程序來顯示來自的嵌入式對象的調試信息。一個比較好的程序是HyperTerminal,它是Windows操作系統自帶的。我覺得一個更好的(免費)程序是Tera Term(Pro)。
發光二極管一個簡單的狀態LED在某些系統上可能被當作奢侈品,但是它能夠極為有效地幫助調試。(至少我會認為沒有什么別的東西能夠提供類似的功能。)
除了看到LED在代碼某個點處開始發光或者閃爍所帶來的提示之外,你還可以使用長或者短閃爍來表示大量的錯誤和狀態報告——這只需要一點點想象力。這不是藝術的表現,但是很多嵌入式系統的開發人員只有一兩個或者稍多的LED來調試小型嵌入式系統。
示波器示波器可能是基本調試輔助工具中最強大的一個,而且它不僅僅只能夠用于調試硬件。
一個基本的模擬示波器就足夠了,但是有數字示波器會更好。好的示波器會有兩個或者更多的頻道,再加上一個額外的外部觸發脈沖輸入頻道,這個頻道帶有綜合觸發系統和延遲掃描。示波器能夠讓你看到你的程序對外部端口和外設的訪問,并能夠監測軟件的活動。
下面是在你調試嵌入式軟件的時候應用示波器的幾種方法:
對你需要觀察的針對活動的事件使用一個空余的外部輸出插腳,或者用這個插腳來顯示活動的情況。 在函數開始的時候設置插腳,再在結束的時候拿掉它,以測量函數的執行時間。你可以以類似的方式檢測中斷的潛伏時間。 如果CPU卡在了循環里,那么就要檢查地址總線的狀態,以大概地查看CPU卡在哪個地方了(當然,這要假設你正在使用外部內存)。 檢測中斷路,以查找阻塞的中斷,或者檢測外設未正常初始化而導致的中斷缺失。 大多數調試工具都無法在系統初始啟動的時候提供任何幫助,但是你可以在系統周期性復位的時候使用示波器,用以觀察地址和數據總線的活動,以追蹤CPU在復位之后的活動進展。 不要節約 最后,不要在高質量的調試工具上節約。盡管這些基本的工具都是極其有用的,但是更加昂貴和綜合的工具如果能夠節省你數周昂貴的調試和工程努力,那么它們就總是物有所值的。
:炒飯
歡迎評論或投稿
南京哪家男科好天津專業治療前列腺炎醫院
南京子宮內膜炎治療多少錢
- 他以“甲骨文”寫高考作文,意外被985考試成績,現在卻活成了小丑
- 金科股份:股份股東被強制平倉,被動減持4524.47萬股
- 綠碼在手,暢行無阻,五款2022綠盤計時碼表新形式
- 兩味藥不輕白發脫發,養肝血健脾胃,忍不住推薦給你
- 《MHR:SUN BREAK》顯現bug導致閃退 官方聲明
- 央行:合理確定房貸最低首付款%、最低貸款利率
- 要點發揮巡察職能 推進民生工程建設
- 48歲電視名嘴康輝,成婚“電視編導”丁克20年0緋聞,今依舊甜蜜
- 網評“最難吃的5種玉米”,全部都吃過的,敬你是一條漢子
- 米體:米蘭深入會面引進貝拉爾迪,薩索洛要價3000萬歐
- 寶寶出生后不哭,醫生為什么要“打屁股”?看下回這篇你就清楚了!
- 蒸饅頭加不加食用堿?要分2種情形,加錯了饅頭顏色發黃,堿味重