資源描述:
《stm32在sram中調(diào)試keil4》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、STM32在Keil4J-linkV8中SRAM調(diào)試方法說明:此文章大部分為http://wenku.baidu.com/view/f39c0534eefdc8d376ee32bf.html下名稱為KeilMDK在STM32中SRAM調(diào)試步驟6(紅色部分)為本人所加,正是因?yàn)闆]有這部分,導(dǎo)致我當(dāng)時(shí)一直不正常。故整理后共享給大家目的是避免FLASH擦寫次數(shù)的限制,和避免新手學(xué)習(xí)很快讓MCU結(jié)束生命。以本人STM32F103VET6為例,512Kflash,64KSRAM,借鑒前人ULINK下調(diào)試的方法。把內(nèi)存分為32K用做FLASH,32K
2、用做內(nèi)存使用,這里以GPIO點(diǎn)亮LED為例子1.copyKeil安裝目錄下,例如C:KeilARMBoardsKeilMCBSTM32STLIB_Blinky中的RAM.ini到項(xiàng)目目錄,啟動(dòng)Keil。2.單擊啟動(dòng)下圖對話框,在ProjectTargets一項(xiàng)單擊New(Insert)按鈕,增加一個(gè)目標(biāo),命名為SRAM,然后OK。3.然后再SelectTarget中選擇SRAM。1.左側(cè)項(xiàng)目欄中選擇SRAM,單擊右鍵選擇OptionsforTargetSRAM”,打開選項(xiàng)對話框。如上圖所示,在target選項(xiàng)中修改IROM1的
3、Start值為:0x20000000,Size:0x8000IRAM1的Start值為:0x20008000,Size:0x8000;即內(nèi)存分為32K用做FLASH,32K用做內(nèi)存使用。2.OutPut選項(xiàng)卡中也選中CreateHEXFile,如下圖所示:1.注意Linker選項(xiàng)卡中的地址要和步驟4的Target選項(xiàng)卡配置2.在Debug選項(xiàng)中仿真器選擇Cortex-M3J-LINK,InitializationFile中點(diǎn)擊Edit按鈕選擇剛才copy過來的RAM.ini文件,取消LoadApplicationatStartup復(fù)選框,
4、設(shè)置如下:3.RAM.ini內(nèi)容為:1.然后點(diǎn)擊仿真器一欄,Settings按鈕,進(jìn)一步設(shè)置,如下圖,注意Debug選項(xiàng)中Interface中選擇USB,2.如下圖所示,在選項(xiàng)設(shè)置對話框中Utilities中,UseTargetDriverforFlashProgramming中選擇Cortex-M3J-LINK或或相關(guān)選項(xiàng),并點(diǎn)擊setting進(jìn)一步設(shè)置1.如下圖所示,在FlashDownload中配置,選中DonotErase,在RAMforAlgorithm中Start設(shè)置為0x20008000,Size設(shè)置為0x8000,設(shè)置ST
5、M32F10xMed-densityFlash的地址Start:0x20000000,size:0x00008000,點(diǎn)擊OK。注意:如果在ProgrammingAlgoritm中沒有STM32F10xMed-densityFlash,就單擊Add按鈕添加,然后修改即可。2.到此為止設(shè)置完成,開始調(diào)試。1.開始調(diào)試,重建項(xiàng)目(重新編譯)。2.然后啟動(dòng)Start/StopDebugSession(或Crtl+F5),開始調(diào)試,進(jìn)入調(diào)試模式后,單擊Run按鈕或F5運(yùn)行。3.注意:再次過程中不要點(diǎn)擊Flash菜單下面的下載。