Další dotaz na STM32F050C4

HUDA volny hudaklan na volny.cz
Úterý Prosinec 3 11:17:58 CET 2013


Omlouvám se, nestíhám.
Teď jsem udělal znova několik pokusů a pořád je to stejné.
Raději jsem si všechno psal, neb hlava je .... a zapomíná.
Pokud se po nastavení déla nezměnila pokračoval jsem dál.
Program jsem zredukoval na nastavení hodin na externí krystal,
nastavení SysTick na 1 ms,nastavení dvou pinů, na kterých
jsou ledky a smyčka ve které jedna ledka změní stav a počká
se 300ms. Nic víc tam už není. Program je v jednom souboru
a nepoužívá standardní knihovny. Je použita jediná proměnná
uint32_t pro zpoždění.

První délka je bez všech doporučených nastavení, optimize O0.

Program size (bytes):    2364|
Data size    (bytes):    1092|
BSS size     (bytes):     288|
              ----------------|
Total size   (bytes):    3744   (R/W Memory: 1380)|

1 - newlib-nano          (v linkeru Newlib Nano-branch)
2 - -fno-builtin         (v kompileru)
3 - -ffunction-sections  (v kompileru - Isolate each function in a section)
     -fdata-sections      (v kompileru - Place data into its own section)
   - --gc-sections        (v linkeru Remove unused sections)
Program size (bytes):    1780|
Data size    (bytes):    1076|
BSS size     (bytes):     288|
              ----------------|
Total size   (bytes):    3144   (R/W Memory: 1364)|

4 - optimalizaci -Os
Program size (bytes):    1224|
Data size    (bytes):    1076|
BSS size     (bytes):     288|
              ----------------|
Total size   (bytes):    2588   (R/W Memory: 1364)|

5 - -fshort-enums        (v kompileru - Allocate to an enum type only as  
many bytes as it needs (short-enums))
   - -funsigned-bitfields (v kompileru - A bit field is unsigned)
   - -funsigned-char      (v kompileru - Left the type char be unsigned)

6 - zmena StarUp a LD scriptu (startup_ARMCM0.S , gcc_arm.ld) nevim, zda  
program bezi
Program size (bytes):    1504|
Data size    (bytes):    1064|
BSS size     (bytes):       4|
              ----------------|
Total size   (bytes):    2572   (R/W Memory: 1068)|

7 - Heap size - nastaveno 0x0010 predtim 0x0000
8 - listing nevypisuje zadny odkaz na impure..... blok, ani nekam do nej  
(aspon jsem to nenasel)

HUDA


Dne Mon, 02 Dec 2013 17:46:31 +0100 Jan Smrz <jan.smrz na email.cz> napsal(a):

> Zkusil jste pouzit nastaveni, co jsem posilal? U F0 by to melo fungovat  
> stejne.
>
> J.S.
>



Další informace o konferenci Hw-list