Hallo Leute! Ich habe ein Programm geschrieben, das Daten von einer RS232 Schnittstelle empfängt. Das Programm funktioniert auf meinem Desktop PC einwandfrei. Wenn ich es jedoch auf meinem Laptop betreiben möchte habe ich ein Problem. Und zwar hat der Laptop keine RS232 Schnittstelle. Also habe ich mir einen Adapter besorgt, den Treiber installiert und mein Gerät angeschlossen. In der Gerätesteuerung ist dann auch sofort COM3 aufgetaucht, schön. Wenn ich nun mit meinem Prog COM3 öffne kommt keine Fehlermeldung oder so, wenn ich nach dem öffnen einen Haltepunkt setze, wird auch angezeigt das der Port open ist. Aber es kommen einfach keine Daten an. Das DataReceived Ereignis tritt einfach nicht ein. Also, mal schnell Hyperterminal gestartet und geschaut was da ankommt. Nur Schrott mit dem ich nichts anfangen kann. Aber dieser Schrott muß doch eigentlich reichen um das DataReceived auszulösen, oder nicht? Ich weis gerade nicht weiter, hatte schon mal jemand das Problem, oder hat eine Idee was ich noch versuchen könnte? Weis jemand was genau das DataReceived auslöst? Ich nutze das FW 2.0 und VB.2005 Gruß Christoph
hi, soweit ich mich erinnern kann, wird es durch den endchar ausgelöst. also ein CR oder LF.
Hallo, wenn "nur Schrott" ankommt: Baudrate und Zeichenrahmen kontrollieren. >Aber dieser Schrott muß doch >eigentlich reichen um das DataReceived auszulösen, oder nicht? Eher nicht: Die Zeichen kommen zwar an der Schnittstelle an, da sie aber fehlerhaft sind, werden sie verworfen (und eventuell ein Fehlerbit gesetzt). 0 valid characters received..., wo soll da das "Ereignis" herkommen ?
Hallo zusammen! Was meinst du mit "Zeichenrahmen" ? Das sagt mir jetzt nichts.... Gruß Christoph
Zeichenrahmen: Anzahl der Datenbits, Parität, Anzahl der Stopbits. Gängig ist zb 8N1, 8 Datenbits, N(o) Parity, 1 Stopbit.
Aso, das passt aber alles. Das habe ich schon 1000* verstellt und abgeglichen. Wenn ich das ganze dann auf einem Rechner mit RS232 Schnittstelle(also ohne Adapter & USB) teste funktioniert alles. Es scheint also ein Hardware Problem zu sein, oder? Gruß Christoph
Vielleicht ist der USB-Serial Konverter kaputt, vielleicht unterstützt er die verwendete Baudrate nicht, vielleicht ist die Baudrate zu hoch....kann vieles sein.
Ich vermute mal, dass du über ein Card-Bus-Interface (bzw. PCMCIA) die serielle Schnittstelle an den Laptop bekommst. Damit hatte ich auch schon Probleme. Problem bei diesen Adaptern: Hardware-Handshakes sind nicht unterstützt (RTS und CTS Signale, DSR und DTR Signal ist auch Problem). RS232-Schnittstellentreiber brauchen am PC in der Regel aber CTS-Signal, damit Zeichenempfang erfolgt. In VB MUSS RTS explizit HIGH gesetzt werden, damit Schnittstelle überhaupt funktioniert. Wenn Schrottzeichen ankommen, gibt es ein elektrisches Potentialproblem. Die V24-Schnittstelle benötigt +/- 12 V Pegel. Am PC klappen manchmal auch Pegel bis +/- 7V. Entscheidend ist wohl die Ground-Leitung. Wenn es da Potentialunterschiede zwischen den angeschlossenen Geräten gibt, kann es bei niedrigen Spannungspegeln Schrott geben. Versuche mal, das Netzteil am Laptop abzuhängen, so dass Laptop nur auf Batterie läuft. Dann die Masse (oder Ground) der beiden Geräte verbinden, damit Laptop gleiches Potential wie externer Sender hat. Notfalls mit Oszi die Pegel checken. Wie man definiertes 0V-Potential an die Adapterkarte bringt, weiss ich auch nicht. Bin kein echter 'Elektriker', deshalb meine evtl. ungenaue Ausdrucksweise.
So, ich habe es heute rausgefunden. MyRS232..DtrEnable = True Ich hatte das auf false stehen. Jetzt läuft es :-) Das war mal wieder eine schwere Geburt, dafür konnte ich mich aber um so mehr freuen...... Vielen Dank an euch! Gruß Christoph
Ich habe derzeit ein gleiches problem wie du. nur das mein rs232 adaptor am usb bus sitzt. und ich die software im alten powerbasic schreibe. nun zum problem. ich habe zwei adaptor und drei Laptop. so auf einem Labtop laeufen beide adaptor und auch die Software. auf den anderen beiden Labtop bekommt eine nur receive aber kann nicht senden. Der andere Labtop da geht weder recceive noch transmitt. alle Labtop haben XP Pro und alle in der selben version. was kann das sein? Was meintest du mit MyRS232..DtrEnable = True wo ist das zum einstellen? kann sein das da bei mir noch solch probleme sind. danke fuer die antwort!
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.