Hey,
ich habe da mal eine Frage.. und zwar habe ich einen FC erzeugt, um div. Motorenzustaende in einer Visualisierung darzustellen. Das habe ich mit dem Schiebebefehl SLW probiert.
Als Eingang fuer den FC gebe ich im Programm eine fest vergebene Motorennummer an (Motornummer fuers Word 0-3), sodass ich in der Visualisierung später die einzelnen bits anspreche.
Bsp. bei einer Stoerung vom Motor "0"(Stoerbit ist das 4. bit): SOLL DB10.dbw2 = 0000 0000 0000 1000; IST: 0000 1000 0000 0000
Habe die Verschiebezahl errechnet:
L #Mot_nr_Word
L 4
*I
T #Temp
und dann mit der Verschiebezahl verschoben
L #Temp
L MW 140 (von dem MW werden einzelne Bits vorher belegt )
SLW
T #AusgabeWord
Also das Problem ist, dass es halt um ein Byte verschoben ist.
Habe es jetzt anders geloest aber wollte mal fragen, weshalb das so ist. Hat das mit dem AKKU1 und 2 zu tun ?
Vielen Dank im voraus für die Antwort!;)
ich habe da mal eine Frage.. und zwar habe ich einen FC erzeugt, um div. Motorenzustaende in einer Visualisierung darzustellen. Das habe ich mit dem Schiebebefehl SLW probiert.
Als Eingang fuer den FC gebe ich im Programm eine fest vergebene Motorennummer an (Motornummer fuers Word 0-3), sodass ich in der Visualisierung später die einzelnen bits anspreche.
Bsp. bei einer Stoerung vom Motor "0"(Stoerbit ist das 4. bit): SOLL DB10.dbw2 = 0000 0000 0000 1000; IST: 0000 1000 0000 0000
Habe die Verschiebezahl errechnet:
L #Mot_nr_Word
L 4
*I
T #Temp
und dann mit der Verschiebezahl verschoben
L #Temp
L MW 140 (von dem MW werden einzelne Bits vorher belegt )
SLW
T #AusgabeWord
Also das Problem ist, dass es halt um ein Byte verschoben ist.
Habe es jetzt anders geloest aber wollte mal fragen, weshalb das so ist. Hat das mit dem AKKU1 und 2 zu tun ?
Vielen Dank im voraus für die Antwort!;)