Forum: Compiler & IDEs STM32 Vector Table IAR


von Leopold N. (leo_n)


Lesenswert?

Hallo,

ich benutze IAR, um den STM32F103 zu programmieren.
Ich benutze keine StdPeriphal, HAL oder sonst eine Lib.
Man kann in IAR ja das Target angeben. Daraufhin generiert mir die IDE 
eine Vector Table, die aber nur die Vektoren vom Cortex M3 und nicht 
alle Vektoren des µCs enthält.
Wie kann ich das ändern?

Grüße

von Lars F. (flemmy)


Lesenswert?

Moin Leopold,

Schau dazu doch mal in die Dokumentation des uC. Vielleicht gibt es da 
ja ein Kapitel zum Thema Interrupts. Das Kapitel könnte dann auch eine 
Vector Table beinhalten.
Damit könnte dann die Tabelle der IAR ergänzt werden.

Gruß

von mal schauen (Gast)


Lesenswert?

Oder ein screenshot von der Targetauswahl und von der 
Projektkonfiguration. Damit man sieht, welche header eingebunden sind.

von Michael F. (Gast)


Lesenswert?

Moin,

die Embedded Workbench generiert keine Vektortabelle, sondern nimmt per 
default eine minimale Startup Config, in der nur die "normalen" Cortex-M 
Interrupts definiert sind.

Man kann aber eines der Beispielprojekte als Vorlage nehmen:

Help => Information Center => Example Projects => ST => Download... => 
ST => STM32F1xx => STM32CubeF1 Embedded Software => STM32F103RB-Nucleo 
=> GPIO => Open Project => Speicherort auswählen

Wenn Du den Standard-Pfad für das Beispielprojekt belässt, dann findet 
sich in den Tiefen der Unterverzeichnisse ein startup_stm32f103xb.s, in 
dem die komplette Vektortabelle des µC drin sein sollte:

c:\Users{[Benutzername]\Documents\IAR Embedded 
Workbench\arm\8.32.3\ST\STM32F1xx\STM32Cube_FW_F1\Projects\STM32F103RB-N 
ucleo\Examples\GPIO\GPIO_IOToggle\EWARM

Dieses *.s einfach als Startpunkt ins eigene Projekt kopieren, wobei es 
natürlich nicht schadet, wenn man de Code von ST noch mal anschaut, ob 
er den eigenen Erwartungen entspricht ;-)

von m.n. (Gast)


Lesenswert?

Leopold N. schrieb:
> Daraufhin generiert mir die IDE
> eine Vector Table, die aber nur die Vektoren vom Cortex M3 und nicht
> alle Vektoren des µCs enthält.

Dann sieh noch einmal genauer hin! In der startup_stm32F103xx.s sind 
alle Vectoren des betreffenden µC vorhanden.

von Leopold N. (leo_n)


Lesenswert?

Ah ja dankeschön,

mit der startup_....s datei funzt es prima.

Danke

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.