Forum: Mikrocontroller und Digitale Elektronik Zeitschaltung der RTS-Steuerung über Baud-Rate falsch berechnet?


von Fabian S. (frogtime)


Lesenswert?

Hallo zusammen,
ich habe einen ATTiny441 über eine RS485 Half-duplex mit dem PC 
verbunden.
Als BAUD-Rate habe ich 4800 gewählt. Daher sollte doch für eine 
Übertragung von 2 Byte eine RTS-Schaltung von 1 ms reichen, da ja 4,8 
Zeichen pro ms übertragen werden sollten.

Allerdings kommen erst ab einer Schaltung von 4 ms beide Byte fehlerfrei 
an. Wo liegt bei Fehler in der Berechnung???

Als Pegelwandler setzte ich einen MAX487 ein.

Gruß
Frogtime

von der alte Hanns (Gast)


Lesenswert?

4.8 bit/ms:  .48 char/ms

von spess53 (Gast)


Lesenswert?

Hi

>Als BAUD-Rate habe ich 4800 gewählt. Daher sollte doch für eine
>Übertragung von 2 Byte eine RTS-Schaltung von 1 ms reichen, da ja 4,8
>Zeichen pro ms übertragen werden sollten.

Bei 4800Bd dauert ein Byte (10 Bit) etwas über 2ms.

MfG Spess

von Karl H. (kbuchegg)


Lesenswert?

Was Hannes sagen will.

'Baud' besagt, wieviele Bits pro Sekunde übertragen werden.
Bei einer Baudrate von 4800, hast du also 4800 Bits pro Sekunde. Mit 
Startbit und 2 Stoppbits brauchst du also 10 Bits pro Zeichen. Macht 
effektiv nur 480 Zeichen pro Sekunde. D.h. pro Zeichen brauchst du also 
rund 2.08ms Übertragungszeit.

von der alte Hanns (Gast)


Lesenswert?

> Startbit und 2 Stoppbits brauchst du also 10 Bits pro Zeichen

Nanu?

von Karl H. (kbuchegg)


Lesenswert?

der alte Hanns schrieb:
>> Startbit und 2 Stoppbits brauchst du also 10 Bits pro Zeichen
>
> Nanu?

Was 'nanu'?
RS485 ist ja nur dafür zuständig, wie die Pegel auf den Leitungen 
dargestellt werden. Die prinzipielle UART Übertragung ändert sich 
deswegen ja nicht. Und da hast du nun mal Startbit und Stopbit.

: Bearbeitet durch User
von spess53 (Gast)


Lesenswert?

Hi

>Und da hast du nun mal Startbit und Stopbit.

Aber bei 2 Stopbits sind es 11 Bit. Deshalb 'Nanu'.

MfG Spess

von Fabian S. (frogtime)


Lesenswert?

Dann habe ich mich hiervon wohl irritieren lassen: 
http://de.wikipedia.org/wiki/Baud

Aber wieso kommt dann bei 3 ms immernoch Müll an?

von Karl H. (kbuchegg)


Lesenswert?

spess53 schrieb:
> Hi
>
>>Und da hast du nun mal Startbit und Stopbit.
>
> Aber bei 2 Stopbits sind es 11 Bit. Deshalb 'Nanu'.

Ah! Kopfklatsch.

Klar. Hat schon seinen Grund, warum ich Computer programmiere.
Immer dieses Kopfrechnen.

Danke.

von Karl H. (kbuchegg)


Lesenswert?

Fabian Schneider schrieb:
> Dann habe ich mich hiervon wohl irritieren lassen:
> http://de.wikipedia.org/wiki/Baud
>
> Aber wieso kommt dann bei 3 ms immernoch Müll an?

Ich versteh jetzt die Frage nicht.
Du sagtest doch, und ich zitiere

> Allerdings kommen erst ab einer Schaltung von 4 ms beide
> Byte fehlerfrei an.

... beide Byte ....
Also werden 2 Byte übertragen. Pro Byte 2ms macht für beide ca. 4ms
Stimmt doch wunderbar mit deiner praktischen Erfahrung überein, wenn ich 
mal davon ausgehe, dass die von dir genannten 4 ms keine 4.00000 ms 
sind, sondern so ca. festgestellt wurden.

: Bearbeitet durch User
von Fabian S. (frogtime)


Lesenswert?

Danke!
Mein Fehler...erst denken dann schreiben.

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.