• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 嵌入式系統 > 設計應用 > ulink-Jlink下在ram和flash中調試STM32的方法

    ulink-Jlink下在ram和flash中調試STM32的方法

    作者: 時間:2012-09-11 來源:網絡 收藏

    Keil MDK3.20 在ULINK下stm32

    本文引用地址:http://www.czjhyjcfj.com/article/148406.htm

    1. 程序在RAM中運行

    要點:(1)程序的下載地址改到RAM空間中

    (2)程序的debug之前要設定SP,PC指針到Ram空間

    新建工程,選擇 的具體型號,我買的萬利的開發板,選擇stm32f103Vb。

    ?

    設定程序下載地址,如下圖所示,IROM1的地址指向了空間。

    ?

    空間大小如何分配取決于自己的需求。本款處理器內部大小為20K,分配16K給只讀區,4K給可讀可寫區。這樣IROM設定的大小為0x4000,IRAM1的起始就變為0X20004000,大小只剩下0X1000。

    Debug標簽選擇ULINK1 Cortex Debugger(軟件采用yjgyiysbcc兄crack)。不選Load Application at Start,在Initialization中加入啟動腳本RAM.ini。

    ?

    RAM.ini中具體內容如下:

    FUNC void Setup (void) {

    SP = _RDWORD(0x20000000); // Setup Stack Pointer

    PC = _RDWORD(0x20000004); // Setup Prog Counter

    _WDWORD(0xE000ED08, 0x20000000); // Setup Vector Table Offset Register

    }

    LOAD XXX.axf INCREMENTAL // Download,紅色代表工程文件名.axf

    Setup(); // Setup for Running

    g, main

    Utilities下Update Target before Debugging不選

    這樣添加后就可以在RAM中了。

    >>>>>>我們需要在代碼中設置正確的中斷向量表位置。中斷向量表通常被放置在用戶程序的開始,所以中運行時,向量表位于0x08000000處,而當代碼被放置在SRAM中運行時,他的位置就成了0x20000000。在初始化NVIC時,我們可以放置如下代碼,定義向量表的位置

    NVIC_SetVectorTable(0x20000000 , 0x0);

    NVIC_SetVectorTable(0x08000000 , 0x0);

    ?

    >>>>>工程選項中Debug項,Download選項卡中,去掉所有鉤子,不下載代碼到,這樣就可以在RAM中程序了!

    2. Flash中調試

    新建工程后系統默認設定好IROM1為FLASH的地址和空間大小。只需要兩步:

    1) 設定調試工具為ULINK1 CORTEX DEBUGGER,如下圖所示,不需要設定起始腳本。

    ?

    2) 在Utility中設定選擇ULINK1 cortex debugger,并設定編程算法。如下圖所示。

    ?

    ?

    之后就可以FLASH調試了。

    硬件:萬利的 EK-F開發板,硬件去掉RS3,RS4 排阻,斷開開發板本身的仿真器。

    軟件:KEIL MDK3.20+ULINK驅動替換文件。

    仿真器:ULINK



    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 南乐县| 白河县| 建水县| 屯留县| 镇宁| 临沂市| 屏东县| 固始县| 浦北县| 上思县| 中阳县| 芜湖市| 巴彦淖尔市| 东丽区| 大庆市| 沁水县| 富川| 治县。| 唐山市| 襄樊市| 望都县| 沁水县| 丰城市| 利津县| 彭州市| 揭阳市| 乐至县| 孝昌县| 蛟河市| 定日县| 威远县| 满洲里市| 怀宁县| 大港区| 茂名市| 荃湾区| 荣成市| 宜川县| 新平| 南皮县| 樟树市|