基于S3C2440的WinCE Bootloader的分析與設(shè)計
2 Bootloader的第二階段分析
第一階段結(jié)束之后,函數(shù)跳轉(zhuǎn)到由C語言寫的main()函數(shù),也就是Bootloader開發(fā)的第二階段EBoot,該階段的開發(fā)環(huán)境是Platform Builder,簡稱PB,它是微軟提供給開發(fā)人員進行基于Windows CE平臺下嵌入式操作系統(tǒng)定制的集成開發(fā)環(huán)境。main()函數(shù)實現(xiàn)代碼為:
該函數(shù)主要功能就是調(diào)用BootloaderMain()函數(shù),其實main函數(shù)不是必須的,實際上程序也可以直接跳轉(zhuǎn)到BootloaderMain()函數(shù),在第一階段的匯編代碼后加入main()函數(shù)可以更好地提高程序的性能。本文主要分析BootloaderMain()調(diào)用的一些關(guān)鍵的函數(shù),函數(shù)調(diào)用關(guān)系如圖1所示。本文引用地址:http://www.ex-cimer.com/article/150979.htm
最早被BootLaderMain()調(diào)用的OEM函數(shù)是OEMDebugInit(),它負責(zé)初始化BootLoader的調(diào)試功能串口,在它被調(diào)用運行之后BootLoader的代碼才可以調(diào)用它的調(diào)試輸出功能函數(shù)。OEMDebugInit()調(diào)用OEMInitDebugSerial()來初始化調(diào)試串口。
評論