Assembly aufschreiben Stm32 Cubeide32

Persönliche Seite #7661492
Lesenswert?
• ▲
▼

z.B. so:

1
void tft_write_bus(uint8_t high_byte,uint8_t low_byte)
2
{
3
  GPIOA->BSRR = 0x00FF0000 | low_byte;
4
  GPIOA->BSRR = 0x00FF0000 | high_byte;
5
}

daraus macht der Compiler:

1
f04f 4390   mov.w  r3, #1207959552  @ 0x48000000
2
f441 017f   orr.w  r1, r1, #16711680  @ 0xff0000
3
f440 007f   orr.w  r0, r0, #16711680  @ 0xff0000
4
6199        str  r1, [r3, #24]
5
6198        str  r0, [r3, #24]
6
4770        bx  lr

Das geht in Assembler auch nicht besser. Allerdings kann man durch Inlining den Aufwand für das wiederholte Laden der Register-Adresse einsparen.

Ein Problem dürfte aber sein dass die IO-Ports bei den hohen Prozessortakten sowieso nicht mitkommen und man das Beschreiben eher künstlich verlangsamen muss.

OP #7661508
Lesenswert?
• ▲
▼

Norbert schrieb:

Niklas G. schrieb:

Norbert schrieb:

Einer findet sich immer…

Zum sinnlosen Nörgeln? Es gibt sogar Leute die machen Kreuzworträtsel wenn ihnen langweilig ist.

Nee Jung', das ist ja wohl sehr offensichtlich eine Lernaufgabe. Denkst du das auf diese Art und Weise auch nur irgend etwas gelernt wird?

Eben…

Aber schönen Dank für deinen Kommentar

Vielen vielen Danke Niklas G

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.