Forum: Mikrocontroller und Digitale Elektronik STM32 leeres Projekt 1632 Byte


von Peter F. (peter_da_steht_er)


Lesenswert?

Hallo.
Ich frage mich, wie eine leere main-Schleife 1632 Bytes Daten 
verursachen kann. Konkret geht es um einen STM32f030, in C mit Keil.
"Program Size: Code=612 RO-data=196 RW-data=0 ZI-data=1632"

Okey es kommt ja noch das Start-File hinzu, aber insgesammt 1632 Bytes 
ist ne andere Hausnummer.


Was wird da so viel Speicher brauchen?
1
#include "stm32f0xx.h"
2
3
int main(void)
4
{  
5
}
6
7
#ifdef  USE_FULL_ASSERT
8
9
/**
10
  * @brief  Reports the name of the source file and the source line number
11
  *         where the assert_param error has occurred.
12
  * @param  file: pointer to the source file name
13
  * @param  line: assert_param error line source number
14
  * @retval None
15
  */
16
void assert_failed(uint8_t* file, uint32_t line)
17
{ 
18
  /* User can add his own implementation to report the file name and line number,
19
     ex: printf("Wrong parameters value: file %s on line %d\r\n", file, line) */
20
21
  /* Infinite loop */
22
  while (1)
23
  {
24
  }
25
}
26
#endif

von Amateur (Gast)


Lesenswert?

Unsichtbar ist bei einem C-Projekt der Initialisierungsteil.
Der wird, ohne dass man es explizit sieht/angibt, immer eingefügt.
Ein Programm beginnt nie bei main().

von Nico (Gast)


Lesenswert?

Ich tippe auf mbed_error. Ich habe mal vor einiger Zeit angefangen mit 
nem STM32F411 und habe dort sogut wie alles aus dem mbed rausgeschmissen 
was nicht Niet und Nagelfest war.

Einfaches UART mit mbed_error 9220 Bytes.
Ohne mbed_error 5252 Bytes.

von Cortex 2 go (Gast)


Lesenswert?

Peter F. schrieb:
> Was wird da so viel Speicher brauchen?

Wirf doch einen Blick ins Map-file. Da wird die Speicherverwendung 
vollständig aufgelöst.
Startup, IVT, ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.