korrekt!
die REgister sind beim XMega allerdings etwas anders strukturiert als beim normalen Mega
PORTx.DIR zum beispiel statt DDRx wie du es beschrieben hast. Es werden zwar auch die entsprechenden direkten PORTx_DIR Makros angeboten, aber nicht für alle Funktionen des Controller, daher ist es besser sich gleich die Struktur Variante anzugewöhnen.
Und behalte die Verwendung der DIRSET und DIRCLR REgister im Hinterkopf, die Dokumentation greift sehr oft darauf zurück und es spart wie erwähnt Rechentakte (falls es der Compiler am ende nicht sowieso optimiert, wäre interessant mal den Assembler Code dazu zu debuggen)
PS: es gibt sogar ein DIRTGL bei dem man mit einer einfachen 1 den pin hin und herschalten kann mit nur einem Rechencycle![]()
Lesezeichen