Hallo, ich habe mir ein AVR 2560 zusammen mit einem FT245 aufgebaut, die Kommunikation mit dem PC funktioniert, solange der µC kein 0b00000000 senden will... was aber mal vorkommt, da er die Daten eines 16bit ADC an den PC senden soll... Ich benutze die D2XX Treiber mit LabView, wenn der µC ein 0b00000000 sendet, bekomme ich die Meldung, dass ein Byte empfangen wurde (Bytes Read = 1) aber der String ist leer... wenn ich ein 0b00000000 in LabView erstelle und in einen String umwandel erscheint immerhin ein nichtsichtbares Zeichen und der String hat dann die Länge 1 Hat jemand eine Idee, was ich falsch mache?
> Hat jemand eine Idee, was ich falsch mache?
Das, was Du "in einen String umwandeln" nennst, erzeugt nicht die
Klartext-Repräsentation des übergebenen Wertes, sondern interpretiert
den Wert direkt als ASCII-Code eines Zeichens. Den ASCII-Code 0 aber hat
ein nicht sichtbares Steuerzeichen.
Mein Problem ist aber, dass ich kein 0b00000000 empfangen kann... die Funktion Read der D2XX Treiber liefert mir in LabView, dass ein Byte empfangen wurde, aber der Buffer String die Länge 0 hat. LabView selbst kann aber sehr wohl was mit dem Byte 0b00000000 anfangen und wenn ich das Byte in einen String schreibe, hat dieser auch die Länge 1
D.I. schrieb: > dass ein Byte empfangen wurde aber der String ist leer... Klar, Stringende = '/0' = 0x00 = 0b00000000 > Hat jemand eine Idee, was ich falsch mache? Du darfst das empfangene Byte nicht als String interpretieren, sondern eben einfach als ein Byte. D.I. schrieb: > Mein Problem ist aber, dass ich kein 0b00000000 empfangen kann... Doch, denn du selber schreibst: >> wenn der µC ein 0b00000000 sendet, bekomme ich die Meldung, >> dass ein Byte empfangen wurde
Danke, hatte schon probiert das als Byte einzulesen, ging leider nicht richtig, String ist vorgegeben :-/ werde mich aber noch mal daran probieren
Danke :-) es hat mit Byte nur nicht funktioniert, weil nur ein Pointer übergeben wird, ich diesen aber als Wert eingelesen habe ^^ Danke nochmals für die Mühe
Johann schrieb: > Es gigt die "Dezimal-String nach Zahl" Funktion Nur: hier kommt offenbar ein Binärwert über die serielle Schnitte, und eben kein String...
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.