Für dieses Forum muß Javascript im Browser aktiviert werden!
Kommentar: Einfügen von HTML im Kommentar: Link einfügen: <a href="LINKURL" target="_blank">LINKTITEL</a> Bild einfügen: <img src="BILDURL"> Text formatieren: <b>fetter Text</b> <i>kursiver Text</i> <u>unterstrichener Text</u> Kombinationen sind auch möglich z.B.: <b><i>fetter & kursiver Text</i></b> C2 Quellcode formatieren: <code>Quellcode</code> ASM Quellcode formatieren: <asm>Quellcode</asm> (Innerhalb eines Quellcodeabschnitts ist kein html möglich.) Wichtig: Bitte mache Zeilenumbrüche, bevor Du am rechten Rand des Eingabefeldes ankommst ! > Hallo Andre, > > deine Tip war top. Unser Problem ist gelöst! Wir lassen es jetzt nur über einen Thread laufen, trotzdem > muss man höllisch aufpassen. Wär doch was für Deine FAQ`s. > > bueno, muchas gracias hombre!!! > MfG > rüdi und kone > > > > Hallo Rüdi, > > > > Das Capture funzt einwandfrei. Jedoch muß man bei bereits gecaptureten > > Funktionen, wie das z.B. bei hwcom der Fall ist, aufpassen. > > > > Wird von mehreren Threads jeweils eine Ausgabe gemacht, gibt's kein Problem. > > z.B. beiden senden einen String. (unterschiedliche Variablen !!) > > Wenn aber die Threads mehrere Ausgaben machen, z.B. mit put(), send() und/oder print(), > > ist nicht die gesamte Ausgabe gecaptured, sondern nur die einzelne Funktion. > > D.h. zwischen den Aufrufen kann der nächste Thread Laufzeit bekommen. > > Eine Lösung wäre hier ein verschachteltes Capture (siehe Modul cap.c2). > > Auch muß beachtet werden, daß das Senden im Hintergrund geschieht. > > <font face='courier new' size=2> > > string s; > > ... > > s="Irgentetwas"; > > hwcom.print(s); > > s="etwas anderes"; > > hwcom.print(s);</font> > > > > Dies hier führt z.B. zu Fehlern, da die Ausgabe des Strings s noch nicht > > komplett gesendet wurde, als in s ein neuer String geschrieben wird. > > Hier muß entweder auf hwcom.ready() gewartet oder abwechselnd eine > > zweite String-Variable benutzt werden.(Das selbe gilt auch für Arrays) > > > > Jedoch würde ich generell die serielle Kommunikation nur über einen einzigen > > Thread laufen lassen. Ich kann mir sonst nicht vorstellen, daß diese > > sonst einwadfrei funzt und der Empfänger (z.B. PC) die Daten im richtigen Format > > bekommt. > > In meinen Projekten gibt es dafür immer einen eigenen Thread, der z.B. nur > > die Komunikation über hwcom übernimmt. > > > > MfG André H. > > > > > > > Hallo Leute, > > > > > > alles im grünen Bereich in der Entwicklergemeinde?! > > > Das hoff ich doch und Ihr könnt mir vielleicht weiterhelfen:-) > > > > > > Ich und mein Projektteam sind uns nicht ganz sicher, ob die Semaphor - Implementation: > > > capture... > > > release; > > > richtig funktioniert. Bei dem Versuch 2 Threads parallel laufen zu lassen, die jeweils beide > > > über hwcom.c2 Funtionen Ausgaben über die RS232 Schnittstelle Ausgaben auf dem > > > Hyperterminal des angeschlossenen Rechners erzeugen, ist folgender Fehler aufgetreten: > > > > > > Die Ausgabe ist korrupiert, d.h., das nict alle Zeichen auf dem Hyperterminal ankommen. > > > Wir haben 2 Theorien: > > > 1.Die capture-release Anweisung funktioniert nicht richtig und schützt die kritischen Bereiche > > > nicht vollständig. > > > 2.Die Hardware Register der RS232 Schnittstelle werden von den Threads gegenseitig > > > überschrieben, bevor der angeschl. Rechner die Register komplett abfragen kann. > > > > > > Wäre super, wenn einer von Euch weiss, was da vor sich geht. Wenn Punkt 2 der Fall sein sollte, > > > ist das vielleicht bei allen externen Einheiten so? > > > > > > Mit freundlichem Gruß > > > rüdi*** > > >