0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎么才能知道单片机程序占了多少字节

MCU开发加油站 来源:博客园 作者:Brianzhangzhang 2021-06-12 18:18 次阅读

对于单片机程序占了多少字节?单片机还剩多少存储空间?想必你看到这篇文章时对这两个问题也很迷糊吧,接下来我就把自己所了解到的关于单片机程序占用空间大小的问题做一个整理,方便自己也方便他人。

1、STM32类单片机在程序编译后会出现下面图片中所示内容

a70dddd4-be47-11eb-9e57-12bb97331649.png

上图中分别有Code、RO-data、RW-data、ZI-data,Code:表示所要执行的代码,程序中所有的函数都位于此处。RO-data:表示只读数据,程序中所定义的全局常量数据和字符串都位于此处。RW-data:表示已初始化的读写数据,程序中定义并且初始化的全局变量和静态变量位于此处。ZI-data:表示未初始化的读写数据,程序中定义了但没有初始化的全局变量和静态变量位于此处。通过上面的描述就可以看出:

下载到单片机FLASH的程序是:Code+RO-data+RW-data(上图中数据为字节数,kb=byte/1024);

运行在RAM中的数据是:

RW-data+ZI-data;

2、51类单片机编译后会有如下画面

a716b710-be47-11eb-9e57-12bb97331649.png

上图分别有data、xdata、const、code。data:片内RAM区消耗。xdata:片内扩展区RAM区消耗。code:表示所要执行的代码,程序中所有的函数都位于此处。下载到单片机FLASH中的程序大小为:code+const下载到单片机RAM的大小为:data+xdata

本文来源:博客园-Brianzhangzhang,转载请注明出处!

原文链接:https://www.cnblogs.com/brianblog/p/7117896.html

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 单片机
    +关注

    关注

    6034

    文章

    44545

    浏览量

    634369
  • RAM
    RAM
    +关注

    关注

    8

    文章

    1368

    浏览量

    114630
  • STM32
    +关注

    关注

    2270

    文章

    10890

    浏览量

    355630
  • 代码
    +关注

    关注

    30

    文章

    4774

    浏览量

    68502

原文标题:如何知道单片机程序占了多少字节?

文章出处:【微信号:mcugeek,微信公众号:MCU开发加油站】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    ADS1259 AD转换根据输出编码channel data,怎么才能知道输出电压?

    ADS1259 AD转换根据输出编码channel data,怎么才能知道输出电压呢?
    发表于 12-12 07:36

    单片机怎么写入程序

    程序通常涉及以下几个步骤: 选择单片机和开发环境 : 确定项目需求,选择合适的单片机型号。 安装相应的开发环境,如Keil、IAR、MPLAB等。 硬件连接 : 将单片机连接到开发板或
    的头像 发表于 10-21 11:21 403次阅读

    如何才能知道HTS3001工作时的温度呢,用什么测量?

    怎么样才能知道HTS3001工作时的温度呢,用什么测量?
    发表于 09-19 08:20

    keil可以读出单片机程序

    Keil是一款广泛应用于单片机程序开发的软件,它提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案。然而,关于Keil是否能直接“读出”单片机程序
    的头像 发表于 09-02 10:32 869次阅读

    单片机烧录程序用什么软件

    单片机烧录程序单片机开发过程中的一个重要环节,涉及到将编写好的程序代码通过烧录器写入单片机的ROM中,以实现对
    的头像 发表于 09-02 10:05 1082次阅读

    单片机烧录程序可以重新烧吗

    单片机(Microcontroller Unit, MCU)是一种集成电路芯片,它将计算机的CPU、存储器、输入/输出接口等集成在一块芯片上,用于控制各种电子设备。单片机烧录程序是指将编写
    的头像 发表于 09-02 10:04 1128次阅读

    单片机烧录程序的线比单片机上的少还能烧录吗

    单片机烧录原理 单片机烧录是指将编写好的程序代码通过一定的方式传输到单片机的存储器中,使其能够按照程序的指令运行。这个过程通常需要使用烧录器
    的头像 发表于 09-02 09:54 472次阅读

    单片机烧录程序的基本步骤是什么

    单片机烧录程序单片机开发过程中非常重要的一步,它涉及到将编写好的程序代码通过一定的方式传输到单片机内部的存储器中,使
    的头像 发表于 09-02 09:47 960次阅读

    stm32单片机烧录程序会擦除原来的程序

    在STM32单片机烧录程序的过程中, 通常情况下会擦除原来的程序 ,并将新程序写入单片机的闪存(Flash)中。这一过程是通过烧录工具(如S
    的头像 发表于 09-02 09:42 1859次阅读

    CYT2B9怎么才能知道workflash的数据是可读取的?

    您好,我们正在使用 CYT2B9,发现 workflash 在擦除后,直接读取会触发异常,只有写入数据后,才能正常读取。我的问题如下。 如果我在写 workflash 的过程中异常掉电或复位,下一次运行时,我怎么才能知道 workflash 的数据是可读取的?如果直接读取
    发表于 02-02 16:47

    怎样才能知道TC364DP控制器特定pFlash逻辑扇区的状态是否已删除?

    我使用的是 TC364DP控制器,我想知道特定 pFlash 逻辑扇区的状态(是否已删除)。我怎样才能知道它是否被删除。
    发表于 01-24 06:51

    分享一下用ST-LINK Utility识别单片机程序是否跑飞

    最近有网友大概问了这样的问题:单片机项目偶尔经常出现异常,不知道程序跑飞了,还是进入某个死循环了。
    的头像 发表于 01-09 11:40 3345次阅读
    分享一下用ST-LINK Utility识别<b class='flag-5'>单片机</b><b class='flag-5'>程序</b>是否跑飞

    单片机芯片怎么写入程序

    单片机芯片的程序写入是通过将程序代码写入单片机芯片的非易失性存储器(如Flash)中实现的。 在计算机科学和电子工程领域,单片机是一种集成电
    的头像 发表于 01-05 14:06 8227次阅读

    怎么才能知道LTC3780是否烧了?

    我怎么才能知道我的LTC3780是否烧了
    发表于 01-05 07:25

    单片机程序读取需要什么工具

    单片机程序读取的工具可以分为硬件工具和软件工具两类。下面将详细介绍这些工具的种类、功能和使用方法。 一、硬件工具 单片机开发板:单片机开发板是最基本的硬件工具之一,它通常由主控芯片、输
    的头像 发表于 01-02 18:10 3786次阅读