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