历史上的今天
返回首页

历史上的今天

今天是:2025年06月13日(星期五)

正在发生

2019年06月13日 | STM32定义堆栈地址到ram区顶部

2019-06-13 来源:eefocus

本设置针对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


推荐阅读

史海拾趣

AZ Displays公司的发展小趣事

随着公司规模的扩大和市场份额的提升,AZ Displays开始实施全球化战略。公司在全球范围内建立销售网络和分支机构,积极开拓国际市场。通过与国际知名企业的合作,AZ Displays成功将产品打入国际市场,进一步提升了公司的品牌影响力和市场竞争力。

ASM公司的发展小趣事

进入21世纪,ASM公司开始关注中国市场的潜力。随着中国经济的快速增长和半导体产业的蓬勃发展,ASM公司看到了巨大的商机。公司加大了对中国市场的投入,与中国半导体代工厂建立了紧密的合作关系,为中国市场提供了高质量的产品和服务。这一举措不仅促进了ASM公司在中国市场的快速发展,也为中国半导体产业的进步做出了贡献。

FRIWO公司的发展小趣事

FRIWO公司自成立以来,始终在技术领域保持领先地位。从便携式收录机问世之初,FRIWO就凭借其先进的技术在该领域崭露头角。随后,随着技术的不断进步,FRIWO迅速将业务扩展到Atari计算机、摄影机等新兴领域,并成功成为这些领域的电源解决方案提供商。近年来,FRIWO更是专注于移动电话充电器市场,凭借其卓越的技术实力和创新能力,成为了世界上移动电话充电器的最主要供应商。这一系列的成功,彰显了FRIWO在电子行业中的技术领先地位和多元化发展战略。

Benchmarq Microelectronics Inc公司的发展小趣事

Benchmarq Microelectronics Inc的创立源于几位工程师对半导体技术的深刻理解和市场需求的敏锐洞察。他们看到在快速发展的电子行业中,高性能、低功耗的半导体产品具有巨大的市场潜力。于是,他们决定共同创立Benchmarq Microelectronics Inc,致力于研发和生产先进的半导体产品。在创立初期,公司面临着资金短缺、技术挑战和市场竞争等多重困难。然而,通过团队的努力和合作,公司逐渐攻克了技术难关,推出了一系列受到市场欢迎的半导体产品,初步实现了盈利。

Advanced Analog公司的发展小趣事

Advanced Analog自1999年创立起,便专注于电源管理IC的设计及研发。面对当时电子市场的激烈竞争,公司凭借对技术的深刻理解和敏锐的市场洞察力,成功开发出多款高性能、高可靠性的电源管理IC产品,迅速在行业中崭露头角。通过不断的技术创新和优化,Advanced Analog逐渐在电源管理IC领域建立起自己的技术优势和品牌影响力。

Baumer Electric Ag公司的发展小趣事

Baumer Electric Ag公司创立于1952年,初期主要专注于微动开关的生产。面对市场竞争的激烈,公司创始人Herbert Baumer凭借其敏锐的市场洞察力和坚定的决心,带领团队不断研发新产品,提升技术水平。1960年,公司成功推出首个程序控制系列,标志着Baumer在电控生产流程监控和控制领域取得了重要突破。

问答坊 | AI 解惑

dsp2812评估板 LCD例程

dsp2812评估板 LCD例程…

查看全部问答>

KBDHID 键盘布局定制问题(USAGE-TO-SCANCODE)

在kbdhid.cpp文件下 有3个USAGE-TO-SCANCODE类型的数组,不清楚顺序是根据什么来的?请大家指点下…

查看全部问答>

怎么修改对话框的边界?

我在对话框上加了个Picutre Control,里面显示了一张宽度为240的位图,可是对话框两边始终有一些空白,怎么消除掉? 谢谢…

查看全部问答>

想把A主机显示的图像发送到B主机上,除了抓屏还有什么效率比较高的方法

如题,好多天了,没有找到比较好的解决方法。想从底层的驱动来考虑,不知道怎么弄,也没有驱动基础。大家给点建议,谢谢了…

查看全部问答>

ST让我如何相信你?

                                 申请 付费 的样片几个月了(答应3月底)还是音信全无啊?!…

查看全部问答>

【低功耗】Xilinx的FPGA低功耗相关文章下载(四)

这是我的一些Xilinx的FPGA的论文,传上来给大家分享一下!大家多多支持啊! 我会分批上传,方便大家选择性的交流与下载! [ 本帖最后由 jjkwz 于 2011-11-16 17:08 编辑 ]…

查看全部问答>

基于单片机原理的数字直流电压源设计。

要求输出电压的范围为0V~9.9V,纹波不大于10mV,步进0.1v,输出电流大于500mA,能预制置输出初值,输出电压值由数码管显示。单片机选用51系列的。DA转换电路芯片网上看了下DAC0832最简单普遍。有朋友能指导我做下吗?…

查看全部问答>

用ftp下载vxworks镜像到目标机的时候,网络有问题,求助各位前辈

通过ftp将vxworks镜像从PC机下到目标机的时候,是通过ftpXfer这个函数从PC机读取文件,每次读完镜像之后关闭套接字,但套接字指定的端口变成就会time_wait状态,就要等一段时间才能通过这个函数,从PC机再次通过ftp下载镜像,但这段时间有一分半钟 ...…

查看全部问答>

求一个S3C2440 WINCE6.0 的BSP

求一个S3C2440   WINCE6.0 的BSP,我网上下载了一个  总是编译出错,哪位高人那里有通过编译的BSP,发我一份吧! 感激不尽! eyob@163.com  …

查看全部问答>

大家看下这个 到底哪错了

#include #include #define         F_CPU        7372800                                  &nb ...…

查看全部问答>