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
引导挂钩是可将应用程序函数插入 C/C++ 引导进程的点。默认引导挂钩函数随运行时支持 (RTS) 库一同提供。但是,您可以实现这些引导挂钩函数的自定义版本,如果在运行时库之前链接了 RTS 库中的默认引导挂钩函数,则自定义版本将覆盖 RTS 库中的默认引导挂钩函数。在继续进行 C/C++ 环境设置之前,这些函数可以执行任何应用特定的初始化。
请注意,TI-RTOS 操作系统使用自定义版本的引导挂钩函数进行系统设置,因此,如果使用 TI-RTOS,则应小心覆盖这些函数。
以下引导挂钩函数可用:
__mpu_init(): 如果支持 MPU ,此函数提供用于初始化 MPU 的接口。在初始化栈指针之后,但在执行任何 C/C++ 环境设置之前,会调用 __mpu_init() 函数。此函数不应返回值。
_system_pre_init(): 此函数提供执行应用特定的初始化的位置。它在初始化栈指针之后,但在执行任何 C/C++ 环境设置之前被调用。对于支持 MPU 的目标,此函数在 __mpu_init() 之后调用。默认情况下,_system_pre_init() 应返回非零值。如果 _system_pre_init() 返回 0,则会绕过默认的 C/C++ 环境设置。
_system_post_cinit(): 在 C/C++ 环境设置过程中,在 C/C++ 全局数据被初始化,但在调用任何 C++ 构造函数之前调用此函数。此函数不应返回值。
_c_int00( ) 初始化例程还提供了一种机制,让应用程序在初始化 C/C++ 环境之前执行设置操作(设置 I/O 寄存器、启用/禁用计时器等)。