STM32_keil compiled memory size analysis

Publisher:RainbowDreamerLatest update time:2018-10-05 Source: eefocusKeywords:STM32 Reading articles on mobile phones Scan QR code
Read articles on your mobile phone anytime, anywhere

Program Size: Code=28784 RO-data=6480 RW-data=60 ZI-data=3900 Meaning


1. Code: The size of the FLASH space occupied by the program, stored in FLASH.

2. RO-data: Read-only-data, program-defined constants, stored in FLASH.

3. RW-data: Read-write-data, initialized variables, stored in SRAM.

4. ZI-data: Zero-Init-data, uninitialized variables, stored in SRAM.


Simply put, when burning, the space occupied in FLASH is: 

ROM(Flash) size = Code+RO-data+RW-data;

The size of the above code = 28784 + 6480 + 60 = 35324

                   = 35324/1024 = 34.5K


When the program is running, the space used by the chip's internal RAM is:

RAM size    = RW-data+ZI-data

In the above code, RAM = 60 + 3900 = 3960

            = 3960/1024 = 3.9K


From the above analysis, we get the memory occupied by this program

ROM = 34.5K

RAM = 3.9K


Then we searched for STM32C8T6 from Baidu Encyclopedia

ROM capacity: 64KB (64K x 8)

RAM capacity: 20K x 8

 

008_STM32_keil compiled memory size analysis


The following are the sizes and address ranges of the large, medium and small capacities of the STM32 series. If we use the internal flash, we must check the address size. In the next article, we will explain how to use the STM32 internal flash.

    008_STM32_keil compiled memory size analysis


008_STM32_keil compiled memory size analysis

008_STM32_keil compiled memory size analysis

008_STM32_keil compiled memory size analysis


Keywords:STM32 Reference address:STM32_keil compiled memory size analysis

Previous article:STM32 program transplantation_Internal flash boot times management
Next article:ARM Learning_Six major instruction sets

Recommended ReadingLatest update time:2024-11-16 14:48

Three programming download methods for STM32
J-link can debug almost all arm chips, it is a good thing. Here are three ways to download programs for stm32: 1. J-Flash download (requires J-link) 2. MDK configuration download (requires J-link) 3. ISP download (serial port download, you need to use the official serial port download software, those who have used
[Microcontroller]
Three programming download methods for STM32
About stm32 timer timing cycle calculation
1.TIMx (1-8), in the default library settings, all are 72M clocks; There are eight TIMx, of which TIM1 and TIM8 are connected to the APB2 bus, while TIM2-TIM7 are connected to the On the APB1 bus. TIM1 & TIM8 are called advanced control timers. The APB2 bus where they are located is also better than the APB1 bus.
[Microcontroller]
About stm32 timer timing cycle calculation
STM32 program download and debugging swd
Description: IAR environment version IAR ARM 6.30.0 1.swd uses jtag's 4 wires VCC, GND, JTMS, JTCK Note: boot0=0, boot1=x 2. The pins of JLINK (20pin) are defined as follows: 3. Setting up the iar environment  Step 1: In Options- Debugger- Setup, select Jlink/J-TRAC as driver   Step 2: In Options- Debugg
[Microcontroller]
STM32 program download and debugging swd
Entering and waking up Stm32 standby mode
1. Basic Introduction 1-1: The "low power mode" of the microcontroller is like the standby mode of a mobile phone. It is different from the normal operating mode and is in a state of saving power and resources. 1-2: In operation, HCLK provides the clock for the CPU, and the cortex-m3 core executes the program code.
[Microcontroller]
Entering and waking up Stm32 standby mode
How to find the cause of hardfault in STM32
There are two main reasons why HardFault_Handler failure occurs in STM32: 1. Memory overflow or out-of-bounds access. This requires standardizing the code when writing the program yourself, and you need to slowly troubleshoot when you encounter it. 2. Stack overflow. Increase the size of the stack.   How to troubl
[Microcontroller]
How to find the cause of hardfault in STM32
STM32 TFT touch screen: process analysis displayed by LCD_ShowChar
    When using a TFT touch screen and wanting to display strings, graphics or numbers, you will find that there is a most important function LCD_ShowChar in their library functions. It seems that few people have analyzed this function. Although it is simple, it is still a bit confusing.     Let me post the code of thi
[Microcontroller]
STM32 TFT touch screen: process analysis displayed by LCD_ShowChar
Use of STM32 advanced timer
       The reason for writing this article is that I found that there are few articles on the Internet that analyze the principles of STM32 registers. Maybe it is too simple and no one is willing to write. So I will write it down and try to make it simple and easy to understand, so as to leave a commemoration. It is d
[Microcontroller]
STM32 startup file ld md hd cl vl xl analysis and selection
To put it bluntly, the following are the differences. There are selective differences when choosing the startup file! startup_stm32f10x_cl.s Interconnected STM32F105xx, STM32F107xx startup_stm32f10x_hd.s Large capacity STM32F101xx, STM32F102xx, STM32F103xx startup_stm32f10x_hd_vl.s Large capacity STM32F100xx startup_s
[Microcontroller]
STM32 startup file ld md hd cl vl xl analysis and selection
Latest Microcontroller Articles
  • Download from the Internet--ARM Getting Started Notes
    A brief introduction: From today on, the ARM notebook of the rookie is open, and it can be regarded as a place to store these notes. Why publish it? Maybe you are interested in it. In fact, the reason for these notes is ...
  • Learn ARM development(22)
    Turning off and on interrupts Interrupts are an efficient dialogue mechanism, but sometimes you don't want to interrupt the program while it is running. For example, when you are printing something, the program suddenly interrupts and another ...
  • Learn ARM development(21)
    First, declare the task pointer, because it will be used later. Task pointer volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • Learn ARM development(20)
    With the previous Tick interrupt, the basic task switching conditions are ready. However, this "easterly" is also difficult to understand. Only through continuous practice can we understand it. ...
  • Learn ARM development(19)
    After many days of hard work, I finally got the interrupt working. But in order to allow RTOS to use timer interrupts, what kind of interrupts can be implemented in S3C44B0? There are two methods in S3C44B0. ...
  • Learn ARM development(14)
  • Learn ARM development(15)
  • Learn ARM development(16)
  • Learn ARM development(17)
Change More Related Popular Components

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号