STM32 SysTick

Gast #1382448
Lesenswert?
• ▲
▼
hallo,
arbeite gerade an dem beispiel mit dem system timer.
Bei dem beispiel von ST läufts das beispiel nicht korrekt
und ich finde den fehler nicht.
Wenn ich das ganze laufen lasse, bleibt es an der datei
STM32F10x.s an der stelle hängen (endlosschleife).
   SysTick_Handler PROC
                   EXPORT  SysTick_Handler           [WEAK]
                   B       .
                   ENDP
Hoffe jemand kann mir helfen mit dem beispiel für den
systick

  grüße
   jack
Angehängte Dateien:
#1382670
Lesenswert?
• ▲
▼
Setzt mal in der .s Datei den richtigen Interrupthandler ein:

Anstatt:

DCD     SysTick_Handler           ; SysTick Handler

den hier

DCD     SysTickHandler

Bei dir wird bei einem Interrupt immer die  Funktion "SysTick_Handler" 
aufgerufen, die nun mal in einer Endlosschleife landet.

HTH
Jörn
#1382684
Lesenswert?
• ▲
▼
Der Handler muss nicht in der .s Datei definiert werden, sondern als 
normale C-Funktion. Das "weak" im .s legt fest, das dieses Symbol nur 
verwendet wird wenn es keinen Handler gibt.

Diese Totschleife signalisiert, dass es keinen Handler gibt. Im *_it.c 
File steht zwar einer drin, aber der zieht offenbar nicht.
#1382703
Lesenswert?
• ▲
▼
Es scheint hier einen Konflikt zwischen zwei nicht zusammen passenden 
Codeteilen zu geben. Einerseits den Startup-Code von Keil, der die 
Interruptleiste enthält und damit implizit die Namen der 
Interrupt-Handler vorgibt (SysTick_Handler), andererseits den 
Sample-Code von ST, der einen geringfügig anderen Namen definiert 
(SysTickHandler).
Gast #1383693
Lesenswert?
• ▲
▼
hallo zusammen,
danke für eure hilfe.
Habe nun das beispiel so geänder wie Jörn es bemerkte.
Habe in der STM32Fx10it.c aus SysTickHandler -> SysTick_Handler
und siehe es funktioniert.
@ A.K. werde das beispiel in der V3 anschauen.

  Danke euch beiden

     jack

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.