?? readmecommon.txt
字號:
EdukitIII實驗箱例程 MDK工程的基本文件組織結構:
工程名
|----Startup 啟動代碼 (S3C2410A.S),請注意最好使用例程所帶的啟動代碼,
| MDK自動生成的啟動代碼需要修改才可使用于實驗箱上。
|----Common 公用代碼(2410lib.c,sys_init.c)
|
|----Source 用戶源代碼
|
|----Script 腳本文件(調試文件ini,分散加載文件sct等)
|
----ReadMe 工程說明文檔
===========================================================================================
實驗箱例程文件目錄結構:
4.1.1_memory_test
4.2_led_test
4.3_int_test
4.4_uart_test
4.5_rtc_test
4.6_8led_test
4.7_timer_test
5.1_color_lcd_test
5.2_keyboard_test
5.3_tsp_test
6.1_iic_test
6.2_tftp_test
6.3_iis_test
6.4_usb_test
6.5_spi_test
6.6_irda_test
7.1_adc_test
7.2_pwm_test
7.3.1_sdi_test
8.1_gprs_test
以上目錄分別對應實驗教程各章節的例程.
common 提供所有例程的公共文件;
tools 提供一些例程運行所需要的工具軟件;
============================================================================================
工程的Option設置:
Device下選擇Samsung-S3C2410;
Target下設置 off-chip ROM1: 0x0,0x200000 Startup
off-chip RAM1: 0x30000000,0x4000000
on-chip IRAM1:0x40000000,0x1000
Output下設置文件夾為當前目錄下的/obj;
Listing下設置文件夾為當前目錄下的/lst;
C/C++和ASM下在includ path 文本框中將common目錄所在路徑加入;
Linker下設置Scatter File,如果在RAM中運行則選擇"RuninRAM.SCT",
如果在FLash中運行則選擇"RuninFLash.SCT"(這兩個文件均在common目錄下);
請注意在Script文件組下添加這兩個文件時必須指定其為文本文件,而不是匯編語言文件.
Debug下選擇 use Simulator則可在PC上進行軟件仿真;
選擇 use ULINK ARM Debugger則進行目標板聯機調試;
選擇 Run to main 則程序自動運行到main()函數后暫停,須點擊Run按鈕或按F5鍵程序才繼續運行。
在Initialization文本框中可加入調試命令腳本文件,以幫助調試.
Utilities下選擇 ULINK ARM Debugger,點擊setting按鈕設置燒寫參數
RAM for Algorithm 設置Start: 0x40000000,Size 0x800
Programming Algorithm選擇 AM29F160DB Flash Ext Flash 16-bit 2M
=============================================================================================
調試命令文件(INI)用于使用軟件仿真和聯機測試時,以下是幾個常用的命令,用戶可以根據調試需要來寫自己的調試命令文件.
pc=0x30000000
令PC指向0x30000000處;(例程在RAM中運行時可指向0x30000000,如果在Flash中運行則指向0x000)
map 0x4c000000, 0x53000020 READ WRITE exec
指定某段存儲區域的屬性為可讀,可寫,可執行;
Go startaddr, stopaddr
程序從startaddr開始執行,到stopaddr處停止;起始地址都可以缺省. 也可用函數名表示地址例如 G , main
==============================================================================================
分散加載文件(sct)用于加載映像文件到存儲空間中,MDK可根據存儲設置自動生成,復雜應用程序則需要自行編寫.
以下是在RAM中運行程序的SCT文:
LR_ROM1 0x30000000 { ; load region
ER_ROM1 0x30000000 0x00300000 { ; load address = execution address
*.o (RESET, +First)
; *(InRoot$$Sections)
.ANY (+RO)
}
RW_RAM1 0x30300000 0x03D00000 { ; RW data
.ANY (+RW +ZI)
}
}
以下是在Flash中運行程序的SCT文件:
LR_ROM1 0x00000000 { ; load region
ER_ROM1 0x00000000 0x00200000 { ; load address = execution address
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
}
RW_RAM1 0x30000000 0x04000000 { ; RW data
.ANY (+RW +ZI)
}
RW_IRAM1 0x40000000 0x00001000 {
.ANY (+RW +ZI)
}
============================================================================================
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -