历史上的今天
返回首页

历史上的今天

今天是:2025年05月29日(星期四)

正在发生

2018年05月29日 | STM32内存使用及分配

2018-05-29 来源:eefocus

堆空间和栈空间配置

堆栈内存大小分配

Stack Size,一般小工程0X400足够,我们综合实验才设置0X1000就够用,所以默认无需设置太大。Stack_Size的值根据你程序中局部变量最大尺寸计算, 
Heap Size,如果没有用到标准库的malloc,就是废物,纯属浪费内存,所以直接设置为0即可。Heap_Size的值如果程序中没有用到动态内存malloc就默认不用管。

编译后空间使用情况

编译输出空间大小分配 
在Keil中编译工程成功后,在下面的Bulid Ouput窗口中会输出下面这样一段信息: 
Program Size: Code=6320 RO-data=4864 RW-data=44 ZI-data=1636

Code :是程序中代码所占字节大小 
RO-data :程序中所定义的指令和常量大小 (个人理解 :Read Only) 
RW-data :程序中已初始化的变量大小 (个人理解”:Read/Write) 
ZI-Data :程序中未初始化的变量大小 (个人理解 :Zero Initialize)

ROM(Flash) size = Code+RO-data+RW-data; 
RAM size = RW-data+ZI-data 
可以通过.map查看占用的flash和ram大小


推荐阅读

史海拾趣

Alpha 3 Manufacturing公司的发展小趣事

Alpha 3 Manufacturing公司深知产品质量是企业生存和发展的关键。因此,公司建立了严格的质量管理体系,从原材料采购到产品出厂的每一个环节都进行严格的把控。同时,公司还引入了先进的生产设备和检测仪器,确保产品的质量和性能达到国际先进水平。此外,公司还定期对生产过程进行审查和改进,不断提高生产效率和产品质量。

B&F Fastener Supply公司的发展小趣事

B&F Fastener Supply公司在上世纪末成立之初,就瞄准了快速发展的电子行业,意识到紧固件和电子元器件的供应将成为行业发展的关键。公司迅速调整战略,开始专注于电子工业用紧固件的研发和销售。通过与多家电子制造厂商建立合作关系,B&F逐渐在电子紧固件市场占据了一席之地。

ALLIED [Allied Electronics]公司的发展小趣事

凭借优质的产品和服务,B&F Fastener Supply公司逐渐赢得了大型电子厂商的青睐。多家知名电子企业选择与B&F建立长期合作关系,将其作为紧固件和电子元器件的主要供应商。这不仅为B&F带来了稳定的订单和收入来源,还进一步提升了公司在电子行业的地位和影响力。

Flambeau公司的发展小趣事

随着电子行业的快速发展,Flambeau公司不断加大研发投入,致力于技术创新和产品多样化。公司研发团队通过改进生产工艺、优化材料配方、引入先进的设计软件等措施,不断提升产品的性能和质量。同时,Flambeau还积极拓展产品线,从最初的塑料储存产品扩展到更广泛的电子包装解决方案,包括防静电包装、抗震包装等,以满足电子行业日益增长的多样化需求。

高创科技(gotrend)公司的发展小趣事

在追求经济效益的同时,Flambeau公司始终不忘履行社会责任和环保使命。公司积极响应全球可持续发展号召,将环保理念融入产品研发、生产和销售的各个环节。通过采用环保材料、优化生产工艺、推广循环经济等措施,Flambeau有效降低了产品生命周期中的环境影响。此外,公司还积极参与环保公益活动和社会责任项目,为推动电子行业的绿色可持续发展贡献力量。

Beta Dyne Inc公司的发展小趣事

Beta Dyne注重企业文化的建设,倡导创新、协作、进取的精神。公司定期组织各类培训和团建活动活动,提升员工的专业技能和团队凝聚力。同时,Beta Dyne还积极引进优秀人才,打造了一支高效、专业的团队,为公司的持续发展提供了有力保障。

问答坊 | AI 解惑

变压器知识

[U][ip] 变压器是变换交流电压、电流和阻抗的器件,当初级线圈中通有交流电流时,铁芯(或磁芯)中便产生交流磁通,使次级线圈中 感应出电压(或电流)。变压器由铁芯(或磁芯)和线圈组成,线圈有两个或两个以上的绕组,其中接电源的绕组叫初 ...…

查看全部问答>

DSP 程序动态加载问题

选用的是TMS320C6713 外挂FLASH和SDRAM 程序分为3部分 1K bootload汇编程序 基本通信程序 算法主程序 上电后EDMA自动从FLASH加载1K bootload代码到IRAM,利用bootload程序将基本通信程序加载到IRAM,利用_c_int00跳转到基本通信程序执行。再利用 ...…

查看全部问答>

在飞凌S3C6410开发板上成功移植VXWORKS嵌入式操作系统!

本文出自 飞凌嵌入式官方网站  www.witech.com.cn VXWORKS是当今最稳定可靠的嵌入式实时操作系统,TE6410作为高端嵌入式开发板,已经被成功移植 VXWORKS,附件为相关文档(版权问题,部分内容未能发布,此文档仅作为参考,希望对朋友们 ...…

查看全部问答>

PB编译的时候遇到错误,哪位能帮我一下啊,谢谢!

我是一名新手,我用wince5.0编译一个新建的PB的时候,提示有下面的错误: making: FATAL ERROR:Cannot open F:\\新建文件夹\\2222\\Reldir\\smdk2440a_ARMV4I_Relea\\postproc\\platform.bib making: FATAL ERROR:Cannot open F:\\新建文件夹\\ ...…

查看全部问答>

pic18f452定时器中断问题

OSCCON=0x70; //内部时钟8Mhz PORTD=0; TRISD=0; T0CON=0x05; //关定时器,16位,内部时钟源,64分频 TMR0H=??; //0.1s    TMR0L=?? 如何计算这两个值使时间为0.1s?在线等啊 我算出来一直多了2倍 诶…

查看全部问答>

请教STM32USBIAP!!

我做一个HID类设备,需要加IAP功能,但是不想用做两个设备。也就是说我要用HID类设备来更新程序,不用STM的DFU。…

查看全部问答>

请教uint16定义

在下列定义中 struct HISPCP_BITS  {   // bits  description    Uint16 HSPCLK:3;       // 2:0   Rate relative to SYSCLKOUT    Uint16 rsvd1:13;  & ...…

查看全部问答>

LPC1114在keil MDK下载报错flash timeout

各位大大! 我的原理图   利用keilV4.13a下载的时候,总是如下报错: 但是,Utilities setting中已显示检测到ARM core,如下图: 网上百度了很多,感觉是flash算法的问题,请问哪位大大能帮我看看? 原理图上reset管脚直接置高的作 ...…

查看全部问答>

关于单片机IO电压3.3V和5V的区别和优缺点?概念很模糊。

就51系列而言,单片机电压有3.3伏和5伏之分。各IO口输入输出高低电平时电压允许值可看芯片手册,相关驱动电流也可以查看到。但不解的是:5v的单片机能不能驱动或说使3.3v的器件工作,会有什么副作用?反过来又怎么样?…

查看全部问答>

DIY一节7号电池点亮超高亮LED做停电应急用

一、电路原理图准备     一节镍氢电池的电压只有1.2V,而超高亮LED需要3.3V以上的工作电压才能保证足够的亮度。因此。必须设法将电压升高,常见的升压电路一般有二种形式,即高频振荡电路和电磁感应升压电路。对于升压电路,有两种电路 ...…

查看全部问答>