uC ARM i pliki startowe

Cześć. Z góry przepraszam za glupie pytanie, ale zastanowilo mnie to i nie moge doszukac sie odpowiedzi i moze pomozecie mi.

W uC ARM np STM32 lub LPC11xx kompilator dolacza i kompiluje plik tzw. startowy. Ale dlaczego i po co? Dlaczego robi sie taki wybieg? uC z serii AVR tego nie maja a tez na poczatku nalezy ustawic jego uklady peryferyjne, ustawia sie stos i inne. Czy kompilator niebylby w stanie sobie z tym poradzic bez plikow startowych?

Reply to
slawek7
Loading thread data ...

W dniu 04.01.2012 19:50, slawek7 pisze:

Dlatego, że ustawia się tam "środowisko uruchomieniowe":

- mapę pamięci

- stos

- stertę

- inicjalizację sekcji leżących w RAM

- często też częstotliwość pracy i peryferia

To jest normalne podejście dla każdego procesora.

Oczywiście, że mają, tylko ponieważ jest procesory różnią się między sobą w niewielkim stopniu (a do tego programiści AVR niestety często do najsprawniejszych nie należą) twórcy avr-gcc to ukryli i wystarczy podać

-mmcu, żeby kompilator/linker wykonał resztę roboty.

Ustawiasz stos inaczej niż definiując którąś ze stałych?

Kompilator sobie radzi.

Reply to
Michoo

Macie racje. Doczyałem że taki wybieg jest dlatego ze ARMow jest duzo i ciezko to upchnac w kompilatorze samym.

Reply to
slawek7

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.