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

Ergebnis 1 bis 10 von 10

Thema: for-Schleife

  1. #1
    Registriert seit
    17.03.2009
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo,

    diese Schleife läuft nicht richtig, nur der ertse dbx wird gelöscht.

    [IMG]file:///C:/DOKUME%7E1/Hilmi/LOKALE%7E1/Temp/moz-screenshot.jpg[/IMG][IMG]file:///C:/DOKUME%7E1/Hilmi/LOKALE%7E1/Temp/moz-screenshot-1.jpg[/IMG]

    wo verbergt sich der Fehler?
    danke
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren for-Schleife  

  2. #2
    Registriert seit
    15.10.2007
    Ort
    St.Pölten
    Beiträge
    875
    Danke
    98
    Erhielt 200 Danke für 188 Beiträge

    Standard

    als kleinen denkanstoß
    l 0
    wird nicht gehen

    Code:
    entweder
    l p#0.0
    t t_step
     
    oder
     
    l 0
    sld 3
    t t_step
    und jetzt nachdenken und umsetzen
    Beginne jeden Tag mit einem lächeln,es kann dir nämlich während des Tages sehr schnell vergehen.

  3. #3
    Registriert seit
    27.05.2004
    Ort
    Thüringen/Berlin
    Beiträge
    12.222
    Danke
    533
    Erhielt 2.698 Danke für 1.950 Beiträge

    Standard

    Und zum Thema loop schau mal hier: http://www.sps-forum.de/showthread.p...highlight=loop in einem der Beiträge ist ein schönes Beispiel inkl. Pointer.
    Gruß
    Ralle

    ... there\'re 10 kinds of people ... those who understand binaries and those who don\'t …
    and the third kinds of people … those who love TIA-Portal

  4. #4
    Registriert seit
    11.05.2005
    Ort
    Baden-Württemberg
    Beiträge
    669
    Danke
    113
    Erhielt 153 Danke für 124 Beiträge

    Standard

    Hallo,

    wenns funktionieren soll, dann kannst du nicht einfach deinen Schleifenzähler mit dem Pointer addieren!

    Ich würds in etwa so machen:

    Code:
    un reset
    spb _001
    auf DB xxx //gewünschten Datenbaustein öffnen
    lar1 p#0.0 //Startbyte im DB
    l 30
    L1: set
    r dbx[ar1,p#0.x] //Pointer auf dein Bit - z.B. p#0.1 für Bit 1
    +ar1 p#x.0 //Adressregister 1 erhöhen - z.B. p#2.0 für 16-Bit Format (Word/Int)
    loop L1
    _001: nop 0
    Gruß Micha
    "arbeite klug, nicht hart" - deutsches Sprichwort

  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

    @gerhard
    L L#0 geht sehr wohl. byte 0, bit 0 ... mit + 1 kann man so die 8bit eines bytes sogar ansprechen, beim nächsten byte wirds dann dann allerdings schwerer

    @ralle
    nu, war auch mein erster gedanke, warum nicht mit loop ...

    @fai004
    [das folgende ist nicht wahr]
    der fehler deiner schleife liegt im <D

    im akku1 steht dein schleifenzähler
    mit dem laden des durchlaufwertes wird der schleifenzähler in akku2 transferiert und in akku1 steht der durchlaufwert
    <D heißt - VKE = 1 wenn akku1 kleiner als akku2 ist ... isser bei dir nie
    mit >D siehts schon anders aus.
    [die grütze endet hier]

    natürlich heißt <D -> VKE = 1 wenn akku2 kleiner ist als akku1
    Geändert von vierlagig (25.04.2009 um 17:05 Uhr)
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  6. #6
    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 SPSKILLER Beitrag anzeigen
    Ich würds in etwa so machen:

    Code:
    un reset
    spb _001
    auf DB xxx //gewünschten Datenbaustein öffnen
    lar1 p#0.0 //Startbyte im DB
    l 30
    L1: set
    r dbx[ar1,p#0.x] //Pointer auf dein Bit - z.B. p#0.1 für Bit 1
    +ar1 p#x.0 //Adressregister 1 erhöhen - z.B. p#2.0 für 16-Bit Format (Word/Int)
    loop L1
    _001: nop 0
    Gruß Micha
    ...und dich wundern, dass es nicht funktioniert

    da fehlt der schleifenzähler. loop braucht den.
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  7. #7
    Registriert seit
    11.05.2005
    Ort
    Baden-Württemberg
    Beiträge
    669
    Danke
    113
    Erhielt 153 Danke für 124 Beiträge

    Standard

    Zitat Zitat von vierlagig Beitrag anzeigen
    @fai004
    der fehler deiner schleife liegt im <D

    im akku1 steht dein schleifenzähler
    mit dem laden des durchlaufwertes wird der schleifenzähler in akku2 transferiert und in akku1 steht der durchlaufwert
    <D heißt - VKE = 1 wenn akku1 kleiner als akku2 ist ... isser bei dir nie
    mit >D siehts schon anders aus.
    ist das dein Ernst?
    "arbeite klug, nicht hart" - deutsches Sprichwort

  8. Folgender Benutzer sagt Danke zu SPSKILLER für den nützlichen Beitrag:

    vierlagig (25.04.2009)

  9. #8
    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 SPSKILLER Beitrag anzeigen
    ist das dein Ernst?
    vom samstag nachmittag aus betrachtet - ja, warum?
    kann sein, dass ich nen denkfehler hab - lange keinen vergleicher mehr gesehen - hab ich?

    [edit]
    hab ich, ja fUck ... was soll das denn?
    [/edit]
    Geändert von vierlagig (25.04.2009 um 17:04 Uhr)
    [SIGNATUR]
    Ironie setzt Intelligenz beim Empfänger voraus.
    [/SIGNATUR]

  10. #9
    Registriert seit
    11.05.2005
    Ort
    Baden-Württemberg
    Beiträge
    669
    Danke
    113
    Erhielt 153 Danke für 124 Beiträge

    Standard

    Zitat:
    Zitat von SPSKILLER
    Ich würds in etwa so machen:

    Code:
    un resetspb _001auf DB xxx //gewünschten Datenbaustein öffnenlar1 p#0.0 //Startbyte im DBl 30L1: setr dbx[ar1,p#0.x] //Pointer auf dein Bit - z.B. p#0.1 für Bit 1+ar1 p#x.0 //Adressregister 1 erhöhen - z.B. p#2.0 für 16-Bit Format (Word/Int)loop L1_001: nop 0
    Gruß Micha

    ...und dich wundern, dass es nicht funktioniert

    da fehlt der schleifenzähler. loop braucht den.
    der Beitrag ist auch bullshit. aber nix für ungut.
    "arbeite klug, nicht hart" - deutsches Sprichwort

  11. Folgende 2 Benutzer sagen Danke zu SPSKILLER für den nützlichen Beitrag:

    Ralle (25.04.2009),vierlagig (25.04.2009)

  12. #10
    fai004 ist offline Neuer Benutzer
    Themenstarter
    Registriert seit
    17.03.2009
    Beiträge
    11
    Danke
    0
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich danke euch für die Unterstützung.
    ich habe das so gelöst.

    Gruß

    Faissal
    Angehängte Grafiken Angehängte Grafiken
    Zitieren Zitieren Loop  

Ähnliche Themen

  1. While Schleife in ST
    Von Snooky im Forum CODESYS und IEC61131
    Antworten: 6
    Letzter Beitrag: 30.11.2010, 21:50
  2. IF oder FOR Schleife in AWL?
    Von motamas im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 21.07.2010, 14:19
  3. FOR Schleife
    Von dietere im Forum Sonstige Steuerungen
    Antworten: 1
    Letzter Beitrag: 19.01.2008, 02:36
  4. For Schleife in VB 6
    Von godi im Forum Hochsprachen - OPC
    Antworten: 8
    Letzter Beitrag: 14.06.2007, 10:03
  5. AWL Schleife
    Von Anonymous im Forum Simatic
    Antworten: 6
    Letzter Beitrag: 31.07.2003, 07:05

Lesezeichen

Berechtigungen

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