Forum: Mikrocontroller und Digitale Elektronik Atmega und hohe serielle Baud-Raten


von Snowyrain (Gast)


Lesenswert?

Hallo,

ich lasse hier einen Atmega16L (8Mhz) über die USART mit einem FPGA 
kommunizieren. Das lief auch sehr gut. Jetzt send ich mit 1Mbit, der 
ATmega empfängt alles richtig, der FPGA allerdings nicht. Ich empfange 
mit dem FPGA genau in der Mitte eines Bits. Die Sim und das Oszy zeigen 
auf den ersten Blick nichts auffälliges. Der gleiche FPGA-Code läuft mit 
einem anderen Device sehr gut. Kann es sein, das der Atmega 
Auffälligkeiten bei hohen Übertragungsraten hat?

Gruß

Snowyrain

von vielleicht so (Gast)


Lesenswert?

Nein, eigentlich nicht.

von Carsten (Gast)


Lesenswert?

nö,

sag doch mal was zur Eingangskapazität Deines FPGA.

von Carsten (Gast)


Lesenswert?

ich meine mich:

mann soll erst nach Nachdenken bevor man zu Tastatur greift.

8Mz getaktet und 1MBit?

von Falk B. (falk)


Lesenswert?

@ Carsten (Gast)

>mann soll erst nach Nachdenken bevor man zu Tastatur greift.

Nicht wahr . . .

>8Mz getaktet und 1MBit?

Schon mal was vom Double Speed Modus gehört . . .

von spess53 (Gast)


Lesenswert?

Hi

8MHz Quartz oder interner Oszillator?

MfG Spess

von Carsten (Gast)


Lesenswert?

>Datasheet M8

>Table 62. Examples of UBRR Settings for Commonly Used Oscillator >Frequencies 
(Continued)

Ich glaube, das ist auch durch einen ext. Quartz nicht beherschbar.
Das geht warscheinlich nur mit einer gemeinsamen Taktquelle!

von Falk B. (falk)


Lesenswert?

@ Carsten (Gast)

>Ich glaube, das ist auch durch einen ext. Quartz nicht beherschbar.
>Das geht warscheinlich nur mit einer gemeinsamen Taktquelle!

Käse. Informier dich mal über RS232.

von Snowyrain (Gast)


Lesenswert?

Hi,

Atmega läuft mit 8MHz und dieser USart Taktverdopplung. Der FPGA läuft 
mit 50Mhz. Ich werde dann wohl im FPGA nen Fehler haben.

Vielen Dank

Snowyrain

von B e r n d W. (smiley46)


Lesenswert?

Wie lange sind die Leitungen?
Gibt es Pegelwandler dazwischen?
Laufen die Leitungen parallel und sehr eng zusammen ohne Masse 
dazwischen?
Gibt es noch andere Signale (Übersprechen)?

von Snowyrain (Gast)


Lesenswert?

Hi,

was ich noch vergessen habe, es ist immer nur das LESB das Probleme 
macht.

Gruß

Snowyrain

von Carsten (Gast)


Lesenswert?

Hallo Falk

http://atmel.com/dyn/resources/prod_documents/doc2486.pdf

Seite 161 Tabelle 62 ÜBERSCHRIFT

>Examples of UBRR Settings for """"Commonly Used Oscillator Frequencies""""

und bitte nicht so, so nicht! :)

von Snowyrain (Gast)


Lesenswert?

Hallo,

Länge der Leitungen ca. 7cm, keine Pegelwandler, fliegend verdrahtet. 
Alles über 3,3V. Es wird nur gesendet oder empfangen. Sonst weiter 
nichts in der Nähe (Stromkabel, Geräte, Monitore, usw ...)

Gruß

Snowyrain

von Carsten (Gast)


Lesenswert?

@ Snowyrain

list Du endlich mal das Datenblatt des M8!

von Stefan E. (sternst)


Lesenswert?

Carsten wrote:
> @ Snowyrain
>
> list Du endlich mal das Datenblatt des M8!

Was soll das? Mit 8 MHz sind 1 MBit definitiv möglich. Und das steht 
auch auf der von dir angegebenen Seite.

von Carsten (Gast)


Lesenswert?

ja mit zwei Strichen! :) und aus eine Tacktquelle versorgt!

lautes lach!

von Falk B. (falk)


Angehängte Dateien:

Lesenswert?

@  Carsten (Gast)

>http://atmel.com/dyn/resources/prod_documents/doc2486.pdf
>Seite 161 Tabelle 62 ÜBERSCHRIFT

Ja eben. Und was lesen wir dort?

Siehe Anhang. Mit 8 MHz sind 1 Mbit/s super genau mit 0% Fehler machbar. 
Welch Wunder.

Aber mit 50 MHz und der klassichen 16/8 fach Überabtastung wird das 
knapp, um nicht zu sagen es geht nicht. Denn der Frequenzfehler beträgt 
dann 4,2% :-0

AVR-Tutorial: UART

Muss man halt umbauen auf 10fach Überabtastung, dann passt es wunderbar.

MFG
Falk

von Falk B. (falk)


Lesenswert?

@ Carsten (Gast)

>ja mit zwei Strichen! :) und aus eine Tacktquelle versorgt!
>lautes lach!

Sind deine Pillen am Wochenende plötzlich alle gewesen . . . ?

Besorgte Grüsse
Falk

von Stefan E. (sternst)


Lesenswert?

Carsten wrote:
> ja mit zwei Strichen! :) und aus eine Tacktquelle versorgt!
>
> lautes lach!

Du musst auch mal in der richtigen Spalte nachsehen!

von Carsten (Gast)


Lesenswert?

>Du musst auch mal in der richtigen Spalte nachsehen!

wenn das in einem fliegenden Aufbau geht, fress ich eine Besen!
Außerdem hat er noch nichts zur Eingangkapazität gesagt.

von Stefan E. (sternst)


Lesenswert?

Carsten wrote:

> wenn das in einem fliegenden Aufbau geht, fress ich eine Besen!

Ach, du meinst also, dass es deswegen nicht geht? Warum hast du ihn dann 
so eindringlich aufgefordert, das Datenblatt zu lesen? Steht in deinem 
Datenblatt auf Seite 116 etwa was dazu?

von Falk B. (falk)


Lesenswert?

@ Carsten (Gast)

>wenn das in einem fliegenden Aufbau geht, fress ich eine Besen!

Na dann hol schon mal das Besteck raus . . .

>Außerdem hat er noch nichts zur Eingangkapazität gesagt.

Klar, FPGAs haben so tierisch hohe Eingangskapazitäten, dass 1 MBit/s 
nicht mehr machbar ist. Is schon gut, du kannst ja nix dafür . . .

von Carsten (Gast)


Lesenswert?

hab ich, dass ist die lezte Tabellenzeile (Werte nur mit mit
Hardwaretricks und mit Fehler von Null(Frequenzabweichung))
des Herstellers, da sollte
jeder nachdenklich werden!

Wer so Schaltungen aufbaut, den hohlt die Realität in der Serie ein.

lautes lautes Lach.

von B e r n d W. (smiley46)


Lesenswert?

Das geht im fliegenden Aufbau oft besser, als später auf der Platine.

@Carsten
Ich würde den (alten) Besen spenden. ;)

von Carsten (Gast)


Lesenswert?

Hay Falk Brunner

ich werd noch nicht ausfallend,

aber vor dem FPGA ist mindestens ein Stück Leiterzug
auf einer Platine, evtl eine Klemme, ein Stück Draht
oder ein Falk.

von Carsten (Gast)


Lesenswert?

@ Bernd Weeber

die Erfahrung hab ich auch schon gemacht!
aber ich möchte reproduzierbar
meinen Besen zur Nahrungseränzung.

:)

von Falk B. (falk)


Lesenswert?

@ Carsten (Gast)

>hab ich, dass ist die lezte Tabellenzeile (Werte nur mit mit
>Hardwaretricks und mit Fehler von Null(Frequenzabweichung))

Welche Tricks? Du hast RS232 nicht wirklich verstanden.

>des Herstellers, da sollte jeder nachdenklich werden!

Nö.

>Wer so Schaltungen aufbaut, den hohlt die Realität in der Serie ein.

Naja, DEINE "Realität" ist sowieso einen Andere . . .

>lautes lautes Lach.

Also doch, deine Pillen sind alle. Armer Carsten.

von Stefan E. (sternst)


Lesenswert?

Carsten wrote:
> hab ich, dass ist die lezte Tabellenzeile (Werte nur mit mit
> Hardwaretricks und mit Fehler von Null(Frequenzabweichung))
> des Herstellers, da sollte
> jeder nachdenklich werden!

Oh Mann, Du solltest endlich mal das Datenblatt lesen. Die dort 
angegebene Frequenzabweichung ist die, die sich bei der jeweiligen 
Einstellung ergibt, nicht die, die maximal zulässig ist.

von Carsten (Gast)


Lesenswert?

@ Stefan Ernst

Du hasts geschafft.

Deine Schaltung läuft!

von B e r n d W. (smiley46)


Lesenswert?

@ Carsten
>Besen zur Nahrungseränzung.
Ich kann den in kleine Stücke sägen. Ist als Diät für ca. 1 Monat 
geeignet.

von Carsten (Gast)


Lesenswert?

gins Carsten

von Snowyrain (Gast)


Lesenswert?

Hi,

was habe hier den losgetreten. Der Empfangsteil läuft ohne Takteiler, 
dafür mit einem Zähler. Die Abweichung sollte entsprecht extem gering 
sein. Ich nutzte Pegel von 3,3V (auch für die Signal-Leitungen). Wenn 
etwas durcheinander ist, dann das LSB. Ich muss mal sehen, was da schief 
laufen könnte. Wenns das MSB wäre, würde ich denke, da passt etwas vom 
Timing nicht. Die letzten Bist werden korrekt empfangen und auch an der 
passenden Bitstelle gespeichert. Aber ich denke das hier ist dafür das 
falsche Forum.

Gruß

Snowyrain

von Carsten (Gast)


Lesenswert?

>Ich nutzte Pegel von 3,3V

auch als Ub für den M8?

Carsten

von Carsten (Gast)


Lesenswert?

bevor Du mich wieder angehst der M8L läuft ab 4,5V
an 8Mhz stabil!

RDFD

von spess53 (Gast)


Lesenswert?

Hi

@Carsten

Heute nicht so richtig drauf? Lt.erstn Post benutzt Snowyrain einen 
Atmega16L

MfG Spess

von Carsten (Gast)


Lesenswert?

Danke spess53,

der M16L ist der größere Bruder des M8L,
mit vergleichbaren elkt. Eigenschaften.

von Stefan (Gast)


Lesenswert?

@Snowyrain:

kann es sein, dass Du für das Startbit nur eine komplette Bitzeit 
wartest?
Damit die nachfolgend gesampelten Bits in der Mitte abgetastet werden, 
musst Du nach dem Erkennen des Startbits 1,5 Bit-Zeiten warten bis zum 
Abtasten des ersten Nutz-Bits.

(Das Startbit wird vom FPGA am Bit-Anfang detektiert, an der 
High-Low-Flanke. Alle weiteren Bits sollen in der Mitte gesampled 
werden).

Auf Seiten des ATmega kann ich mir keine Probleme vorstellen; ich habe 
so hohe Baudraten auch schon ohne Probleme - und ganz ohne Besen - 
verwendet.
Die einzigen Probleme auf der ATmega-Seite ergeben sich beim Empfang, 
wenn der RXD-IR von anderen IRs blockiert wird.

Gruß, Stefan

von Bensch (Gast)


Lesenswert?

> aber vor dem FPGA ist mindestens ein Stück Leiterzug
auf einer Platine, evtl eine Klemme, ein Stück Draht
oder ein Falk.

Ja und? Ich wusste garnicht, dass 1 MHz schon Hochfrequenz ist. Bei mir 
ist das noch Gleichspannung....

Eingangskapazität bei einem 50MHz-Teil - und dann macht 1MHz Probleme?
Herr, wird Hirn vom Himmel!

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.