Forum: Mikrocontroller und Digitale Elektronik UART suche Quelltext


von Anfänger (Gast)


Lesenswert?

Hallo ich habe schon alles versucht aber ich bekomme mein UART einfach 
nicht dazu daten einzulesen. Der UART soll auf einem atmega16 mit 4MHz 
arbeiten und Daten empfangen. Der Datenstrom besteht aus 8 Datenbits und 
einem Stopbit die mit 9600 bps übertragen werden und der UART soll 
Asynchron arbeiten. Hat jemand eine Quelltext in C für mich den ich nur 
noch einfügen oder zumindest eine Strucktur mit der ich Arbeiten kann. 
Ach ja das Tutorial habe ich schon versucht aber ich komme einfach nicht 
klar damit.

nochmal zur Übersicht:
atmega16  4MHz
8 Datenbits
1Stopbit
9600 bps
Asynchron


Kann mir bitte jemand Helfen

von Falk B. (falk)


Lesenswert?

@ Anfänger (Gast)

>Asynchron arbeiten. Hat jemand eine Quelltext in C für mich den ich nur
>noch einfügen oder zumindest eine Strucktur mit der ich Arbeiten kann.

Ja, im tutorial ist welcher.

>Ach ja das Tutorial habe ich schon versucht aber ich komme einfach nicht
>klar damit.

Was ist denn unklar?

Du musst

den UART initialisieren
Zeichen mit uart_getc() empfangen
und mit uart_putc() wieder senden

Siehe auch

http://www.mikrocontroller.net/articles/AVR_Checkliste#UART.2FUSART

MFG
Falk

von Anfänger (Gast)


Lesenswert?

den UART initialisieren
Zeichen mit uart_getc() empfangen
und mit uart_putc() wieder senden

Ja so was brauche ich eine Einfache erklärung welche Funktionen ich 
aufrufen muss. Das Initialiisieren auch richtig sein hir mein Quelltext:

1
C-Code
UCSRB |= (1<<RXEN)|(1<<TXEN);
UCSRC = (1<<URSEL)|(111<<UCSZ1)|(00<<UPM1)|(1<<UPM0)|(0<<USBS );
[/c]

Ich komme mit den C Tutorial nicht so gut zurecht z.B. das für Assembler 
ist einfach besser geschreiben meine ich.

von Peter D. (peda)


Lesenswert?


von Anfänger (Gast)


Lesenswert?

Ich habe den Quelltext durchgeschaut und versucht ein Zeichen zu 
Empfangen aber das geht alles nicht so wie ich mir das vorstelle.

von Stefan B. (stefan) Benutzerseite


Lesenswert?

Anfänger wrote:

> Ich habe den Quelltext durchgeschaut und versucht ein Zeichen zu
> Empfangen aber das geht alles nicht so wie ich mir das vorstelle.

Welchen Quelltext, ich sehe keinen Quelltext von dir! Und ein Schaltplan 
deiner Schaltung wäre auch nicht schlecht. Bist du sicher, dass dein 
Atmega16 mit 4 MHz läuft, d.h. z.B. ein 1s-LED-Blinkprogramm 
funktioniert?

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.