ZHCUAV8W january 1998 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
引導(dǎo)掛鉤是可將應(yīng)用程序函數(shù)插入 C/C++ 引導(dǎo)進程的點。默認(rèn)引導(dǎo)掛鉤函數(shù)隨運行時支持 (RTS) 庫一同提供。但是,您可以實現(xiàn)這些引導(dǎo)掛鉤函數(shù)的自定義版本,如果在運行時庫之前鏈接了 RTS 庫中的默認(rèn)引導(dǎo)掛鉤函數(shù),則自定義版本將覆蓋 RTS 庫中的默認(rèn)引導(dǎo)掛鉤函數(shù)。在繼續(xù)進行 C/C++ 環(huán)境設(shè)置之前,這些函數(shù)可以執(zhí)行任何應(yīng)用特定的初始化。
請注意,TI-RTOS 操作系統(tǒng)使用自定義版本的引導(dǎo)掛鉤函數(shù)進行系統(tǒng)設(shè)置,因此,如果使用 TI-RTOS,則應(yīng)小心覆蓋這些函數(shù)。
以下引導(dǎo)掛鉤函數(shù)可用:
__mpu_init(): 如果支持 MPU ,此函數(shù)提供用于初始化 MPU 的接口。在初始化棧指針之后,但在執(zhí)行任何 C/C++ 環(huán)境設(shè)置之前,會調(diào)用 __mpu_init() 函數(shù)。此函數(shù)不應(yīng)返回值。
_system_pre_init(): 此函數(shù)提供執(zhí)行應(yīng)用特定的初始化的位置。它在初始化棧指針之后,但在執(zhí)行任何 C/C++ 環(huán)境設(shè)置之前被調(diào)用。對于支持 MPU 的目標(biāo),此函數(shù)在 __mpu_init() 之后調(diào)用。默認(rèn)情況下,_system_pre_init() 應(yīng)返回非零值。如果 _system_pre_init() 返回 0,則會繞過默認(rèn)的 C/C++ 環(huán)境設(shè)置。
_system_post_cinit(): 在 C/C++ 環(huán)境設(shè)置過程中,在 C/C++ 全局?jǐn)?shù)據(jù)被初始化,但在調(diào)用任何 C++ 構(gòu)造函數(shù)之前調(diào)用此函數(shù)。此函數(shù)不應(yīng)返回值。
_c_int00( ) 初始化例程還提供了一種機制,讓應(yīng)用程序在初始化 C/C++ 環(huán)境之前執(zhí)行設(shè)置操作(設(shè)置 I/O 寄存器、啟用/禁用計時器等)。