Autor Thema: drucken mit dem mfd4-5-XRC-30  (Gelesen 3814 mal)

Offline nico tec

  • Newbie
  • *
  • Beiträge: 14
drucken mit dem mfd4-5-XRC-30
« am: Dezember 02, 2008, 22:09:20 Nachmittag »
hallo,
ich habe ein kleines problem mit der rs232 schnittstelle im transparent-modus.
ich lese aus meiner steuerung verschiedene parameter aus und muß am ende eines jeden zyklus einen lieferschein auf einem kassendrucker erstellen.
die hürde mit dem programm habe ich genommen, allerdings funktioniert es beim layout überhaupt nicht.
mir kommt es so vor als würden die zeilenumbrüche $L nicht richtig funktionieren, als ob die string länge des (writebuffer) mit leerzeichen ausgefüllt werden muß, damit eine neue zeile beginnt, aber nicht bei jeder zeile, sondern nur teilweise.
der drucker und das mfd sind auf 9600 baud abgestimmt und harmonieren miteinander, daten werden voll gesendet und empfangen aber manchmal fehlt die hälfte eines wortes, manchmal ein wert, je nach dem wie lang ein aus der steuerung ausgelesener wert ist.

kann mir jemand bei diesem problem helfen?

Offline Softwerker59

  • Jr. Member
  • **
  • Beiträge: 48
Re: drucken mit dem mfd4-5-XRC-30
« Antwort #1 am: Dezember 03, 2008, 12:20:16 Nachmittag »
Hallo,

Du schreibst, dass die Daten voll gesendet (ich nehme an, vom mfd) werden, aber trotzdem Werte fehlen. Das ist etwas widersprüchlich.
Grundsätzlich läuft die transparente Schnittstelle im mfd sehr niederprior und es ist deshalb empfehlenswert, das Senden und Empfangen programmtechnisch zu kontrollieren, anstatt nur SysComRead oder SysComWrite zu benutzen.
Ich habe eine Lib angehängt, die 2 Bausteine zum Senden und Empfangen enthält. Diese Lib baut auf der xSysCom200.lib auf, die schon im Lib_MFD57 - Verzeichnis enthalten ist (evtl. musst Du diese neu einfügen, wenn Du die Lib einbindest). Grundsäzlich wird dabei solange gesendet bzw. empfangen, bis die gewünschte Anzahl von Datenbytes erreicht ist.
Außerdem würde ich die Zeilenumbrüche mit CR und LF gestalten.
Vieleicht hilft es Dir.

Gruß
 Klaus

Offline nico tec

  • Newbie
  • *
  • Beiträge: 14
Re: drucken mit dem mfd4-5-XRC-30
« Antwort #2 am: Dezember 04, 2008, 11:44:15 Vormittag »
danke klaus,

die daten werden vom mfd gesendet, das ist richtig, das problem liegt im layout und der stringlänge der je nachdem wie lang der wert ist welcher ausgegeben werden soll, ist der zu kurz oder zu lang wird er voll oder nur teilweise oder garnicht ausgedruckt.
ich schau mal was ich mit der lib datei anstellen genauso wie mit cr und lr
ich hab mal ein stück programm angehangen.

danke

Offline Softwerker59

  • Jr. Member
  • **
  • Beiträge: 48
Re: drucken mit dem mfd4-5-XRC-30
« Antwort #3 am: Dezember 04, 2008, 13:01:17 Nachmittag »
Hallo,

am Programm hätte soweit nichts auszusetzen, bis auf den Umstand, dass Du nach xSysComWrite() den Returnwert nicht auswertest. Möglicherweise hilft es weiter, die Anzahl der gesendeten Bytes erst mal zu überprüfen. Die Bausteine in meiner Lib machen das. Zu beachten ist auch, dass Du bei 9600 Baud ca. 1ms pro Byte brauchst, d.h. die eingestellten Taskzeiten in der Taskkonfiguration würden hier auch eine wesentliche Rolle spielen.

Gruß
 Klaus