Forum: Mikrocontroller und Digitale Elektronik [STM32] Probleme mit USART-Interrupt


von Andi M. (anm)


Lesenswert?

Hallo!

Erstmal der Link zu meinem Code: http://rafb.net/p/sCfmlT80.html

Wenn ich bei meinem STM32-SK den Controller programmiere, funktioniert 
alles soweit, nur mit den Interrupts hab ich Probleme! Sobald ich 
NVIC_Init(..) - Zeile 99 - ausführe springt er in den HardFault - warum?

Ich habe schon verschiedenste Dinge und alle 3 USARTs probiert, aber ich 
komm einfach nicht hin. Hat wer einen Tipp für mich?

Danke!

mfg andi

von Michi (Gast)


Lesenswert?

Poste mal den kompletten Code. Mit Exception Vector Table und Startup 
Code.

von Andi M. (anm)


Angehängte Dateien:

Lesenswert?

Hi!

Danke für die Antwort! Im Anhang der Code der Interruptvektoren (was du 
mit startup-code meinst weiss ich leider nicht). Der Rest sind 
eigentlich nur mehr die std. Library-Files.

mfg andi

von Jakob (Gast)


Lesenswert?

Ich bin zwar erst Einsteiger und habe auch nicht das STM32-SK, sondern 
den Primer, aber bei mir steht die Vector Tabelle in einer Sektion mit 
der Bezeichnung:
   section(".ram_isr_vector")

Poste doch einfach mal Dein ganzes Projekt. Samt Makefile und 
Linkerfile.
So erscheint mir das auch unvollständig. Oder ist in der Library auch 
die Vectortabelle drin? Beim Circle OS vom Primer ist das nicht der 
Fall.

von Andi M. (anm)


Angehängte Dateien:

Lesenswert?

Hi!

Also die Vektoren sind in der Library drin. Linkerfile ist dabei (mit 
EWARM erstellt) und Makefile hab ich leider keins in EWARM - macht 
anscheinend alles das IDE für mich ;)

Im Anhang das komplette Projekt inkl. Workspace usw....

Danke!

mfg andi

von Andi M. (anm)


Lesenswert?

So, funktioniert - Vektoren waren falsch in der Lib :-(

von Daniel B. (dbuergin)


Lesenswert?

Hallo

Könntest Du etwas genauer ausführen, was in der Lib falsch ist ?

Ich wollte gerade ein erstes Experiment mit den USART's machen.
Wäre cool wenn ich nicht über den gleichen Fehler stolpere.

Danke und Gruss

Daniel

von Andi M. (anm)


Lesenswert?

Die Lib stimmt, meine Änderungen waren falsch.
Kleiner Tipp: Nimm das Projekt direkt aus der Lib (da gibts fertig 
hergerichtete Projekte, z.b. eben auch für EWARM5)

mfg

P.S.: Ansonsten schau mal im Chat vorbei - bin dort auch des öfteren 
drin...

von Daniel B. (dbuergin)


Lesenswert?

Besten Dank

Im Moment halte ich mich sowieso streng an die Beispiele, bin noch
zu neu auf diesem Chip ;-)

Bin aber erstaunt, habe mir unter Linux die GNU 4.3.3 Toolchain
aufgebaut mit dem OpenOCD 0.1.0 und alles funktioniert wunderbar.

Wenn das Makefile mal stimmt, klappt's auch mit den Beispielen.

Daniel

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.