这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » MCU » TLE9893如何配置堆栈溢出检测?

共1条 1/1 1 跳转至

TLE9893如何配置堆栈溢出检测?

高工
2024-07-02 10:40:22     打赏

我需要了解如何配置堆栈溢出检测。
我从 TLE9893 用户手册中收集到的


  • 需要启用用户堆栈溢出保护 (USOP),

  • 需要通过上限和下限 DSRAM 地址来建立所谓的保护频段。

我的 startup_tle989x.s 文件为堆栈分配的大小为 512 字节:

此外,在主入口点,堆栈指针寄存器的值为 0x180023b0,所以我猜这是堆栈指针的初始值。
我写了以下代码来实现 USOP 用于测试目的:


因此,根据我的理解,警戒带的下限为0x18002 320 ,而上限为0x18002 390,总共为112字节。
现在,正如链接器报告的那样,最大堆栈使用量至少为 144 字节:


因此,可以得出结论,堆栈指针必须位于我定义的保护带区域内,但实际上没有检测到堆栈溢出!




关键词: TLE9893     堆栈    

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]