Zur Übersicht - Zurück zur Homepage
Re: ser.Schnittstelle C2->C1 über swcom Kategorie: Sonstige Hardware (von: guenter - 5.2.2002 8:07)
Als Antwort auf: Re: ser.Schnittstelle C2->C1 über swcom von André H. - 3.2.2002 22:48

Hallo Andre

Vielen Dank für Deinen Hinweis.

Ich habe das C1- und das C2-Programm entsprechend angepaßt.

die gute Nachricht:
auf der C1 kann ich jetzt alle gesendeten Daten empfangen

die schlechte Nachricht:
die Daten sind trotzdem nicht korrekt:

Beispiel:

C2 sendet die Zahl 1
C1 interpretiert diesen Wert als Zahl 127

desgleichen

2 wird zu 191
3 wird zu 126
4 wird zu 223
5 wird zu 125
6 wird zu 190
7 wird zu 124
8 wird zu 239
9 wird zu 123

Auch eine Betrachtung in binärer Darstellung ergibt keine Erklärung
bzw. Systematik

Ich habe dann die swcom der C2 mit der COM-Schnittstelle am PC
verbunden (Parameter auf beiden Seiten 9600,8,N,1) und die Daten
auf der Empfangsleitung (RxD) am PC mit einem Schnittstellen-Analyser
überprüft.

Ergebnis:
der Analyser meldet permanent Parity-Fehler bzw. Stopbit-Fehler !!!

das C2-Programm sieht wie folgt aus

byte wert
int i;

thread main
{

swcom.init (); // swcom mit 9600
swcom.setspeed (5); // initialisieren

for i = 0 ... 7
{
wert = 1;
wait swcom.ready();
swcom.put (wert);
}
}

Hast Du vielleicht noch eine Idee, wie ich weiterkommen könnte.

Hat jemand die swcom (wie und mit welchem Ergebnis ? ) verwendet ?

Bin für jede Hilfe dankbar

Günter

> ---------------------------------------------------------------------------------------------

> beachte, daß die CC1 nur einen Datenpuffer von 8Byte für
> die serielle Schnittstelle hat!!
> Es läuft einfach der Empfangspuffer der CC1 über.
> Sende einfach max. 8 Zeichen und warte dann eine Zeit.
> Wie lange die Pause sein muß, mußt Du ausprobieren.
> Das hängt von der Ausführgeschwindigkeit des CC1-Proggies
> ab.
>
> MfG André H.
>
>
> >
> > Ich gebe in einem C-2-Programm die Werte von 1 ... 255 über die
> > serielle swcom-Schnittstelle (mit 9.600 Baud) aus und möchte diese
> > Daten auf einer C-1-Unit über deren ser. Schnittstelle (hat auch 9600 Baud)
> > wieder einlesen.
> >
> > Leider gehen auf dem Weg dorthin Daten verloren.
> > Ob dies in der C2 und/oder in der C1 passiert, konnte ich noch
> > nicht definitiv feststellen
> >
> > Die korrekte elektrische Verbindung (TxD -> RxD bzw.GND)
> > ist sichergestellt;
> >
> > es kommen ja auch einzelne Daten in der C1 an !!!
> >
> > Anscheinend handelt es sich um ein Problem der Synchronisierung
> > der beiden Rechner (Stichwort 'Handshake' ???)
> >
> > ...oder...
> >
> > könnte es sich um ein generelles OS-Problem handeln ??
> > (vergleiche Diskussion im Forum weiter unten z. Thema hwcom !!)
> >
> > Die auf beiden Rechnern installierten Test-Programme könnte ich zur
> > Einsicht und Prüfung zur Verfügung stellen
> >
> > Hat jemand eine solche Lösung schon realisiert und könnte mir
> > weiterhelfen ?
> >
> >
> > Besten Dank im Voraus
> >
> > Günter


    Antwort Schreiben
Re: ser.Schnittstelle C2->C1 über swcom (von ReNi am 5.2.2002, 18:29)