很高興老師借給我一k60的開發板,趁著暑假好好鼓搗鼓搗!
有了上圖的過程分析我想心裡大概有個低了吧!
以下看**:
/* codewarrior arm runtime support library
* * $date: 2013/02/08 07:14:44 $
* $revision: 1.6 $
*//*
* __arm_start.c - entry-point for arm programs
* */
#include #include #include _ewl_begin_extern_c
#if support_semihost_argc_argv
#define __max_cmdline_args 10
static char *argv[__max_cmdline_args] = ;
#else
static char *argv = ;
#endif
#if __gnuc__
#define __call_static_initializers __init_cpp
#endif
#if support_semihost_argc_argv
extern int __argc_argv(int, char **);
#endif /* support_semihost_argc_argv */
extern void __call_static_initializers(void);
extern int main(int, char **);
#ifdef __vfpv4__
extern void __fp_init(void);
#endif /* __vfpv4__ */
extern void __init_registers();
extern void __init_hardware();
extern void __init_user();
#if defined(__apcs_ropi)
extern void __init_pic();
#endif
#if defined(__apcs_rwpi)
extern void __init_pid();
#endif
#if defined(__apcs_ropi) || defined(__apcs_rwpi)
extern void __load_static_base();
#endif
#if defined(__semihosting)
extern void __init_semihost(void) _ewl_weak;
#endif
#if support_rom_to_ram
extern void __copy_rom_sections_to_ram(void);
extern char __s_romp;
#endif
static void zero_fill_bss(void)
#ifndef __thumb // thumb version
#error thumb startup
#endif
void __iar_program_start(void) _ewl_naked;
void __thumb_startup(void);
void __iar_program_start()
void __thumb_startup(void) _ewl_naked;
void __thumb_startup(void)
_ewl_end_extern_c
封塵浪用的庫為 蘇州大學 的庫這兩天一直在移植,各種問題,整體來說蘇州的庫還是不錯的。就是資料有點少。這個暑假準備拿下k60,(鴨梨山大)好了,有時間在把學習過程與大家共享受!
同時,歡迎您來交流和共同**,解決這個問題。
K60學習筆記(1) 啟動檔案分析
初始化函式 上電復位 中斷向量表 在vectors.c裡面定義,在vectors.件裡。在vectors.h裡面兩行 define vector 000 vector entry boot stack address arm core initial supervisor sp define vec...
ARM Linux啟動過程分析
5 呼叫 linux核心映像 bootloader完成的最後一項工作便是呼叫 linux核心。如果 linux 核心存放在 flash 中,並且可直接在上面執行 這裡的 flash 指 nor flash 那麼可直接跳轉到核心中去執行。但由於在 flash 中執行 會有種種限制,而且速度也遠不及 r...
Linux啟動過程分析
boot loader 當cpu一上電,此時cpu必須從nor flash或者nand flash中取指令 直接從 nand flash取指令的ap為支援nand 啟動 nand boot 其實原理就是ap 內部的rom裡有一小段 包括nand flash驅動,它啟動從nand flash中讀取一段...