Welcome to our new forum
All users of the legacy CODESYS Forums, please create a new account at account.codesys.com. But make sure to use the same E-Mail address as in the old Forum. Then your posts will be matched. Close

Unterschiede C und Structured Text

bspire
2012-08-01
2012-08-02
  • bspire - 2012-08-01

    Hallo,

    ich bin neu in der PLC Welt, habe jedoch jahrelange Erfahrung in der C-Programmierung von embedded Systemen.

    Mich würden die Unterschiede zwischen C und Structured Text (ST) interessieren. Kennt jemand eine Übersicht wo die Unterschiede beschrieben sind?

    Sind laut IEC Norm in Structured Text Pointer (Zeiger) spezifiziert?

    Gruß

    Stefan

     
  • Schuero - 2012-08-01

    Hallo Stefan.

    Die Hilfe (F1) bietet eine gute übersicht, welche Befehle ST so auf Lager hat.
    Da ich damals mit ANSI-C angefangen bin, konnte man die Syntax fast 1:1 übernehmen.

    Pointer funktionieren auch total gut. Man muß sich bloß abgewöhnen Speicher zu allokieren.
    Das erledigt CoDeSys schon während der Deklaration. Hat natürlich den Nachteil, dass man dynamische Speicherverwaltung vergessen kann (soll meinen, dass man z.B. zur Laufzeit kein Array vergrößern kann)

    Gruß schuero

     
  • cmoeller - 2012-08-02

    Hallo Stefan,

    für mich liegt der größte Unterschied im EVA-Prinzip.
    EVA steht für Eingänge lesen, verarbeiten und Ausgänge schreiben, dabei handelt es sich um einen SPS-Zyklus.
    Aus deiner C Vergangenheit wirst du gewohnt sein mit blockierenden Funktionen zu arbeiten und die funktion "main()" suchen.

    Die "main()" stellt dir die SPS-Laufzeitumgebung bereits zur Verfügung, das heist alles was du schreibst wird zyklisch ausgeführt.
    Böse nur, wenn du mit blockierenden Funktionen den aktuellen Zyklus "anhälst".

    Gruss
    cmoeller

     

Log in to post a comment.