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