PIC單片機在線調試中的一些問題
1 在線串行編程
1.1在線串行編程接口
帶有Flash閃速存儲器的PIC單片機產品一般都具有在線串行編程功能,只需要5根引線就可以把程序下載到單片機的Flash程序存儲器中。這5根線的排列順序是MCLR/Vpp、Vdd、Vss、PD(或PGD)和PC(或PGC),圖1是PIC單片機在線串行編程接口圖。
1.2引腳含義
上述5根引線的具體含義是:MCLR/Vpp——編程電壓(對于PIC單片機一般為13 V左右);Vdd——編程電源(5 V);Vss——地;PD——編程數據信號;PC——編程時鐘信號。
有了這個編程連接電路,只需要合適的編程硬件電路和編程軟件,就可以實現(xiàn)單片機在線串行編程和調試。
2 在線調試器
2.1在線調試器與目標板的連接
微芯公司推出的第一代在線調試器命名為MPLAB ICD,其支持PIC16F87X系列單片機的在線調試與燒寫,并且性能可靠,使用簡捷、方便。在MPLAB ICD基礎上,微芯公司推出第二代在線調試器命名為MPLAB ICD2(以下簡稱ICD2),其支持全系列的PIC Flash閃速存儲器單片機的在線調試和燒寫,甚至還支持微芯公司16位單片機dsPIC的在線調試和燒寫。ICD2在線調試器與目標板的連接如圖2所示。
圖2中只畫出ICD2的MCLR/Vpp、PGD和PGC三組重要信號與目標板的連接,ICD2的Vdd和Vss按照正常方式與目標板連接。如果目標板上有AVdd(模擬電源)和AVss(模擬地),在目標板上也必須把AVdd和AVss與其對應的電源和地相連,不能有任何電源和地引腳懸空,以保證ICD2在調試時能正常工作。
2.2PGC和PGD信號易出現(xiàn)的問題
?、?從圖2中可以看出,ICD2的PGC和PGD引腳內部已經接有4.7 kΩ的下拉電阻,因此用戶設計電路板時,電路板上的這2個引腳就不能再接下拉電阻,以免引起不正確的電平。
?、?PGC和PGD是信號引腳,對于這2個引腳,ICD2和目標板之間的連接不能有任何電容或其他容性器件接入,否則會影響串行數據和時鐘信號傳輸。PGC和PGD信號是雙向傳輸信號,ICD2和目標板之間的連接不能有任何二極管等元件阻斷信號傳輸。
2.3復位
MCLR/Vpp是ICD2編程電壓引腳,編程時電壓應該在13 V左右,這個引腳的另一個功能是復位。我們知道,任何單片機在上電或在其他一些特殊情況下都能引起復位。單片機的復位與電源和晶體振蕩是單片機進入正常工作的三大必要條件。因此,應該注意以下問題。
?、?不能接入大電容,否則Vdd(電源電壓)不能快速建立,影響復位。
② 目標板的Vdd(電源電壓)與MCLR/Vpp間應串接一只10 kΩ以下的復位電阻,這樣在復位時目標板的MCLR/Vpp引腳能夠被正常拉低,而在編程時也可以保持13 V左右的燒寫電壓。
?、?復位電阻不能太大,必須要小于10 kΩ。根據筆者的經驗,對于PIC16F87X系列單片機,復位電阻是10 kΩ或10 kΩ以下時可以正常復位;對于PIC18FXX2系列單片機,復位電阻是10 kΩ時不能正常復位,更換為4.7 kΩ左右的電阻就可以實現(xiàn)正常復位了。
2.4應用實踐
由于ICD2的實用性和價格低廉,越來越多的用戶使用ICD2在線調試器。在ICD2與目標板連接過程中,非常容易出現(xiàn)這樣或那樣的問題。對于初學者和自己制作目標板的用戶,尤其要注意把ICD2與目標板進行可靠連接,所謂可靠連接就是要接觸良好。用戶在制作目標板時要遵循本文2.2和2.3小節(jié)的敘述,制作出的目標板一般都能與ICD2實現(xiàn)正常連接。
當用戶制作的目標板與ICD2連接時,若出現(xiàn)不能連接的情況,對于初學者,由于缺乏實踐經驗,往往判斷不了哪里出了問題,甚至懷疑ICD2有問題。此時,應先判斷目標板是否有問題,若目標板沒有問題,只能懷疑是ICD2本身或ICD2與計算機連接的問題。
結語
本文重點敘述在線調試器與目標板的連接、復位以及出現(xiàn)問題的解決辦法,有非常強的實用和參考價值,希望引起使用在線調試器讀者的重視,節(jié)省調試時間。
參考文獻
1 武鋒,陳新建. PIC單片機C語言開發(fā)入門. 北京:北京航空航天大學出版社,2005
2 張明峰. PIC單片機入門與實戰(zhàn). 北京:北京航空航天大學出版社,2004
陳新建:工程師,主要研究方向為單片機、水利量測自動化及閘和壩安全監(jiān)測自動化。
武鋒:高級工程師,主要研究方向為單片機、水利量測自動化及閘門和泵站計算機監(jiān)控。
評論