| Autor |
Beitrag |
ayhan
Hält's aus hier
Beiträge: 6
|
Verfasst: Di 19.06.07 18:09
Hallo an alle,
Ich möchte mit Delphi7 die Daten über COMPORT lesen. Aber kommt nur ASCII zeichnen. Wie kann ich die Daten als Char lesen??
Danke voraus..
Ayhan
|
|
Narses
      

Beiträge: 10185
Erhaltene Danke: 1261
W11x64
TP3 .. D7pro .. D10.2CE
|
Verfasst: Di 19.06.07 18:18
Moin und  im Forum!
ayhan hat folgendes geschrieben: | | Ich möchte mit Delphi7 die Daten über COMPORT lesen. Aber kommt nur ASCII zeichnen. Wie kann ich die Daten als Char lesen? |
Das ist doch praktisch das gleiche.
Zeig mal den Code, der nicht funktioniert, dann sehen wir, wo´s hakt.
cu
Narses
_________________ There are 10 types of people - those who understand binary and those who don´t.
|
|
ayhan 
Hält's aus hier
Beiträge: 6
|
Verfasst: Mi 20.06.07 07:36
Danke für die Aufmerksamkeit,
die COde steht wie unten;
Delphi-Quelltext 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| var Str:String; begin Str:=Edit1.Text; ComPort1.WriteStr(Str);
var Str:String; begin ComPort1.ReadStr(Str,Count); Memo1.Text:=Memo1.Text + Str; |
in eine rechner ist alles ok. Aber die andere rechner kann nur '#13' ascii code schicken und als empfang wird '|' diese zeichnen gezeichnet.
danke nochmal
Moderiert von raziel: Color- durch Delphi-Tags ersetzt
|
|
chrisw
      
Beiträge: 439
Erhaltene Danke: 3
W2K
D7
|
Verfasst: Mi 20.06.07 07:57
ASCII 13 (#13) ist ein Zeilenvorschub, dieser wird im Memo als "|" dargestellt. Hier müsstest Du enstprechend reagieren.
etwa so:
Delphi-Quelltext 1:
| if ReceivedChararcter = #13 then Memo1.Lines.Add(Str) else Memo1.Text := Memo1.Text + Str; |
Weiterhin solltest Du die ganzen nicht darstellbaren Zeichen ausnehmen.
_________________ Man sollte keine Dummheit zweimal begehen, die Auswahl ist schließlich groß genug.
|
|
ayhan 
Hält's aus hier
Beiträge: 6
|
Verfasst: Mi 20.06.07 08:58
danke,
aber kann nur #13 (Zeilenvorschub) geschikt. Die andere Zeichnen nicht. Woran liegt das?
|
|
chrisw
      
Beiträge: 439
Erhaltene Danke: 3
W2K
D7
|
Verfasst: Mi 20.06.07 09:20
Solltest Du damit meinen, dass du nur "|" empfängst, kann es daran liegen, dass die Parameter der Schnittstelle falsch eingestellt sind (normalerweise 8 Datenbits, 1 Stoppbit, Paritay None,zwischen 2400 und 19200 Baud).
Check das erstmal !
_________________ Man sollte keine Dummheit zweimal begehen, die Auswahl ist schließlich groß genug.
|
|
ayhan 
Hält's aus hier
Beiträge: 6
|
Verfasst: Mi 20.06.07 09:33
Die parameter sind ja ok. Aber Troztdem immer noch gleiche Probleme
|
|
chrisw
      
Beiträge: 439
Erhaltene Danke: 3
W2K
D7
|
Verfasst: Mi 20.06.07 09:39
Erklär doch mal bitte genau den Versuchsaufbau.
(Welche Schnittstellen, Nullmodemkabel ?, Was wird gesendet, was wird empfangen, welche Komponenten werden genutzt?,
welches Verhalten existiert ?, welches Verhalten wird erwartet?.....)
_________________ Man sollte keine Dummheit zweimal begehen, die Auswahl ist schließlich groß genug.
|
|
ayhan 
Hält's aus hier
Beiträge: 6
|
Verfasst: Mi 20.06.07 09:47
Ich Habe TComPort angewendet. Zuerst versuche ich bei einer PC Daten senden und empfangen. bei Einer PC funktioniert das Program.Aber bei der zweite PC kann nur #13 ascii charakter gesendet und als '|' empfanen. Ich möchte wie bei der esrte PC alle CHAR bekommen aber bei der PC zwei geht es nicht.
Dann möchte die beide Rechner über NULLMODEM KAbel daten senden und empfangen.
|
|
ayhan 
Hält's aus hier
Beiträge: 6
|
Verfasst: Mi 20.06.07 14:55
Hi Christian,
Ich habe mit in einem Pc mit zwei verschiedene Programmme (ein Sender und ein Empfänger) geschafft. Aber bei Der ComPort sind Virtuelle ComPort.
Die Frage, Mit NULLMODEM KaBEL kann ich nicht die Daten zwischen zwei Rechner Senden und Empfangen?
Hast du idee woran liegt das?
|
|