Einzelne Zeichen über CP341 empfangen

M

Malte

Guest
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,

ich bin mittlerweile beim letzten Problem meiner RS232-Schnittstellen-Steuerung angekommen. Was ich brauche ist der Empfang eines einzelnen Zeichens, das über die RS232-Schnittstelle gelesen werden soll.

Ich hab mir folgendes überlegt:

Code:
    // Zeichen empfangen
      U     #PongEmpfangen
      UN    #ResetEmpfang
      =     L      0.0
      BLD   103
      U     #ResetEmpfang
      =     L      0.1
      BLD   103
      CALL  "P_RCV_RK" , DB7
       EN_R    :=L0.0
       R       :=L0.1
       LADDR   :=272
       DB_NO   :=99
       DBB_NO  :=136
       L_TYP   :=
       L_NO    :=
       L_OFFSET:=
       L_CF_BYT:=
       L_CF_BIT:=
       NDR     :=#Empfangen
       ERROR   :=M8.0
       LEN     :=MW9
       STATUS  :=MW6
      NOP   0


    // Empfangenes Byte in Merkerbyte übertragen
      AUF   DB99
      L     DBB  136
      T     "M_Empfang"

In der Beobachtung ist deutlich zu erkennen, dass der Baustein wirklich angesprochen wird (EN_R ist 1). Im Empfangsmerker kommt nur leider nichts an. Genauso wenig ändern sich je die Merker bei ERROR, LEN und STATUS.

Habt ihr irgendwelche Ideen wo ein Denkfehler vorliegen könnte oder wie man das geschickter anstellen kann?
 
Hallo Malte

ich hab vor kurzem auch eine CP341 in Betrieb genommen. War zwar ne Zangengeburt aber schlussendlich liefs wie geschmiert. :lol:

Wenn du eine neue CP kaufst, sollte eine CD dabei sein. Dies vereinfacht dir die ganzen Hardwaremässigen Einstellungen durch den freigeschalteten Icon "Parameter" und zusätzlich sind Beispielprojekte dabei.

Am besten schaust dir mal diese Beispiele an, die gar nicht so schlecht beschrieben sind, und bindest die entsprechenden Bausteine inkl. Instanz-DB's (Wichtig nicht selber erzeugen, hatte schlechte Erfahrungen damit gemacht!) in deinem Projekt ein. :!:

Falls du keine solche CD besitzt wäre hier den Link dazu wo du die Software herunterladen kannst:
http://www4.ad.siemens.de/WW/llisap...m=3&lang=de&content=skm/search.asp?&Query=FAQ
Danach gibst du unter "Suche" 12310504 ein.

Viel Erfolg und mfG churchill
 
Zurück
Oben