首页 > 其他分享 >stm32单片机在Keil环境下定义的变量都存储到哪去了?(以STM32f1系列为例)

stm32单片机在Keil环境下定义的变量都存储到哪去了?(以STM32f1系列为例)

时间:2023-10-23 14:11:05浏览次数:31  
标签:RW 为例 RAM stm32 flash Keil Code RO data

stm32f1系列单片机,在keil5环境下编译后显示四个储存区域,分别是

Code, RO-data,RW-data,ZI-data

Code为程序代码部分
RO-data 表示 程序定义的常量const
RW-data 表示 已初始化的全局变量
ZI-data 表示 未初始化的全局变量

储存区域如下:

Code, RO-data,RW-data ............flash
RW-data, ZIdata...................RAM

不过初始化时RW-data从flash拷贝到RAM

所以相当于Code, RO-data占用flash的空间;RW-data, ZIdata占用RAM的空间。

如图所示的是我用的一块c6t6的板子,flash 32k,RAM 10k。我们可以计算一下,Code+RO-data一共31544字节,RW-data,+ZIdata一共9728字节。内存没有溢出,但是快满了哈。

这里说一下,如果RAM里的数据超过上限,程序可以烧录,但是不会运行;flash数据超过上限,程序无法烧录进单片机。

原文链接:https://blog.csdn.net/qq_41963133/article/details/125987460

 

标签:RW,为例,RAM,stm32,flash,Keil,Code,RO,data
From: https://www.cnblogs.com/qiynet/p/17782265.html

相关文章

  • 浅析“圆”在中国古典舞创作中的运用——以《踏歌》为例(文档)
    目录摘要IAbstractII一、绪论1(一)研究背景1(二)研究的目的及意义1(三)研究方法21.文献研究法22.经验总结法23.个案研究法2二、中国古典舞“圆”的概述3(一)中国古典舞中“圆”的认知3(二)中国古典舞中“圆”的表现形式31.静态造型中的“圆”32.动作呈现时的“圆”43.舞蹈动......
  • stm32_1_开发环境配置
    20年参加ROBOMASTER,学习到stm32。21年大学毕业,参加土木类工作,把之前学到的全都丢弃了。最后还是靠stm32找到了工作。感谢这门技术,把这几年学到的东西做个总结。初学者还是建议看正点原子,野火视频教材。正点原子:http://47.111.11.73/docs/index.html野火:https://doc.embedfire.c......
  • 基于STM32的物联网节点设计与实现-传感器数据采集与无线通信
    基于STM32微控制器的物联网(IoT)节点的设计和实现。我们讨论物联网节点的基本概念和功能,并详细介绍了STM32微控制器的特点和优势。然后,我们将探讨如何使用STM32开发环境和相关的硬件模块来设计和实现一个完整的物联网节点。最后,我们将提供一个示例代码,展示如何在STM32上实现基本的传......
  • STM32不使用 cubeMX实现外部中断
    这篇文章将介绍如何不使用cubeMX完成外部中断的配置和实现。@TOC前言实验开发板:STM32F103C8T6。所需软件:keil5,cubeMX。实验目的:如何不使用cubeMX实现外部中断。实验:使用外部中断控制key点亮led.如果大家想了解如何cubeMX实现外部中断,可以参考我之前的文章:最详细STM32,cub......
  • 最详细STM32,cubeMX外部中断
    这篇文章将详细介绍cubeMX外部中断的配置,实现过程。@TOC前言实验开发板:STM32F103C8T6。所需软件:keil5,cubeMX。实验目的:外部中断的意义,cubeMX配置和实现等。一、外部中断的基础知识。对于外部中断的基础知识,可以参考我之前的文章:STM32EXTI外部中断二、cubeMX配置外部中断选......
  • 嵌入式(MCU)STM32L496QEI6/STM32L496QGI3基于ARM®Cortex®-M4内核
    一、简介STM32L432位MCU+FPU是超低功耗微控制器,基于高性能的ARM®Cortex®-M432位RISC内核,工作频率高达80MHz。Cortex-M4内核具有单浮点单元(SFPU)精度,支持所有ARM单精度数据处理指令与数据类型。同时执行全套DSP指令和存储保护单元(MPU),增强应用安全性。明佳达供求嵌入式(MC......
  • 2. STM32 HAL库结构的初步分析
    1.以串口为例,添加串口的HAL库源码我们使用的是异步通信的方式,因此将stm32f1xx_hal_uart.c添加进来。在本次学习中,串口我们使用3种方式去学习,轮询、中断、DMA方式。因此,我们也将DMA的HAL库源码添加进来。 ......
  • ardunio-stm32采集风速传感器
                波特率都是4800设备地址默认01广播FF #definemySerialSerial2byteMsg_getdata[8]={0x01,0x03,0x00,0x00,0x00,0x02,0xC4,0x0B};charRecData[9]={0};//==============校验==============uint16_tmodbus_crc16(char......
  • STM32 EEPROM_Emulation 保存数据使用注意事项
    1目的:stm32官方提供flash模拟eeprom的代码例子,为了能给产品添加数据保存功能,可以改造该例子迅速完成数据保存的功能。示例代码路径:C:\Users\rd-yhzhang\STM32Cube\Repository\STM32Cube_FW_F1_V1.8.5\Projects\STM32F103RB-Nucleo\Applications\EEPROM\EEPROM_Emulation。2......
  • STM32单片机实现Bootloader跳转的关键步骤(转载)
    STM32单片机实现Bootloader跳转的关键步骤-知乎(zhihu.com)STM32单片机实现Bootloader跳转的关键步骤(qq.com)现在越来越多的嵌入式设备支持远程自动升级,不需要再借助下载器。这样对于设备的维护非常方便。当然若使设备支持远程升级,需要编写支持升级的程序代码,可以称之为B......