新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設計應用 > STM32 RVMDK JLINK下flash和RAM調試方法

STM32 RVMDK JLINK下flash和RAM調試方法

作者: 時間:2016-11-11 來源:網絡 收藏
stm32f107vc開發(fā)板,uvision V4.00u,JLINK V8,J-Link ARM V4.08l。

flash調試方法

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

1.打開要調試的工程,左欄工程上右擊options for target。進入debug中選擇jlink.

2. utility中選擇jlink.

3. 用JLINK連接PC和開發(fā)板,打開開發(fā)板電源。進入旁邊的settings,添加flash燒寫方法。

4。一路OK回去,rebuild,ctrl+F5進入調試,可以單步和斷點。根據ST公司的reference manual 2.3.3 embedded flash,知道flash的地址從0x0800 0000開始。在調試窗口中看到匯編的地址為0x0800開頭,說明代碼段燒進了flash。

SRAM下調試方法:

1. 將Keil安裝目錄下D:KeilARMBoardsKeilMCBSTM32STLIB_Blinky的ram.ini拷貝到需要調試的工程目錄下,并把需要載入的文件改為需調試工程AXF文件的位置和名稱,此處工程為GPIO。

2. 根據reference manual 2.3.1,SRAM的起始地址為0x2000 0000。要將代碼段放入SRAM中,必須設置程序只讀段從SRAM起始位置開始,一定長度(此處設置為0X4000)后,數據段RAM開始。注意兩端的長度不能超過SRAM的總大小。

3. 同flash下調試的步驟1和2,選擇jlink。

4. 在debug頁下添加ram.ini。

5. 選擇不要擦除flash,修改代碼段和數據段的位置和大小。

6. 一路OK,rebuild,ctrl+F5進入調試??梢詥尾?,step in和斷點??磪R編代碼的位置,以0x2000開頭,說明程序運行在SRAM中。

另外,查看工程目錄下的.sct文件,如下。

LR_IROM1 0x20000000 0x00004000 { ; load region size_region
ER_IROM1 0x20000000 0x00004000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
}
RW_IRAM1 0x20004000 0x00004000 { ; RW data
.ANY (+RW +ZI)
}
}

說明的確已經把程序配置到SRAM空間。



評論


技術專區(qū)

關閉