Forum: Mikrocontroller und Digitale Elektronik USART mit ATmega128 und STK501


von Thomas Thiry (Gast)


Lesenswert?

Hallo!

Seit Stunden versuche ich, meinen ATmega128L mit meinem Computer
kommunizieren zu lassen - leider ohne jeden Erfolg.
Ich habe den Assembler-Code aus dem Tutorial mit einigen Änderungen in
AVRStudio assembliert und auf den Chip gebrannt.
Zunächst mal der Code:

.include "m128def.inc"

.def  temp  = r16
.equ  CLOCK  = 8000000
.equ  BAUD  = 9600
.equ  UBRRVAL  = CLOCK / (BAUD*16) - 1


  ;Stackpointer initialisieren
  ldi    temp, LOW(RAMEND)
  out    SPL, temp
  ldi    temp, HIGH(RAMEND)
  out    SPH, temp

  ;Baudrate einstellen
  ldi    temp, LOW(UBRRVAL)
  out    UBRR0L, temp              ;habe ich angepasst
;  ldi    temp, HIGH(UBRRVAL)       ;hätte nicht funktioniert - braucht
man aber eh nicht, da die Baud-Rate in das untere Register passt
;  out    UBRR0H, temp

  ;Frame-Format: 8 Bit
  ;ldi    temp, (1<<UMSEL) | (3<<UCSZ0)
  ;out    UCSR0C, temp   ;Diese Anweisung funktioniert auch nicht. Ich
bekomme den Fehler: illegal argument type or count

  sbi    UCSR0B, TXEN  ;habe ich angepasst

loop:  ldi temp, 'T'
    rcall serout
    rjmp loop

serout:
    sbis  UCSR0A, UDRE0   ;habe ich angepasst
    rjmp  serout
    out    UDR0, temp
    ret


Wenn ich jetzt das RS232 Kabel in den "RS 232 SPARE" Verbinder
stecke, das HyperTerminal öffne und auf 'Datei empfangen' klicke,
bekomme ich die Meldung: "Keine Rückmeldung vom Remotecomputer"

Liegt da ein Software- oder ein Hardwarefehler vor?

Gruß
Thomas

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.