s3c2440裸機開發調試環境(MDK4.72,Jlink v8,mini2440)

 

 工程源碼下載http://download.csdn.net/detail/lc123yx/8280691windows

個人開發環境:windows 7 32位,J-linkv8,mini2440開發板一塊。最後選擇了:MDK4.72版本,J-ink v8的當前最新版本J-linkARM v4.94。ide

 

1)打開Keil uVision4新建一個工程:

 

2)新建一個目錄用於存放咱們的工程文件,這樣我用新建一個test目錄:而且取工程名爲test並保存:函數

 

 3)接下來選擇CUP database:咱們選擇samsungS3C2440A,點擊OK;以後會出現第二個圖問你是否拷貝'S3C2440.s'到工程文件夾並加入到工程裏,S3C2440.s是啓動代碼咱們選擇YES測試

 

 

 4)而後咱們須要對S3C2440.s進行一些必須的配置,打開此文件選擇編輯界面下面的Configuration wizard進行配置,這裏我把所有都打上勾,而後保存:ui

 

5 )以後新建一個 c 文件並編寫代碼,我習慣新建一個 main 目錄用來保存這個存放入口函數的文件,而後把這個文件加到工程裏 :

 

測試程序spa

  1. #include <S3C2440.H>  
  2. void delay()  
  3. {  
  4.     int i,j;  
  5.     for(i=0;i<10000;i++)  
  6.     {  
  7.         for(j=0;j<50;j++);  
  8.     }  
  9. }  
  10. int main()  
  11. {  
  12.     GPBCON = 0x155555;  
  13.     while(1)  
  14.     {  
  15.         GPBDAT |= 0x1E0;  
  16.         GPBDAT &= 0x1C0;  
  17.         delay();  
  18.           
  19.         GPBDAT |= 0x1E0;  
  20.         GPBDAT &= 0x1A0;  
  21.         delay();  
  22.         GPBDAT |= 0x1E0;  
  23.         delay();  
  24.     }  

 

 

 

 

 

 6)把全部c源文件加進工程以後,再選擇Target 1Optionsfor Target ' Target 1'進行相應的配置.net

 

 

 

 ④在User選項裏相應位置添加命令以下:(用於生成.bin文件和.axf調試文件,添加的命令爲:fromelf --bin -o @p.bin @p.axf,記得前面打勾)debug

 

 


以下圖Asm配置3d

 

 ⑤在Linker選項裏勾上Use Memory Layout from target Dialog,以下圖:調試

 

 

 

 

⑥在debug選項的配置主要有如下幾項:

 

1)勾上右邊的Use,Use裏選擇J-Link/J-Trace arm(選擇Jlink調試)

2)勾上LoadApplication at Startup,勾上Run to main()  (讓調試的時候直接從main函數開始)

3)在InitializationFile選擇以前修改的Ext_ARM.ini文件的路徑

在工程目錄下創建一個文本文檔,複製下面代碼,名字改爲Ext_RAM.ini 將文中test改爲本身的工程名稱。

Ext_RAM.ini 
  1. FUNC void SetupForStart (void) {  
  2.   
  3. // <o> Program Entry Point  
  4.   PC = 0x30000000;  
  5. }  
  6.   
  7.   
  8. FUNC void Init (void) {  
  9.   
  10.   _WDWORD(0x4A000008, 0xFFFFFFFF);      // Disable All Interrupts  
  11.   
  12.   _WDWORD(0x53000000, 0x00000000);      // Disable Watchdog Timer  
  13.     
  14.                                         // Clock Setup   
  15.                                         // FCLK = 300 MHz, HCLK = 100 MHz, PCLK = 50 MHz  
  16.   _WDWORD(0x4C000000, 0x0FFF0FFF);      // LOCKTIME  
  17.   _WDWORD(0x4C000014, 0x0000000F);      // CLKDIVN  
  18.   _WDWORD(0x4C000004, 0x00043011);      // MPLLCON  
  19.   _WDWORD(0x4C000008, 0x00038021);      // UPLLCON  
  20.   _WDWORD(0x4C00000C, 0x001FFFF0);      // CLKCON  
  21.   
  22.                                         // Memory Controller Setup for SDRAM  
  23.   _WDWORD(0x48000000, 0x22000000);      // BWSCON  
  24.   _WDWORD(0x4800001C, 0x00018005);      // BANKCON6  
  25.   _WDWORD(0x48000020, 0x00018005);      // BANKCON7  
  26.   _WDWORD(0x48000024, 0x008404F3);      // REFRESH  
  27.   _WDWORD(0x48000028, 0x00000032);      // BANKSIZE  
  28.   _WDWORD(0x4800002C, 0x00000020);      // MRSRB6  
  29.   _WDWORD(0x48000030, 0x00000020);      // MRSRB7  
  30.   
  31.   _WDWORD(0x56000000, 0x000003FF);      // GPACON: Enable Address lines for SDRAM  
  32. }  
  33.   
  34.   
  35. // Reset chip with watchdog, because nRST line is routed on hardware in a way   
  36. // that it can not be pulled low with ULINK  
  37.   
  38. _WDWORD(0x40000000, 0xEAFFFFFE);        // Load RAM addr 0 with branch to itself  
  39. CPSR = 0x000000D3;                      // Disable interrupts  
  40. PC   = 0x40000000;                      // Position PC to start of RAM  
  41. _WDWORD(0x53000000, 0x00000021);        // Enable Watchdog  
  42. g, 0                                    // Wait for Watchdog to reset chip  
  43.   
  44. Init();                                 // Initialize memory  
  45. LOAD 
    Objects\
    test.axf INCREMENTAL         // Download program  
  46. SetupForStart();                        // Setup for Running  
  47. g, main                                 // Goto Main 

 

 

 點擊Settings按鈕,設置JTAG SpeedAuto Selection,以下圖

 

 

 Utilities選項

 

 

 以後就算配置好了,如今rebuild一下,就能夠在工程目錄裏生成bin文件跟axf文件了,連好Jlink和開發板,點擊debug按照開始調試,不出之外,就能夠開始調試了,以下所示:

 

鏈接上Jlink 開發板Nand Flash啓動 點Debug

 單步調試

 

相關文章
相關標籤/搜索