Xmega Ports in asm ansprechen

Gast #1114016
Hallo,


ich versuche im AVR Studio Port A eines Xmega128A1 im Simulator2 
anzusprechen mit

ldi templ,255
out PortA_out,templ

oder wie geht das jetzt alles neu?

geht aber nicht das AVR Studio (Simulator2) wirft eine Fehlermeldung 
aus.
sollte man einen Xmega eigentlich noch in .asm programmieren?

die

ATxmega128A1def.inc ist eingebunden usw.
Gast #1114507
beim XMEGA liegen diese Ports auf Adressen >0x5F und sind daher mit IN 
und OUT Befehlen nicht ansprechbar, LDS und STS Befehle müssen hier 
verwendet werden.
(Firma: TravelRec.) Persönliche Seite #1114569
Achtung: ASM!

Beispiel Virtual Ports:
 ldi  Temp, PORTCFG_VP0MAP_PORTK_gc  ;map PortK to virtual port0
 ori  Temp, PORTCFG_VP1MAP_PORTF_gc  ;map PortF to virtual port1
 sts  PORTCFG_VPCTRLA, Temp

 ldi  Temp, 0b00001111    ;PortK direction
 out  VPORT0_DIR, Temp
 ldi  Temp, 0b00000000    ;PortK port value
 out  VPORT0_Out, Temp


Beispiel Direkte Ports:
 ldi  Temp, 0b10110011    ;PortC direction, SD-Card
 sts  PORTC_DIR, Temp
 ldi  Temp, 0b00110000    ;PortC port value
 sts  PortC_Out, Temp
 ldi  Temp, PORT_OPC_PULLUP_gc
 sts  PortC_PIN6CTRL, Temp    ;PullUp for MISO enabled


>Xmega und Assembler ist wie Ozean und Ruderboot.
Quatsch. Erst mal machen, dann ´rumsülzen. Der SD-Karten-Recorder in der 
Codesammlung ist komplett in ASM programmiert.
#1114629
Danke klappt.
In den App notes sind leider fast nur C Code beispiele für den Xmega 
vorhanden gibt es auch asm Codebeispiele. Für Konfiguration der Timer 
Uart Interrups AD-Wandler Event System usw hab ich noch nichts gefunden. 
Google wirft auch fast nichts aus oder hat jemand was in der Tasche?

@netbandit
von einem Distributor in der nähe von Dresden. Ist aber schon fast 4 
Monate her.
(Firma: TravelRec.) Persönliche Seite #1114762
>Für Konfiguration der Timer
>Uart Interrups AD-Wandler Event System usw hab ich noch nichts gefunden.

Es gibt AppNotes bei ATMEL, speziell für den XMega, da steht alles 
weitestgehend fehlerfrei drin. Mithilfe der Definitionsdateien 
(XMega128.inc oder so ähnlich) findet man dann auch die passenden 
Registernamen. Ein wenig Experimentierfreude vorausgesetzt.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 17 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.