senden über Com Port



  • Die Parameter sind korrekt. Ich denke das Problem liegt im MC oder das Kabel ist hin.

    Naja werd mal weitertesten

    thx
    G-Kar



  • Ich hab mal eine Frage zur WriteFile-Funktion. Ich fang gerade an mit der seriellen Schnittstelle zu experimentieren und mir fällt auf dass die Funktion mit true zurückkommt, auch wenn kein Kabel angeschlossen ist. Nach dem Aufruf bekomme ich auch immer die volle zu sendende Anzahl Bytes bestätigt. Ist das ok oder mach ich nochwas falsch?



  • Wenn kein Kabel angeschlossen ist, sendet die Schnittstelle halt ins Leere, das stört die überhaupt nicht.



  • Hab mir beinahe sowas gedacht, na dann werd ich die Daten von der Gegenseite quittieren lassen müssen, am besten mit Checksumme. Hmm, gibt es eventuell im Netz ein fertiges Protokoll dass ich dafür benutzen kann und dass sich leicht auf den COM-Port aufsetzen lässt? Sowas wäre toll. Aber danke erstmal für die Antwort!



  • Master-Jimmy schrieb:

    Wenn kein Kabel angeschlossen ist, sendet die Schnittstelle halt ins Leere, das stört die überhaupt nicht.

    Naja, das ist jetzt nicht so ganz des Pudels Kern: Die Daten werden von der WriteFile-Funktion in den SendePuffer der seriellen Schnittstelle geschrieben. Wenn die Schnittstelle korrekt initialisiert und dann aktiviert wurde, funktioniert das Schreiben in den Sendepuffer eben problemlos und die WriteFile-Funktion gibt true zurück. Aber ansonsten grob richtig, die Daten werden danach wohl von der seriellen Schnittstelle notfalls auch ins Leere übertragen.

    chaco schrieb:

    [...] na dann werd ich die Daten von der Gegenseite quittieren lassen müssen, am besten mit Checksumme. Hmm, gibt es eventuell im Netz ein fertiges Protokoll dass ich dafür benutzen kann [...]? ...

    Es sollte doch nicht das Problem sein, die Summe über die zu übertragenden Bytes zu bilden und dann an die Nachricht anzuhängen? (wenn eine Prüfsumme ausreichend ist)

    MfG



  • Die Sache sieht wie folgt aus. Ich habe einen Datenlogger mit dem bislang über ein angeschossenes Modem Daten zum/vom Internet übertragen werden konnten. Auf dem Logger gibts schon einen TCP/IP-Stack. Per SLIP und serielle Schnittstelle gehen die Daten dann übers Modem. PC-seitig konnte alles einfach über die Socket-Komponente vom Builder erledigt werden.

    Jetzt ist der Logger mit einem Bluetooth-Modul ausgerüstet dass meinem PC leider nur einen virtuellen COM-Port anbietet. Am liebsten wärs mir ich könnte die Socket-Komponente so einstellen dass sie sich per SLIP-Protokoll an den COM-Port anschließt. Das würde für mich nur eine kleine Veränderung auf der Logger-Seite heißen, da ist ja schon der komplette Protokollstapel vorhanden. Hab leider noch nirgendwo einen Hinweis gefunden dass das machbar ist.

    Deshalb such ich jetzt noch ein passendes Protokoll für die serielle Schnittstelle. Bin im Internet auf ZMODEM gestoßen, ursprünglich für die Übertragung kompletter Dateien. Aber vielleicht kann ich das ja so anpassen dass ich einfach binäre Datenblöcke damit übertrage.



  • Ich steh' irgendwie auf der Leitung... Ich verstehe deine Beschreibung nicht. Kannst du mal schematisch umreißen, wie die Übertragungsstrecke aussieht? Ich hab's so verstanden:

    Alt: PC <=intern=> COM-Port <=Kabel=> Logger <=Kabel=> Modem <=Kabel=> Internet
    Neu: PC <=intern=> virtueller COM-Port (USB?) <=Bluetooth=> Logger <=Kabel=> Modem <=Kabel=> Internet

    richtig?

    Dann solltest du bei "Neu" genauso arbeiten können wie bei "Alt"...



  • Ja klar mach ich. Vielleicht wärs verständlicher gewesen hätte ich gleich Funkmodem statt Modem gesagt.

    Also Hardware alt:
    <Logger mit ser.Schnittst.>---<Funkmodem> <..Internet..> <Ethernet>--<PC>
    Hardware neu:
    <Logger mit ser.Schnittst.>---<Bluetooth> - <Bluetooth>--<virt.Com>--<PC>



  • Hmm, ich hab' mich grad mal schlau gemacht - SLIP ist ja nicht mal standardisiert... da wird es IMHO schwer eine fertige Lösung für den Builder zu bekommen!

    Kannst du vielleicht alternativ versuchen PC-seitig eine Ethernet-Bluetooth-Verbindung einzusetzen? Sowas in der Art hier (nur als Anregung was es so alles gibt):

    Bluetooth-LAN-AccessPoint

    MfG



  • Hmm, das Problem ist, dass das Logger-Bluetooth-Modul meinem PC nur den seriellen Service anbietet, also die virtuelle COM-Schnittstelle, daran komm ich nicht vorbei. Es gibt zwar Software die dann eine Umsetzung zu TCP macht, zum Beispiel um Geräte mit seriellem Anschluss im Firmennetz verfügbar zu machen, aber damit gewinn ich nichts. Für ZMODEM werden viele Implementationen angeboten, darauf konzentrier ich mich jetzt mal, vielleicht ist was brauchbares dabei. Danke trotzdem für den Tipp!


Anmelden zum Antworten