硬汉嵌入式论坛

 找回密码
 立即注册
查看: 4534|回复: 4
收起左侧

[有问必答] __initial_sp在C函数中如何使用

[复制链接]

12

主题

16

回帖

52

积分

初级会员

积分
52
发表于 2021-3-24 14:44:21 | 显示全部楼层 |阅读模式
用的是NXP17系列单片机,按如下方式调用,打印出来的值和我在.map文件找到的值不一样
  1. extern uint32_t __initial_sp;
  2. printf("%d, ", __initial_sp);
复制代码


回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106913
QQ
发表于 2021-3-24 15:25:36 | 显示全部楼层
采用类似这种方法

#ifndef __PROGRAM_START
#define __PROGRAM_START           __main
#endif

#ifndef __INITIAL_SP
#define __INITIAL_SP              Image$$ARM_LIB_STACK$$ZI$$Limit
#endif

#ifndef __STACK_LIMIT
#define __STACK_LIMIT             Image$$ARM_LIB_STACK$$ZI$$Base
#endif

#ifndef __VECTOR_TABLE
#define __VECTOR_TABLE            __Vectors
#endif

#ifndef __VECTOR_TABLE_ATTRIBUTE
#define __VECTOR_TABLE_ATTRIBUTE  __attribute__((used, section("RESET")))
#endif
回复

使用道具 举报

12

主题

16

回帖

52

积分

初级会员

积分
52
 楼主| 发表于 2021-3-24 15:39:13 | 显示全部楼层
已解决
  1. printf("%d, ", &__initial_sp);
复制代码
回复

使用道具 举报

0

主题

2

回帖

2

积分

新手上路

积分
2
发表于 2022-3-16 13:46:53 | 显示全部楼层

我也遇到,能说下你是怎么解决的吗
回复

使用道具 举报

1万

主题

6万

回帖

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
106913
QQ
发表于 2022-3-16 14:30:42 | 显示全部楼层
mooc-ui 发表于 2022-3-16 13:46
我也遇到,能说下你是怎么解决的吗

这个就是。

MDK获取未使用RAM空间首地址方法
https://www.armbbs.cn/forum.php? ... 1353&fromuid=58
(出处: 硬汉嵌入式论坛)
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-5-10 03:24 , Processed in 0.156268 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表