Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 10 von 15

Thema: byte in array kopieren [AWL]

  1. #1
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    ich hab ja hier http://sps-forum.de/showpost.php?p=166315&postcount=7 einen zugriff auf zwei array [0..7] of bool implementiert, aber irgendwie gefällt mir das nicht! irgendwie ist das unbefriedigend, dass ich vorne weg und hinter her, die byte's einzeln, bit für bit hin und her schubsen muß ... bitschubse ist zwar nicht so schlimm wie saftschubse, aber immer noch schlimm genug ... jetz überleg ich hin und her und eine richtige lösung fiel mir bis jetzt nicht ein, aber gerade beim schreiben:

    das zweite adressregister mit der adresse vom array beladen, also

    Code:
    *
          LAR1  P##bInput 
          L     #dTempAR2 
          +AR1   
    
          LAR2  P##aTempInput[0]
          L     #dTempAR2
          +AR2  
    
          L     B[AR1,P#0.0]
          T     B[AR2,P#0.0]
    natürlich müßt ich dann das AR2 nach der abhandlung wiederherstellen, aber ich möchte jetzt, kurz bevor ich schlafen gehe nur wissen ob das so geht ... hab grad keine möglichkeit zum testen *durchdreh*
    Geändert von vierlagig (12.11.2008 um 23:31 Uhr)
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]
    Zitieren Zitieren byte in array kopieren [AWL]  

  2. #2
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    halb zwölf brauch man euch sone scheiße nich mehr fragen, wa? ...ihr seid dran schuld, wenn ich schlecht schlafe, laßt euch das gesagt sein!

    aber grundsätzlich sollte das so funktionieren, hoffe nur, dass die multiinstanzfähigkeit erhalten bleibt ...
    Geändert von vierlagig (13.11.2008 um 00:20 Uhr) Grund: l
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  3. #3
    Registriert seit
    22.01.2008
    Ort
    Allgäu, da wo die Kühe schöner sind als die Mädels
    Beiträge
    1.774
    Danke
    50
    Erhielt 729 Danke für 434 Beiträge

    Standard

    Hallo mein lieber 4L

    Funktionieren müsste das schon, nur wenn Du den Code in einem FB verwendest, der als Multiinstanz aufgerufen wird, wirst du Deinen Spass haben.
    Vorschlag:
    AR2 sichern
    Deinen Code ausführen
    AR2 zurück laden

    Gruss
    Audsuperuser
    Gruss Audsuperuser

    Herzlich Willkommen im Chat:
    SPS-Forum Chat (Mibbit) | SPS-Forum Chat (MIRC)

  4. #4
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    Zitat Zitat von AUDSUPERUSER Beitrag anzeigen
    Vorschlag:
    AR2 sichern
    Deinen Code ausführen
    AR2 zurück laden
    danke für den vorschlag, ist bei mir gängige praxis und oben auch angeführt ... es ging mir nur um die grundsätzlichkeit UND ob das laden des AR2 so richtig ist. stimmt zum einen der array-index und muß ich hier auch den multiinstanzversatz durch addieren des alten AR2 herstellen
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  5. #5
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    so gehts:

    Code:
    *
          LAR1  P##bInput
          L     #dTempAR2
          +AR1  
    
          LAR2  P##aTempInput
          L     #dTempAR2
          +AR2  
    
          L     B [AR1,P#0.0]
          T     B [AR2,P#0.0]
    
          LAR2  #dTempAR2
    was lernen wir daraus? richtig, nich dumm rum fragen, selber probieren!
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  6. #6
    Registriert seit
    21.09.2006
    Ort
    Alfter
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Hallo,
    ich möchte gern ein 2d Array aufbauen. zu jeder Stunde möchte ich 20 messwerte erfassen. ich wollte dieses mit einem array welches variabel ist machen, doch das geht nur in scl. hat jemand ein beispiel für eine awl anweisung??

    L array_online[0]
    T arry_archiv[std_zahl,0]

    L array_online[1]
    T arry_archiv[std_zahl,1]

    L array_online[2]
    T arry_archiv[std_zahl,2]

    usw....
    -----------------

    Best regards

    HeiProTech BONN
    HeiProTech@gmx.de

  7. #7
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    das zweidimensionale array (im bsp. mit INT) ist im speicher so aufgebaut:

    0.0 array[0,0]
    2.0 array[0,1]
    4.0 array[0,2]

    usw.

    du lädst ins adressregister den start vom array und entsprechend der stunde dann einen versatz von, sagen wir 20 INT-werte, P#42.0 je stunde
    Geändert von vierlagig (13.11.2008 um 10:30 Uhr)
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  8. #8
    Registriert seit
    21.09.2006
    Ort
    Alfter
    Beiträge
    3
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard

    Vielen Dank für die Antwort. Doch wie sieht dann der Quellcode aus? Ich kenne mich nicht mir der "Pointer" Verarbeitung aus
    -----------------

    Best regards

    HeiProTech BONN
    HeiProTech@gmx.de

  9. #9
    Registriert seit
    08.08.2007
    Ort
    Dresden
    Beiträge
    9.648
    Danke
    1.059
    Erhielt 2.046 Danke für 1.627 Beiträge

    Standard

    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  10. #10
    Registriert seit
    11.10.2006
    Ort
    Verden (Aller)
    Beiträge
    532
    Danke
    31
    Erhielt 58 Danke für 49 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Zitat Zitat von AUDSUPERUSER Beitrag anzeigen
    Vorschlag:
    AR2 sichern
    Deinen Code ausführen
    AR2 zurück laden
    Ich hatte mal den Fall, daß ein Baustein, der im OB35 aufgerufen wurde und der offensichtlich das AR2 verwendet hat, ohne diesen sauber zu sichern, dazu geführt hat, daß ich mir fast den Kälberstrick genommen habe, weil immer wieder Bearbeitungsfehler auftraten. Seither verwende ich das AR2 nicht mehr.
    "Ein lahmer Drecksplanet ist das, ich habe nicht das geringste Mitleid" (Prostetnik Vogon Jeltz)

Ähnliche Themen

  1. Array of Byte in String mit Step 7 V10.5
    Von Lord Cartman im Forum Simatic
    Antworten: 12
    Letzter Beitrag: 09.12.2010, 09:34
  2. array of [1..8] byte
    Von domino im Forum CODESYS und IEC61131
    Antworten: 6
    Letzter Beitrag: 13.04.2010, 07:25
  3. Array of Byte to String[12] ,S7
    Von sb9674 im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 28.09.2009, 19:15
  4. Bit/Byte/Wortadressierung aus definiertem Array?
    Von momo99 im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 25.02.2009, 17:21
  5. Bool-Array in Byte-Array
    Von Techniker im Forum Sonstige Steuerungen
    Antworten: 10
    Letzter Beitrag: 13.01.2006, 19:12

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •