單片機(jī)開(kāi)發(fā)過(guò)程中硬件調(diào)試技巧
執(zhí)行程序后,就可以利用示波器觀察芯片的片選信號(hào)引出腳(用示波器掃描時(shí)間為1μs/每格檔),這時(shí)應(yīng)看到周期為數(shù)微秒的負(fù)脈沖波形,若看不到則說(shuō)明譯碼信號(hào)有錯(cuò)誤。
對(duì)于電平類(lèi)信號(hào),觀測(cè)起來(lái)就比較容易。例如對(duì)復(fù)位信號(hào)觀測(cè)就可以直接利用示波器,當(dāng)按下復(fù)位鍵時(shí),可以看到8031的復(fù)位引腳將變?yōu)楦唠娖?一旦松開(kāi),電平將變低。
總而言之,對(duì)于脈沖觸發(fā)類(lèi)的信號(hào)我們要用軟件來(lái)配合,并要把程序編為死循環(huán),再利用示波器觀察;對(duì)于電平類(lèi)觸發(fā)信號(hào),可以直接用示波器觀察。
下面結(jié)合在自動(dòng)配料控制系統(tǒng)中鍵盤(pán)、顯示部分的調(diào)試過(guò)程來(lái)加以說(shuō)明。本系統(tǒng)中的鍵盤(pán)、顯示部分都是由并行口芯片8155擴(kuò)展而成的。8155屬于可編程器件,因而很難劃分硬件和軟件,往往在調(diào)試中即使電路安裝正確沒(méi)有一定的指令去指揮它工作,也是無(wú)法發(fā)現(xiàn)硬件的故障。因此要使用一些簡(jiǎn)單的調(diào)試程序來(lái)確定硬件的組裝是否正確、功能是否完整。在本系統(tǒng)中采取了先對(duì)顯示器調(diào)試,再對(duì)鍵盤(pán)調(diào)試。
(1)顯示器部分調(diào)試為了使調(diào)試順利進(jìn)行,首先將8155與LED顯示分離,這樣就可以用靜態(tài)方法先測(cè)試LED顯示,分別用規(guī)定的電平加至控制數(shù)碼管段和位顯示的引腳,看數(shù)碼管顯示是否與理論上一致。不一致,一般為L(zhǎng)ED顯示器接觸不良所致,必須找出故障,排除后再檢測(cè)8155電路工作是否正常。對(duì)8155應(yīng)進(jìn)行編程調(diào)試時(shí),分為兩個(gè)步驟:第一,對(duì)其進(jìn)行初始化(即寫(xiě)入命令控制字,最好定義為輸出方式)后,分別向PA、PB、PC三個(gè)口送入#0FFH,這時(shí)可以利用萬(wàn)用表測(cè)試各口的位電壓為3.8 V左右,若送入#00H,這時(shí)各口的位電壓應(yīng)為0.03 V;第二,將8155與LED結(jié)合起來(lái),借助開(kāi)發(fā)機(jī),通過(guò)編制程序(最好采用“8”字循環(huán)程序)進(jìn)行調(diào)試。若調(diào)試通過(guò)后,就可以編制應(yīng)用程序了。
(2)鍵盤(pán)調(diào)試一般顯示器調(diào)試通過(guò)后,鍵盤(pán)調(diào)試就比較簡(jiǎn)單,完全可以借助于顯示器,利用程序進(jìn)行調(diào)試。利用開(kāi)發(fā)裝置對(duì)程序進(jìn)行設(shè)置斷點(diǎn),通過(guò)斷點(diǎn)可以檢查程序在斷點(diǎn)前后的鍵值變化,這樣可知鍵盤(pán)工作是否正常。
以上討論了借助簡(jiǎn)單工具對(duì)單片機(jī)硬件調(diào)試的方法,這些方法如果利用得好,就
可以大大縮短單片機(jī)的開(kāi)發(fā)周期。
評(píng)論