FAQWakeUp为什么要使用自己定义的向量表

S32K3xx休眠唤醒的例程中,为什么休眠之前要设置自己定义的向量表,而不使用默认的向量表
更新时间:2022.03.07 浏览量:0

自己定义向量表内容如下

__attribute__ ((section(".rodata"))) volatile uint32_t const VectorTable[] =

{

(const uint32_t )&__Standby_Stack_start,

        (const uint32_t )((uint32_t *)&FastWkup_EntryAddress),

        (const uint32_t )((uint32_t *)&undefined_handler)

};

向量表的内容格式是依据内核要求设定的,主要定义向量表是为了在进入Reset_Handler前,先执行FastWkup_EntryAddress()函数。

在FastWkup_EntryAddress()函数中,可以读取WKUP寄存器,将唤醒源的信息先保存到Standby RAM,方便在唤醒后判断对应的唤醒源

  • 上一篇:Fast Wakeup 的使能方法
  • 下一篇:WakeUp例程中,启动文件为什么有两个SRAM初始化函数