Forum: Mikrocontroller und Digitale Elektronik Wert 0 seriell übertragen


von Andy (Gast)


Lesenswert?

Hallo,

Ich habe eine Frage zur seriellen Übertragung zwischen PC und uC. Kann 
es sein, dass der uC den Wert 0 (= Null character) nicht einlesen kann? 
Ich schaffe es nicht diesen zu übertragen.

Ich habe mehrere Mega8, die adressiert sind. Nur die Adresse 0 haut 
nicht hin. Ab 1 funktioniert es wunderbar. Ich verwende Bascom.

Bin für jeden Tip dankbar!!


mfg
Andy

von Rahul, der Trollige (Gast)


Lesenswert?

>Ich verwende Bascom.

[OT]
Schwerer Fehler!
Lässt auch den "Programmierer" und seine Arbeitsweise schliessen...
[/OT]

>Ich schaffe es nicht diesen zu übertragen.
Das liegt aber garantiert nicht am Controller.
Schliesslich besteht ein Datenrahmen der seriellen Schnittstelle nicht 
nur aus den Daten (in deinem Fall die Adresse), sondern aus Startbit, 
Daten, Stoppbit(s) und vielleicht noch Paritätsbits.

Poste deinen Code und man kann dir vermutlich helfen.

von Peter D. (peda)


Lesenswert?

Die Null kann sehr wohl übertragen werden, der UART ist das vollkommen 
schnurz. Alles, was 8 Bit hat, wird übertragen.

Aber warscheinlich benutzt Du irgendwo String-Funktionen, die die Null 
als String-Ende auswerten.

Daher lautet die Antwort: 42


Peter

von A.K. (Gast)


Lesenswert?

Könnte ein Bascom-Problem sein. Wenn der das als Leerstring versteht...

von 1. Rahul nach Moiré (Gast)


Lesenswert?

Naja dann starte halt bei Adresse 1, zwingt dich ja niemand, auch die 
Adresse 0 zu vergeben. Adresse 0 ist sicherlich eine Broadcast-Adresse, 
bei der sich jeder AVR angesprochen fühlt.

Mit vorzüglicher Hochachtung
1.

von Philipp S. (philipp)


Lesenswert?

Womit sendest Du denn die Daten am PC? Viele Terminalprogramme tun sich 
nämlich sehr schwer damit, eine NULL zu senden.

von Knut B. (Firma: TravelRec.) (travelrec) Benutzerseite


Lesenswert?

Echt? Ich kenne nur HTerm und das sendet alles "was Beine hat", also 
auch Nullen ;-)

von ??? (Gast)


Lesenswert?

Wasfüreine  NULL?

0x00 oder 0x30

0x00 wird oft als Ende von Irgenwas interpretiert.
0x30 ist der ASCII-Code des Zeichens "0" und sollte eigentlich gehen.

Aber! Ohne Quellcode ...

von Hannes L. (hannes)


Lesenswert?

Rahul, der Drollige wrote:
>>Ich verwende Bascom.
>
> [OT]
> Schwerer Fehler!
> Lässt auch den "Programmierer" und seine Arbeitsweise schliessen...
> [/OT]

Das würde ich nicht pauschalisieren. Es soll auch BASCOM-Nutzer geben, 
die recht gut damit zurechtkommen. Aber die lesen auch die Doku von 
BASCOM und die Datenblätter der AVRs.

> Poste deinen Code und man kann dir vermutlich helfen.

Da ist was Wahres dran...

;-)

...

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.