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

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 17 von 17

Thema: Maskierung PED PAD

  1. #11
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.166
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Hallo wee,

    ich würde die Statusbits und den Absolutwert so trennen:
    Code:
    L     PED 310
    RLD   8
    T     #StatusByte
    SSD   8
    T     #Absolutwert
    Das Setzen des Bit .25 würde ich genauso machen, wie Du es im Beitrag #1 geschrieben hast (mit OD).
    Code:
    L     MD 400    // Hier steht der Sollwert drin (max 24 Bit)
    L     2#10_00000000_00000000_00000000 // Bit .25 (26. Bit von LSB/rechts)
    OD
    T     PAD 310
    Für solche Sachen, wie Sarek in Beitrag #2 vorschlägt, benutze ich einen so deklarierten Schmiermerkerbereich:
    Code:
    TmpUnion_Bit24	M     220.0	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit25	M     220.1	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit26	M     220.2	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit27	M     220.3	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit28	M     220.4	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit29	M     220.5	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit30	M     220.6	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit31	M     220.7	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit16	M     221.0	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit17	M     221.1	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit18	M     221.2	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit19	M     221.3	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit20	M     221.4	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit21	M     221.5	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit22	M     221.6	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit23	M     221.7	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit8	M     222.0	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit9	M     222.1	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit10	M     222.2	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit11	M     222.3	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit12	M     222.4	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit13	M     222.5	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit14	M     222.6	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit15	M     222.7	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit0	M     223.0	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit1	M     223.1	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit2	M     223.2	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit3	M     223.3	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit4	M     223.4	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit5	M     223.5	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit6	M     223.6	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_Bit7	M     223.7	BOOL	temporäres DWord für Zugriff auf .0 ... .31
    TmpUnion_HH_B	MB    220	BYTE	temporäres DWord Bits .24 ... .31
    TmpUnion_HL_B	MB    221	BYTE	temporäres DWord Bits .16 ... .23
    TmpUnion_LH_B	MB    222	BYTE	temporäres DWord Bits .8 ... .15
    TmpUnion_LL_B	MB    223	BYTE	temporäres DWord Bits .0 ... .7
    TmpUnion_H_W	MW    220	WORD	temporäres DWord Bits .16 ... .31
    TmpUnion_L_W	MW    222	WORD	temporäres DWord Bits .0 ... .15
    TmpUnion_DW	MD    220	DWORD	temporäres DWord Bits .0 ... .31
    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  2. #12
    Registriert seit
    24.09.2009
    Beiträge
    70
    Danke
    0
    Erhielt 8 Danke für 8 Beiträge

    Standard

    Ich habe sowas noch nicht ausprobiert, doch ich meine, wenn die Baugruppe nicht auch PEB314 enthält, dann funzt das lesen von PED311 nicht.
    Das PAE ist ein Systemdatenbereich welcher durch das Betriebssystem nach der Initialisierung im Rahmen der eingesetzten CPU alloziert und bereitgestellt wird. Solange der Zugriff innerhalb des PAE bleibt, funktioniert das einwandfrei.

    Markus
    Alle Menschen sind klug; die einen vorher, die anderen nachher!

  3. #13
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.712
    Danke
    398
    Erhielt 2.397 Danke für 1.997 Beiträge

    Standard

    Zitat Zitat von MarkusP210 Beitrag anzeigen
    Das PAE ist ein Systemdatenbereich welcher durch das Betriebssystem nach der Initialisierung im Rahmen der eingesetzten CPU alloziert und bereitgestellt wird. Solange der Zugriff innerhalb des PAE bleibt, funktioniert das einwandfrei.

    Markus
    Na toll ...
    Dann sag mir doch mal, bei welcher CPU du davon ausgehen kannst, dass die Adresse 311 noch standardmäßig innerhalb des PAE bleibt ...? Oder anders ... wie kannst du das hier voraussetzen ?

    Für mich ist dieser Vorschlag in dieser Form unbrauchbar - sorry ...

    Gruß
    Larry

  4. #14
    Registriert seit
    24.09.2009
    Beiträge
    70
    Danke
    0
    Erhielt 8 Danke für 8 Beiträge

    Standard

    Na toll ...
    Dann sag mir doch mal, bei welcher CPU du davon ausgehen kannst, dass die Adresse 311 noch standardmäßig innerhalb des PAE bleibt ...? Oder anders ... wie kannst du das hier voraussetzen ?
    Von standardmässig war hier nie die Rede, sondern von der kürzest möglichen Lösung der Aufgabe. Ausserdem spricht nichts dagegen, die Basisadresse der SSI-Baugruppe ins PAE zu verschieben.

    Für mich ist dieser Vorschlag in dieser Form unbrauchbar - sorry
    Unbrauchbar ist vor allem Dein Ton!

    Markus
    Alle Menschen sind klug; die einen vorher, die anderen nachher!

  5. #15
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.166
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard

    Zitat Zitat von MarkusP210 Beitrag anzeigen
    Wie wär's mit:

    L PED311
    SRD 8
    T --> Ziel
    Zitat Zitat von PN/DP Beitrag anzeigen
    Ich habe sowas noch nicht ausprobiert, doch ich meine, wenn die Baugruppe nicht auch PEB314 enthält, dann funzt das lesen von PED311 nicht.
    Zitat Zitat von MarkusP210 Beitrag anzeigen
    Das PAE ist ein Systemdatenbereich welcher durch das Betriebssystem nach der Initialisierung im Rahmen der eingesetzten CPU alloziert und bereitgestellt wird. Solange der Zugriff innerhalb des PAE bleibt, funktioniert das einwandfrei.
    Achtung - nicht verwechseln!
    Mit L PED311 wird nicht auf das PAE zugegriffen, sondern auf die Baugruppe, unabhängig davon, wie groß das PAE ist.
    Soll auf das PAE zugegriffen werden, dann muß L ED311 benutzt werden und das PAE muß groß genug sein.

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  6. #16
    Registriert seit
    22.06.2009
    Ort
    Sassnitz
    Beiträge
    11.166
    Danke
    921
    Erhielt 3.286 Danke für 2.655 Beiträge

    Standard

    Zitat Zitat von MarkusP210 Beitrag anzeigen
    Für mich ist dieser Vorschlag in dieser Form unbrauchbar - sorry
    Unbrauchbar ist vor allem Dein Ton!

    Markus
    Ich empfinde den Vorschlag eines derartig "krummen" Zugriffs aus mehreren Gründen ebenfalls unbrauchbar (selbst wenn es funktionieren sollte), ich hätte das aber nicht so freundlich wie Larry ausdrücken können.

    Besonders unbrauchbar empfinde ich Halbwissen, Schnellschuß-Programmierung, ohne genau zu wissen was man tut, und eingeschnappte Leberwürste ...

    Harald
    Es ist immer wieder überraschend, wie etwas plötzlich funktioniert, sobald man alles richtig macht.

    FAQ: Linkliste SIMATIC-Kommunikation über Ethernet

  7. Folgende 2 Benutzer sagen Danke zu PN/DP für den nützlichen Beitrag:

    Larry Laffer (12.01.2011),marlob (12.01.2011)

  8. #17
    Registriert seit
    22.03.2007
    Ort
    Detmold (im Lipperland)
    Beiträge
    11.712
    Danke
    398
    Erhielt 2.397 Danke für 1.997 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Danke Harald ...

    @Markus_P210:
    Es geht hier nicht um irgendwelche Kunstgriffe sondern um "zumindestens ansatzweise saubere Programmierung".
    Und was das angeht hast du da m.E. nicht getroffen - auch wenn es unter den genannten Einschränkungen vielleicht funktionieren würde (ich habe es nicht erwogen, das zu testen).
    Und einen "unbrauchbaren Ton" wirst du hier im Forum von mir noch nicht gelsen haben ...

    Gruß
    Larry

  9. Folgender Benutzer sagt Danke zu Larry Laffer für den nützlichen Beitrag:

    Corosop15 (12.01.2011)

Lesezeichen

Berechtigungen

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