2410啟動代碼startup.s分析

2410啟動代碼startup.s分析

ID:11590904

大?。?1.50 KB

頁數(shù):0頁

時間:2018-07-12

2410啟動代碼startup.s分析_第頁
預覽圖正在加載中,預計需要20秒,請耐心等待
資源描述:

《2410啟動代碼startup.s分析》由會員上傳分享,免費在線閱讀,更多相關內(nèi)容在行業(yè)資料-天天文庫。

1、啟動代碼start.s(相當于bootloader的前端代碼),開機就執(zhí)行的代碼,即0x0000處放置的代碼。給CPU一個合適的工作環(huán)境。面向CPU內(nèi)核和外圍硬件,所以一般用匯編編寫。1、在起始地址分配中斷向量表即中斷處理函數(shù)(CPU要求的),以為向量空間只有4字節(jié),所以一般只是一個跳轉(zhuǎn)指令,去別處執(zhí)行。2、之后初始化存儲器系統(tǒng)3、初始多個模式下的堆棧(模式切換時,硬件給SP置位)4、初始化有特殊要求的外圍設備,如LED燈、看門狗5、初始化用戶的執(zhí)行環(huán)境(在FLASH中運行太慢了,把代碼整體搬遷到RAM中)6、切換處理器的工作模式7、調(diào)用主程序(沒見到有

2、存儲控制器的配置代碼,也沒見到有時鐘初始化代碼)下面分析,所給的2410的啟動代碼實現(xiàn)了以上的那些功能,實現(xiàn)得顯然不全,或者不需要,或者在工程代碼的其它部分實現(xiàn)。讀程序時注意,所有程序都是逐行順序執(zhí)行的,要看清跳轉(zhuǎn)指令。GET2410addr.s//用到了2410addr.s中的寄存器地址宏定義;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;SomeARM920CPSRbitdiscriptions;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

3、;;;;;;;;;;;;;;;;;;;;;;;Pre-definedconstants//預定義的變量,一下后續(xù)代碼中使用方便,與CPSR相關USERMODEEQU0x10FIQMODEEQU0x11IRQMODEEQU0x12SVCMODEEQU0x13ABORTMODEEQU0x17UNDEFMODEEQU0x1bMODEMASKEQU0x1fNOINTEQU0xc0I_Bit*0x80F_Bit*0x40;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MMURegist

4、erdiscription;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;p15CP15;c0CN0;c1CN1;c2CN2;c3CN3CtrlMMU*1CtrlAlign*2CtrlCache*4CtrlWBuff*8CtrlBigEnd*128CtrlSystem*256CtrlROM*512;initializationL0isMMUFULL_ACCESS,DOMAIN,SECTIONTLB_L0_INIT*0x0C02;;;;;;;;;;;;;;;;;;;;;;;;;;;

5、;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;Starthere//執(zhí)行代碼從這里開始;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;//IMPORT,定義表示這是一個外部變量的標號,不是在本程序定義的//EXPORT,表示本程序里面用到的變量提供給其他模塊調(diào)用的。//以上兩個在匯編和C語言混合編程的時候用到AREAInit,CODE,READONLYIMPORT__use_no_semihosting_swiIMPORTEnter_UNDEF//有點e

6、xtern的感覺IMPORTEnter_SWIIMPORTEnter_PABORTIMPORTEnter_DABORTIMPORTEnter_FIQENTRY//這是程序的入口//中斷/異常向量表(跳轉(zhuǎn)),上電第一條就執(zhí)行bColdReset,跳轉(zhuǎn)到ColdReset。bColdResetbEnter_UNDEF;UndefinedInstructionbEnter_SWI;syscall_handlerorSWIbEnter_PABORT;PrefetchAbortbEnter_DABORT;DataAbortb.;ReservedHandlerbIR

7、Q_Handler;IRQHandlerbEnter_FIQ;FIQHandler;dealwithIRQinterruptEXPORTIRQ_Handler//IRQ中斷處理子程序IRQ_HandlerIMPORTISR_IrqHandler//服務程序在外部定義STMFDsp!,{r0-r12,lr}BLISR_IrqHandler//跳轉(zhuǎn)至服務程序LDMFDsp!,{r0-r12,lr}SUBSpc,lr,#4;=======;ENTRY;=======EXPORTColdResetColdReset//上電執(zhí)行復位異常函數(shù),就跳轉(zhuǎn)到這里來ldrr

8、0,=WTCON;watchdogdisable//關閉看門狗,還沒初始化完系統(tǒng)

當前文檔最多預覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當前文檔最多預覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學公式或PPT動畫的文件,查看預覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。