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

Standardfunktionen memset

fujitsufan
2009-10-29
2009-10-29
  • fujitsufan - 2009-10-29

    Hallo,

    weiß jemand wo ich einfache Funktionen wie "memset", memcpy" usw. finde.

    Oder muss ich Funktinen wie ein Array, alle Felder auf 0 setzten, selber schreiben?

    mfG.

    fujitsufan

     
  • Erik Böhm - 2009-10-29

    Mahlzeit

    Für so was gibts die SysLibMem, wenn dein Steuerungshersteller eine mitliefert.

    Ansonsten wär das eben eine FOR Schleife. Auch nicht sonderlich aufwändig...

    Gruss

    Erik

     
  • Chräshe - 2009-10-29

    Hallo fujitsufan,

    was hast du für ein Zielsystem?

    Bei TwinCAT findest du die Funktion in der „TcSystem.Lib“.

    Alternativ sollte dir die Funktion „_ARRAY_INIT“ aus der OSCAT-Lib auch weiter helfen.

    Diese ist halt für Real-Werte, aber die sind zum rechnen ja sowieso besser…

    http://www.oscat.de/

    Zitat:
    6.3. _ARRAY_INIT
    Die Funktion _ARRAY_INIT initialisiert ein beliebiges Array of REAL mit einem
    Initialwert. Beim Aufruf wird der Funktion ein Pointer auf das zu initialisierende
    Array und dessen Größe in Bytes übergeben. Unter CoDeSys
    lautet der Aufruf: _ARRAY_INIT(ADR(Array), SIZEOF(Array), INIT), wobei Array
    der Name des zu manipulierenden Arrays ist. ADR ist eine Standardfunktion,
    die den Pointer auf das Array ermittelt und SIZEOF ist eine Standardfunktion,
    die die Größe des Arrays ermittelt. Die Funktion liefert nur
    71 Version 3.10
    TRUE zurück. Das durch den Pointer angegebene Array wird direkt im
    Speicher manipuliert.
    Diese Art der Bearbeitung von Arrays ist äußerst effizient, da kein zusätzlicher
    Speicher benötigt wird und keine Übergabewerte kopiert werden
    müssen.
    Beispiel: _ARRAY_INIT(ADR(bigarray), SIZEOF(bigarray), 0)
    initialisiert bigarray mit 0.

    Gruß

    Chräshe

     

Log in to post a comment.