GCC "optimiert" Schleife und erkennt Taster nicht

OP #3420316
Lesenswert?
• ▲
▼
Leider kann ich den Maschinencode nicht einfach lesen.

Wenn die Tastenabfrage  if (GPIOA->IDR & 0x0001) in einer
Endlosschleife ist, wird diese nicht erkannt.
Was muss ich beachten, damit auch in der Schleife die Taste erkannt wird 
?
Board: STM32F4 COOCOX und GCC
Angehängte Dateien:
Gast #3420344
Lesenswert?
• ▲
▼
Was ist das für eine geq....te Sch...e?

1. Quellcode als PNG?
2. In dem zweiten Quellcode wird überhaupt keine Taste abgefragt, aber 
da funktioniert die Tastenabfrage?

Gehen Sie zurück auf LOs. Ziehen Sie keine 4000 Euro ein.

Also:
Quellcode als Quellcode.
Ausführliche Erklärung des Problems.
#3420353
Lesenswert?
• ▲
▼
Faultier schrieb:

> 2. In dem zweiten Quellcode wird überhaupt keine Taste abgefragt, aber
> da funktioniert die Tastenabfrage?

Na ja. Abgefragt wird sie schon. Nur halt nicht in einer Schleife.
Und der Compiler implementiert das auch in beiden Fällen identisch. Ich 
sprech zwar diesen Assembler nicht, aber so auf die Schnelle sieht das 
alles für mich korrekt umgesetzt aus. Das Problem muss wo anders liegen. 
Der Compiler ist es nicht (wie nicht anders zu erwarten war).
Gast #3420523
Lesenswert?
• ▲
▼
lutz h. schrieb:
> Vielen Dank, für die Hilfe. Ich werde in Zukunft solche kurzen
> Endlosschleifen meiden, weil mir die Ursache des unterschiedlichen
> Verhaltens unklar ist.

das ist eigentlich das dümmste was man machen kann. Man sollte die 
Ursache finden und verstehen.

Es liegt nicht an der Schleife!

Also muss woanders das Problem sein, durch andere code taucht es 
bestimmt später an anderer stelle wieder auf.
OP #3422172
Lesenswert?
• ▲
▼
Peter II schrieb:
> Man sollte die
> Ursache finden und verstehen.

Deshalb hat mit das Forum sehr weitergeholfen. Jetzt bin ich sicher dass 
es nicht der Code ist. Es konnte sein, das ich mein Board stromlos 
machen muss,  wenn ein neuer Takt eingeschaltet wurde, damit der aktiv 
wird, oder ich die Zeile  im Code hatte aber nicht geladen habe.
Vielen Dank für die Hilfe.
Gast #3422208
Lesenswert?
• ▲
▼
@lutz

Hier in den Foren gibt es ein paar ganz komische Leute.
Die gehen einfach davon aus, dass der gepostete Code auch der aktuelle 
ist und oft noch schlimmer: In das Zielsystem geladen wurde,-)

Ich finde, das muss nicht sein - obwohl es Gerüchteweise nicht schaden 
kann.

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.