Forum: Mikrocontroller und Digitale Elektronik USART - Init beim mega128 in asm


von pumann (Gast)


Angehängte Dateien:

Lesenswert?

guten morgen an alle,

ich sitze hier schon eine ganze weile und versuche krampfhaft mit hilfe
des datenblattes des avr mega128 den usart in gang zu bekommen. für den
at90s8515 (uart) hab ich es mit dem avr-studio auf dem stk500
hinbekommen.

beim versuch, dieses auf den mega128 zu übertragen brachte mir das
studio immer die fehlermeldung: Operand 1 out of range (hier eine
hex-addresse).

nun weis ich im moment nicht weiter und hoffe auf euren guten rat.

von Irgwer (Gast)


Lesenswert?

Hallo pumann,

beim Mega128 liegen etliche I/O-Register überhalb der Adresse 0x60.
Diese Register sind nicht über die IN und OUT Befehle erreichbar. Du
musst auf diese Register über das SRAM zugreifen.

geht nicht:

OUT UBRR1L, temp

so gehts:

LDI XL, UBRR1L
CLR XH
ST X, temp

von Guillermo B. (benites)


Lesenswert?

Hallo Irgwer,

Gute Erklärung.   Jetzt wollte ich mal fragen: wie kann man z.B auf
folgende Register über das SRAM zugreifen


      sbi UCSR0B, RXEN0     ; RX (Receive) activate
      sbi UCSR0B, TXEN0     ; TX (Transmit) activate

Danke

von Ulrich (Gast)


Lesenswert?

ohne Garantie und Datenblatt nachschuen und ohne das ich den
Mikrocontroller beistze würd eich mal das probieren

lds temp, UCSR0B
sbi temp, RXEN0
stst UCSR0B, temp

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.