Zur Übersicht - INFO - Neueste 50 Beiträge - Neuer Beitrag - Suchen - FAQ - Zum CC1-Forum - Zum CC-Pro-Forum

Re: CC2 Station und hwcom Kategorie: Programmierung (von Tom - 8.12.2003 9:01)
Als Antwort auf CC2 Station und hwcom von Rene Forster - 6.12.2003 19:14

Hallo Rene,
ich sehe zwei Probleme in deinem Programm:

1. die Funktion hwcom.receive erwartet als Variable einen Bytearray
   
2. die Funktion hwcom.receive wartet intern auf ein RXD(), wenn du also
   nur ein Zeichen schickst wird kein weiteres RXD() ausgelöst und somit
   läuft der Timeout ab.

ich denke wenn Du an Stelle des

> hwcom.receive(eingabe,1,1000);  // Daten in die Vari eingabe übernehmen ( ist String definiert )

ein

> eingabe= hwcom.get();

benutzt sollte es gehen.
Beachte aber, das weder receive() noch get() einen String zurückliefern sondern receive()
ein Byte und get() einen Integerwert.

mfg Tom


> Hallo Zusammen,
>
> Hardware : CC2 Station mit neusten OS und hwcom Modul.
> Software : Terminalprogramm RS 232 aus dem Buch MSR mit CC2
>
> CC2 und PC sind mit dem Nullmodemkabel verbunden, welches ich auch zum Programmieren
> benutze. 3 Leitungssystem RxD,GND,TxD
>
> Problem : das Empfangen von Daten die über das Terminalprogramm gesendet werden.
>
> Eigener Thread, installierung vom hwcom und setzen der Parameter. Dann die Abfrage und zurück
> senden der empfangenen Daten der Schnittstelle.
>
>
>
> if hwcom.rxd()           // Frage ob Daten vorhanden sind
> {
> plm.beep(plm.TONE_C2); sleep 500; plm.beep(plm.TONE_OFF);  - ja dann langer Ton
>
> hwcom.receive(eingabe,1,1000);  // Daten in die Vari eingabe übernehmen ( ist String definiert )
> sleep 500;     // kurze Pause
>
> h=eingabe;                               // Ã?bergabe an Vari h ( ist auch als String definiert )
> hwcom.send(h,str.length(h));      // Senden zurück
> sleep 1000;                              // kurze Pause
> hwcom.flush();                          // Speicher löschen - wird aber eigentlich bei hwcom.receive erledigt
>
> }
> else
> {                   // bei nein zwei kurze Töne und dann wieder zurück zur Abfrage ( läuft in loop Schleife )
> plm.beep(plm.TONE_C2); sleep 25; plm.beep(plm.TONE_OFF);
> sleep 250;
> plm.beep(plm.TONE_C2); sleep 25; plm.beep(plm.TONE_OFF);
> sleep 1000;
> }
>
> Das Senden von Daten der CC2 zum Terminalprogramm funktioniert hervorragend, beim das Empfangen
> will einfach nicht funktionieren.
>
> Hat jemand die CC2 Station im Einsatz und emfängt Daten vom PC.
> Wäre über jede Hilfe dankbar.
>
> Rene Forster
>
>
>
>




    Antwort schreiben


Antworten:

get und put sind ok - receive ?? (von Rene Forster - 8.12.2003 22:10)
    Re: get und put sind ok - receive ?? (von André H. - 19.12.2003 8:53)
    Re: get und put sind ok - receive ?? (von Tom - 9.12.2003 8:43)