新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > Cortex-M3 (NXP LPC1788)之看門狗定時(shí)器對(duì)Flash編程的影響

Cortex-M3 (NXP LPC1788)之看門狗定時(shí)器對(duì)Flash編程的影響

作者: 時(shí)間:2016-11-19 來(lái)源:網(wǎng)絡(luò) 收藏
這兩天在學(xué)習(xí)窗口式看門狗模塊,之前一直調(diào)試的很happy,今天早上突然就進(jìn)入不了調(diào)試模式,而且無(wú)法擦除Flash,無(wú)法下載程序。郁悶了半天,以為是Keil軟件和Ulink出了問(wèn)題,在另外個(gè)電腦上重載,問(wèn)題依舊。準(zhǔn)備用ISP進(jìn)行嘗試,使用FlashMagic軟件,進(jìn)行讀取芯片的ID,一直報(bào)警autobaud錯(cuò)誤,進(jìn)他提示的網(wǎng)頁(yè)看下也沒(méi)有什么有用的信息。

仔細(xì)看了數(shù)據(jù)手冊(cè),在Flash存儲(chǔ)器章節(jié)看到如下信息。引導(dǎo)加載器(boot loader)控制芯片復(fù)位后的初始化操作,并提供對(duì)Flash存儲(chǔ)器進(jìn)行編程的工具。包括ISP,通過(guò)引導(dǎo)加載器軟件和UART0串口片上Flash存儲(chǔ)器進(jìn)行編程或在編程。IAP,應(yīng)用終端用戶的應(yīng)用代碼對(duì)片上Flash存儲(chǔ)器進(jìn)行編程。

本文引用地址:http://m.butianyuan.cn/article/201611/318451.htm

Flash引導(dǎo)加載器代碼在芯片每次上電或復(fù)位后最先執(zhí)行。加載器可以執(zhí)行ISP命令處理器或用戶的應(yīng)用代碼。復(fù)位之后,P2[10]引腳的低電平可以被視為啟動(dòng)使用UART0管腳的ISP命令處理器的外部硬件請(qǐng)求。假定在復(fù)位管腳出現(xiàn)上升沿時(shí),電源管腳出現(xiàn)標(biāo)稱電平,那么在采樣P2[10]之前有3ms的時(shí)間來(lái)決定是執(zhí)行用戶代碼還是ISP處理器。如果P2[10]取樣得到低電平且看門狗溢出標(biāo)志置位,那么啟動(dòng)ISP命令處理器的外部硬件請(qǐng)求將被忽略。在沒(méi)有ISP命令處理器執(zhí)行的請(qǐng)求時(shí),將搜索有效的用戶程序。

根據(jù)紅色標(biāo)記的那句話可知由于我的看門狗調(diào)試程序中,設(shè)置了溢出不復(fù)位,且溢出后沒(méi)有清除溢出標(biāo)志。所以導(dǎo)致系統(tǒng)無(wú)法產(chǎn)生執(zhí)行ISP處理器的硬件請(qǐng)求。也就無(wú)法通過(guò)ISP對(duì)芯片進(jìn)行操作。

問(wèn)題的原因已經(jīng)找到,為了解決這個(gè)問(wèn)題,由于自己的調(diào)試看門狗程序有問(wèn)題(一上電就復(fù)位,且沒(méi)清溢出標(biāo)志),所以正常情況下通過(guò)ISP擦除Flash沒(méi)法成功。嘗試用ULINK的JTAG接口進(jìn)行擦除,但是也一直報(bào)警出錯(cuò)。后來(lái)只能使用最笨的辦法,在上電的時(shí)候按住復(fù)位按鍵,然后反復(fù)上電,反復(fù)使用FlashMagic進(jìn)行擦除嘗試,終于擦除成功。 擦除以后使用ULINK進(jìn)行下載程序,可以連接正常。

終于可以重新正常使用開(kāi)發(fā)板,繼續(xù)調(diào)試WDT模塊,有點(diǎn)揪心,接下去調(diào)試得仔細(xì)點(diǎn)了。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉