[STM32] plik z funkcjami przerwan

Czesc. moze dosc dlupie pytanie dla Was ale sie troche pogubilem. Jest sobie projekt na STM32 pisany w srodowisku Keila. Jest plik main.c, jest startup.s. Nie wiem dlaczego w pliku main nie jest nigdzie dyrektywa include dolaczony plik z prototypami funkcji przerwan, natomiast jakos jest ten plik kompilowany i te funkcjie do projektu sa dolaczane. Dlaczego? W AVR kazda funkcja musiala miec prototyp i musialy jej deklaracje byc dolaczone, a tu? Czego nie dostrzegam?

Reply to
slawek7
Loading thread data ...

W dniu 2012-03-21 09:07, slawek7 pisze:

Bo w opcjach (Project -> Options for target... -> c/C++ -> Include Paths) możesz mieć dopisaną ścieżkę, w której znajdują się automatycznie dołączane pliki *.h .

Reply to
Meloman

slawek7 snipped-for-privacy@wp.pl napisał(a):

Nie wiem jak w Keilu, ale w IAR te przerwania definiowane są w pliku asemblera, dołączanym do projektu.

Reply to
Grzegorz Niemirowski

Nie znam tego środowiska, ale zakładam, że jest tam standardowe podejście:

Funkcja przerwania jest zdefiniowana jako weak symbol w skrypcie linkera

- jak dostarczysz taki symbol to będzie on podpięty, jak nie dostarczysz to będzie podpięty ten ze startup.s (albo pętla nieskończona albo reset).

Nie muszą. Na AVR jest lukier składniowy w postaci makr ISR i żeby je rozwinąć musisz dołączyć nagłówek, ale jak lubisz nurkowanie w szambie to możesz pisać przerwania jako __vector_NUMER i wszystko się powinno ładnie skompilować.

Reply to
Michoo

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.