Forum: Mikrocontroller und Digitale Elektronik Kommunikation per UART


von Sebastian W. (Gast)


Lesenswert?

Hi,

ich habe meinen Atmel (AT90S4433) erst seit kurzer Zeit, bin aber echt 
begeistert!

Nun mein Problem:

Ich möchte den Atmel so programmieren, daß er über die serielle 
Schnittstelle (UART) Daten vom PC (z.B. HyperTerminal) empfangen kann. 
Die Datenausgabe (vom AVR zum PC) habt Ihr ja schon beschrieben.

Ein kleines Beispiel-Programm (mit Kommentaren) wäre echt super! :-)

Kann ich an den Atmel auch ein GPS-Gerät (9600 Baud, NMEA) anschließen? 
Kann er die Daten schnell genug verarbeiiten?

Danke!

Sebastian

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

http://www.mikrocontroller.net/forum/read-4-569.html

Das mit dem GPS-Gerät geht sicher.

von Sebastian Wille (Gast)


Lesenswert?

Hallo Andreas,

danke für die Datei!

Ich habe nun, wie gesagt, einen 4433. Mit diesen beiden Zeilen kommt das 
AVR-Studio aber nicht zurecht:

sbi UCR,RXEN ;RX aktivieren
sbi UCR,RXCIE ;RX-Complete aktivieren

Da gibt es Fehlermeldungen. .include "4433def.inc" habe ich auch 
umgeschrieben.

Wie heißen bei mir die entsprechenden Befehle?

Danke!

Sebastian

von ChristianW (Gast)


Lesenswert?

Hallo,
ich glaub den gleichen Fehler hab ich auch gehabt.
Für UCR musst du UCR0 schreiben.

Kann man in der 4433def.inc nachschauen.

Gruß Christian

von Sebastian Wille (Gast)


Lesenswert?

Hi Christian,

danke erstmal für den Tip!

Leider klappt es immer noch nicht (UCR0 kennt er auch nicht). In der 
4433def.inc habe ich auch - außer MCUCR, was nicht geht - nichts 
gefunden.

Folgende Fehlermeldung kommt immer:

Building project...
C:\Programme\AVR Studio 4\AvrStudio4\UART\uart.map konnte nicht gefunden 
werden
C:\Programme\AVR Studio 4\AvrStudio4\UART>del uart.lst
C:\Programme\AVR Studio 4\AvrStudio4\UART\uart.lst konnte nicht gefunden 
werden
C:\Programme\AVR Studio 4\AvrStudio4\UART>"C:\Programme\AVR Studio 
4\AvrAssembler\avrasm32.exe" -fI "C:\Programme\AVR Studio 
4\AvrStudio4\UART\UART.asm" -o "uart.hex" -d "uart.obj" -e "uart.eep" -I 
"C:\Programme\AVR Studio 4\AvrStudio4\UART" -I "C:\Programme\AVR Studio 
4\AvrAssembler\AppNotes" -w
AVRASM: AVR macro assembler version 1.56  (Apr 30 2002 11:29:29)
Copyright (C) 1995-2002 ATMEL Corporation
Creating   'uart.eep'
Creating   'uart.hex'
Creating   'uart.obj'
Assembling 'C:\Programme\AVR Studio 4\AvrStudio4\UART\UART.asm'
Including  'C:\Programme\AVR Studio 4\AvrAssembler\AppNotes\4433def.inc'
C:\Programme\AVR Studio 4\AvrStudio4\UART\UART.asm(25) : error : 
Undefined variable referenced
C:\Programme\AVR Studio 4\AvrStudio4\UART\UART.asm(26) : error : 
Undefined variable referenced
Assembly complete with 2 errors
Deleting   'uart.eep'
Deleting   'uart.obj'
Deleting   'uart.hex'

Für weitere Tips wäre ich echt dankbar!!! :-)

Sebastian

von ChristianW (Gast)


Lesenswert?

Hallo,
habe mal schnell im Datenbaltt nachgeschaut.
Beim 4433 gibts UCR gar nicht heist dort UCSRB.
Wusste das da was komisch ist, aber nicht mehr ganau was.
Gruß Christian

von Andreas S. (andreas) (Admin) Benutzerseite


Lesenswert?

UCSRA und UCSRB statt USR und UCR, dann klappt's. Siehe Datenblatt.

von Sebastian Wille (Gast)


Lesenswert?

Hallo,

danke Christian und Andreas, nun funktioniert alles wie es soll! :-))

Danke!!!

Sebastian

von Frankl (Gast)


Lesenswert?

Wenn du mal www.avrfreaks.net forum Studio4 ließt, wirst du feststellen 
das das Studio 4.xx noch mal Beta ist. An deiner stelle würde ich 
erstmal Studio 3.55 benutzen und denn weitersehen. In 4.xx funktionieren 
die Watches z.B nicht.

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.