STM32定义堆栈地址到ram区顶部

2019-06-13来源: eefocus关键字:STM32  堆栈地址  ram区

本设置针对stm32f103rbt6的设置,该芯片RAM大小为20kB,故RAM区地址范围为0x20000000—0x20005000,芯片信息如下图所示;

第一步:

设置.sct文件;

;*************************************************************

; *** Scatter-Loading Description Filegenerated by uVision ***

; *************************************************************

LR_IROM1 0x08000000 0x00020000  {    ;load region size_region

ER_IROM1 0x08000000 0x00020000 {  ; load address = executionaddress

  *.o (RESET, +First)

  *(InRoot$$Sections)

  .ANY (+RO)

  }

RW_IRAM1 0x20000000 0x00005000 {  ; RW data

  .ANY (+RW +ZI)

  }

RW_IRAM2 0x20004800 UNINIT 0x00000800 {  ; STACK ADDRESS

  startup_stm32f10x_md.o (STACK)

  }

RW_IRAM3 0x20004600 UNINIT 0x00000200 {  ; HEAP ADDRESS

  startup_stm32f10x_md.o (HEAP)

  }

}

RW_IRAM2 0x20004800 UNINIT 0x00000800  //设置栈起始地址为0x20004800,栈大小为0x00000800

RW_IRAM3 0x20004600 UNINIT 0x00000200   //设置堆起始地址为0x20004600,堆大小为0x00000200

第二步:

在启动文件中设置堆栈大小;

此处设置的堆栈大小要与第一步一致,否则将会以这次设置的大小为准,第一步设置的堆栈大小将失效;

第三步:

设置存储区分配地址方式;

如下图所示设置,Scatter file选择第一步设置好的.sct文件;

第四步:

查看生成的.map文件

如下图所示,表示起始的堆栈地址已设置到RAM顶端

第五步:

测试验证;

如下图所示,测试验证成功,开始时堆栈地址指向RAM的顶端,即R13的值为0x20005000


关键字:STM32  堆栈地址  ram区

编辑:什么鱼 引用地址:http://news.eeworld.com.cn/mcu/ic464504.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:STM32串口第一个字节丢失问题的分析过程
下一篇:STM32F4的CCM之二

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利

推荐阅读

集性能、紧凑、灵活、能效于一身,ST8引脚STM32微控制器问市

意法半导体8引脚STM32微控制器(MCU)现已上市,紧凑、经济的封装让简单的嵌入式开发项目也能利用32位MCU的性能和灵活性。 新推出的四款STM32G0 微控制器是8引脚经济性和32位性能的完美组合,在市场绝无仅有,基于59 DMIPS的 64MHzArm®Cortex®-M0 + CPU,片上高达8KB的RAM和32KB闪存,高性能外设包括2.5Msps ADC、高分辨率定时器和高速SPI接口。灵活的I/O引脚映射和MCU内部功能,让设计人员轻松升级终端产品功能,不会牺牲电路板空间或物料清单成本。高稳定内部振荡器,在宽温度和宽压范围内精度达到±1%,为开发者节省了外部时钟元件。 
发表于 2019-09-20
集性能、紧凑、灵活、能效于一身,ST8引脚STM32微控制器问市

6.STM32外设函数分类

发表于 2019-09-20
6.STM32外设函数分类

小广播

何立民专栏

单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2019 EEWORLD.com.cn, Inc. All rights reserved