單片機(jī)控制系統(tǒng)的設(shè)計(jì)與調(diào)試方法
(1)硬件調(diào)試 根據(jù)設(shè)計(jì)的原理電路做好實(shí)驗(yàn)樣機(jī),便進(jìn)入硬件調(diào)試階段。調(diào)試工作的主要任務(wù)是排除樣機(jī)故障,其中包括設(shè)計(jì)錯(cuò)誤和工藝性故障。
① 脫機(jī)檢查:用萬(wàn)能表或邏輯測(cè)試筆逐步按照邏輯圖檢查機(jī)中各器件的電源及各引腳的連接是否正確,檢查數(shù)據(jù)總線(xiàn)、地址總線(xiàn)和控制總線(xiàn)是否有短路等故障。有時(shí)為保護(hù)芯片,先對(duì)各管座的電位(或電源)進(jìn)行檢查,確定其無(wú)誤后再插入芯片檢查。
② 仿真調(diào)試:暫時(shí)排除目標(biāo)板的CPU和EPROM,將樣機(jī)接上仿真機(jī)的40芯仿真插頭進(jìn)行調(diào)試,調(diào)試各部分接口電路是否滿(mǎn)足設(shè)計(jì)要求。這部分工作是一種經(jīng)驗(yàn)性很強(qiáng)的工作,一般來(lái)說(shuō),設(shè)計(jì)制作的樣機(jī)不可能一次性完好,總是需要調(diào)試的。通常的方法是,先編調(diào)試軟件,逐一檢查調(diào)試硬件電路系統(tǒng)設(shè)計(jì)的準(zhǔn)確性。其次是調(diào)試MONITOR程序,只有MONITOER程序正常工作才可以進(jìn)行下面的應(yīng)用軟件調(diào)試。
硬件電路調(diào)試的一般順序是:
① 檢查CPU的時(shí)鐘電路。通過(guò)測(cè)試ALE信號(hào),如沒(méi)有ALE信號(hào),則判斷是晶體或CPU故障,這稱(chēng)之為“心臟”檢查。
② 檢查ABUS/DBUS的分時(shí)復(fù)用功能的地址鎖存是否正常。
③ 檢查I/O地址分配器。一般是由部分譯碼或全譯碼電路構(gòu)成,如是部分譯碼設(shè)計(jì),則排除地址重疊故障。
④ 對(duì)擴(kuò)展的RAM、ROM進(jìn)行檢查調(diào)試。一般先后寫(xiě)入55H、AAH,再讀出比較,以此判斷是否正常。因?yàn)檫@樣RAM、ROM的各位均寫(xiě)入過(guò)‘0’、‘1’代碼。
⑤ 用戶(hù)級(jí)I/O設(shè)備調(diào)試。如面板、顯示、打印、報(bào)警等等。
(2)軟件調(diào)試 軟件調(diào)試根據(jù)開(kāi)發(fā)的設(shè)備情況可以有以下方法:
① 交叉匯編:用IBM PC/XT機(jī)對(duì)MCS—51系列單片機(jī)程序進(jìn)行交叉匯編時(shí),可借助IBM PC/XT機(jī)的行編輯和屏幕編輯功能,將源程序按規(guī)定的格式輸入到PC機(jī),生成MCS—51 HEX目標(biāo)代碼和LIST文件。
② 用匯編語(yǔ)言:現(xiàn)在有些單片STD工業(yè)控制機(jī)或者開(kāi)發(fā)系統(tǒng),可直接使用匯編語(yǔ)言,借助CRT進(jìn)行匯編語(yǔ)言調(diào)試。
③ 手工匯編:這種方法是最原始,但又是一種最簡(jiǎn)捷的調(diào)試方法,且不必增加調(diào)試設(shè)備。這種方法的實(shí)質(zhì)就是對(duì)照MCS—51指令編碼表,將源程序指令逐條地譯成機(jī)器碼,然后輸入到RAM重新進(jìn)行調(diào)試。在進(jìn)行手工匯編時(shí),要特別注意轉(zhuǎn)移指令、調(diào)用指令、查表指令。必須準(zhǔn)確無(wú)誤地計(jì)算出操作碼、轉(zhuǎn)移地址和相對(duì)偏移量,以免出錯(cuò)。
以上3種方法調(diào)試完成以后,即可通過(guò)EPROM寫(xiě)入器,將目標(biāo)代碼寫(xiě)入EPROM中,并將其插至機(jī)器的相應(yīng)插座上,系統(tǒng)便可投入運(yùn)行。
(3)硬件、軟件仿真調(diào)試 經(jīng)過(guò)硬件、軟件單獨(dú)調(diào)試后,即可進(jìn)入硬件、軟件聯(lián)合仿真調(diào)試階段,找出硬件、軟件之間不相匹配的地方,反復(fù)修改和調(diào)試。實(shí)驗(yàn)室調(diào)試工作完成以后,即可組裝成機(jī)器,移至現(xiàn)場(chǎng)進(jìn)行運(yùn)行和進(jìn)一步調(diào)試,并根據(jù)運(yùn)行及調(diào)試中的問(wèn)題反復(fù)進(jìn)行修改。
5結(jié)論
單片機(jī)控制技術(shù)應(yīng)用越來(lái)越廣泛,其核心技術(shù)是單片機(jī)控制系統(tǒng)的設(shè)計(jì)。對(duì)工程技術(shù)人員來(lái)說(shuō),抓住系統(tǒng)的原理構(gòu)成、軟件設(shè)計(jì)、硬件設(shè)計(jì)以及系統(tǒng)調(diào)試方法的要點(diǎn)是十分必要的。根據(jù)工作經(jīng)驗(yàn),前面敘述的系統(tǒng)調(diào)試方法將會(huì)有助于從事這方面工作的技術(shù)人員及本專(zhuān)業(yè)的學(xué)習(xí)者。
參考文獻(xiàn)
1陳粵初.單片及應(yīng)用系統(tǒng)設(shè)計(jì)與實(shí)踐. 北京: 北京航空航天大學(xué)出版社,1992
2何立民.單片機(jī)應(yīng)用系統(tǒng)設(shè)計(jì) .北京:北京航空航天大學(xué)出版社,1998
評(píng)論