S12單片機模塊應用及程序下載調試
表1 跳線(xiàn)J5、J6設置目標板工作電壓
5.2 安裝和使用BDM for S12(TBDML):
BDM for S12(TBDML)在PC上的配套軟件是Freescale的CodeWarrio for S12的V4.1以上的版本。用戶(hù)可調用該軟件自帶的Hiwave.exe程序,并通過(guò)BDM for S12(TBDML)來(lái)調試MC9S12各種型號單片機。當然,初次使用BDM for S12(TBDML)時(shí),用戶(hù)還需要在PC上安裝相應的驅動(dòng)程序和動(dòng)態(tài)鏈接庫。具體的使用方法,請參閱用戶(hù)手冊。
5.3 使用BDM for S12(TBDML)的常見(jiàn)問(wèn)題及解決辦法。
車(chē)模大賽啟動(dòng)之處,中心在為廣大參賽選手提供培訓的同時(shí),按照Freescale的安排,為各參賽隊提供了S12開(kāi)發(fā)系統、BDM調試功能、車(chē)模等等一系列完整的參賽資源。時(shí)隔數月,從反饋信息來(lái)看,各參賽隊基本上都能熟練地使用BDM for S12(TBDML)。但也有個(gè)別隊伍遇到了一些問(wèn)題,中心也及時(shí)進(jìn)行了解答和總結,這里簡(jiǎn)單匯總了各種問(wèn)題,以期對參賽隊伍有所幫助。
【常見(jiàn)問(wèn)題之一】正確安裝了BDM for S12(TBDML)的驅動(dòng)程序和動(dòng)態(tài)鏈接庫后,并用BDM連接了目標單片機后,在Hiwave.exe的【TBDML HCS12】菜單中,沒(méi)有出現“Flash...”項,無(wú)法對目標單片機進(jìn)行調試。
解決辦法:首先,用戶(hù)應該確保目標板供電正常,BDM for S12(TBDML)默認的電源工作方式是目標板自供電;如果,還有問(wèn)題,用戶(hù)應該打開(kāi)BDM的包裝小盒,查看跳線(xiàn)J4是否已經(jīng)短接,原因見(jiàn)上文。
【常見(jiàn)問(wèn)題之二】驅動(dòng)程序安裝正常,跳線(xiàn)也沒(méi)有問(wèn)題,目標板也供電了,但BDM還是不工作。
解決辦法:出現這一問(wèn)題,最大的可能是,用戶(hù)的CodeWarrio版本不對,沒(méi)有利用CodeWarrio V4.1以上的版本進(jìn)行調試。安裝高版本的CodeWarrio即可解決問(wèn)題。
【常見(jiàn)問(wèn)題之三】BDM調試目標板基本正常,能夠下載程序、擦除FLASH、設斷點(diǎn)調試,但是,在某次使用中FLASH突然被“鎖死”,之后目標板無(wú)法繼續使用。
解決辦法:Freescale 公司的HCS12 系列單片機具有片內FLASH 的加密功能,對于加密或保護后的FLASH,用戶(hù)是無(wú)法通過(guò)BDM 調試工具對其FLASH 進(jìn)行諸如程序擦除、讀取等操作。同時(shí),如果用戶(hù)在利用BDM 調試單片機時(shí)操作不當,同樣會(huì )使單片機出現FLASH 無(wú)法讀取、擦除和下載等問(wèn)題。我們的監控程序在$F000 到$$FFFF,這一段加了保護,但并沒(méi)有加密。即使對加了密的S12,也可以使用我們生產(chǎn)地串行接口地BDM 工具方便的解鎖和擦除。在2005 年第4 期《電子產(chǎn)品世界》雜志中,我中心曾經(jīng)撰文講述了HCS12 單片機Flash 保護和加解密的原理和注意事項。在決定擦除保護了的程序時(shí),請想好在出現單片機被鎖定的情況下有沒(méi)有能力解鎖。對于FLASH沒(méi)有進(jìn)入“保護模式”的單片機,如果利用BDM for S12 (TBDML)調試單片機,當用戶(hù)點(diǎn)擊【TBDML HCS12】菜單下的【Flash…】命令時(shí),會(huì )出現如圖12所示的正常情況。從圖中可以看出,當前目標板的單片機的FLASH_C000存儲區域已下載有程序,狀態(tài)為“Programmed”;其余模塊為空,狀態(tài)為“Blank”。因此,可以繼續對該單片機的FLASH進(jìn)行讀取、擦除Erase和下載Load等操作。但是,在出現上述FLASH加密問(wèn)題后,HCS12系列單片機就進(jìn)入了“FLASH保護模式”,即Secure Mode。這時(shí),如果利用BDM for S12(TBDML)調試單片機,當用戶(hù)點(diǎn)擊【TBDML HCS12】菜單下的【Flash…】命令時(shí),圖12中部分FLASH區域的狀態(tài)就會(huì )顯示為“Skipped”。此時(shí),用戶(hù)便無(wú)法再對FLASH進(jìn)行正常操作。因此,需要解除FLASH的“保護模式”(Secure Mode),執行Unsecure的操作。BDM for S12(TBDML)提供了Unsecure的功能,具體的操作過(guò)程較為復雜,請參閱用戶(hù)手冊。
6 結語(yǔ)
上面提到的問(wèn)題是在應用過(guò)程中發(fā)現的比較普遍的問(wèn)題。在設計之前最好能完整地閱讀幫助文檔以及芯片的數據手冊,了解各個(gè)工作狀態(tài),很多可能出現的問(wèn)題其實(shí)在數據手冊里已有明確的說(shuō)明。這樣做在程序設計的前期可能會(huì )影響一些進(jìn)度,但到后期調試階段會(huì )帶來(lái)極大的方便。至于工具使用上的問(wèn)題Freescale單片機/DSP應用開(kāi)發(fā)研究中心會(huì )及時(shí)在大賽的官方網(wǎng)站上做出相應的說(shuō)明,請大家留意。
參考文獻
1、 邵貝貝,單片機嵌入式應用的在線(xiàn)開(kāi)發(fā)方法,北京:清華大學(xué)出版社,2004
2、 MC9S12DT128,Device User Guide,Freescale semiconductor,2005.10
評論