STM32 Coocox Error: registers may not be the same -- `strexb r3,r2,[r3]'

Gast #3501246
Lesenswert?
• ▲
▼
Hallo,

ich versuche den Einstieg in die Welt der STM32 mit Coocox IDE.
Meine Installierte Version ist 1.75 , also die aktuellste.

Wenn ich ein neues Projekt anlege und mit minimalquelltext kompiliere, 
erscheinen folgende Fehler:

  C:\Users\egg\AppData\Local\Temp\cc9qKp3w.s:772 Error: registers may 
not be the same -- `strexb r3,r2,[r3]'
  C:\Users\egg\AppData\Local\Temp\cc9qKp3w.s:818:Error: registers may 
not be the same -- `strexh r3,r2,[r3]'


Was mache ich falsch ?


Gruß
ernst
Gast #3501287
Lesenswert?
• ▲
▼
Dies hier abändern (das & vor dem r muss hin), dann sollte es gehen:

File: cmsis/core_cm3.c

(line 736) __ASM volatile ("strexb %0, %2, [%1]" : "=&r" (result) : "r" 
(addr), "r" (value) );

(line 753) __ASM volatile ("strexh %0, %2, [%1]" : "=&r" (result) : "r" 
(addr), "r" (value) );
Gast #3501302
Lesenswert?
• ▲
▼
Danke! Läuft!
Ich habe es jetzt in den entsprechenden Files in der Solution geändert.

Wenn ich jetzt ein neues Projekt anlege, geht der Spaß von vorne los.

Woher holt Coocox sich core_cm3.c dann kann ich es direkt an der Quelle 
anpassen.


Danke
Gast #3501822
Lesenswert?
• ▲
▼
>Das Problem mit LDREX/STREX in CMSIS zieht sich schon länger hin:
>Beitrag "Re: Welcher Cortex M3?"

Und wozu braucht man den Kram? Irgendwie hatte ich damit seit drei
Jahren auf M3 noch keine Probleme.

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.