-
        

Ergebnis 1 bis 8 von 8

Thema: mehrere and zusammenfassen?

  1. #1
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.07.2006
    Alter
    87
    Beiträge
    627

    mehrere and zusammenfassen?

    Anzeige

    Hallo,
    kann ich irgendwie die and´s kürzer schreiben?
    ich habe sonst 10 mal and hintereinander....



    '----------------
    If Taster1 > 0 And Taster2 > 0 And Taster3 > 0 And Taster4 > 0 Then
    Taster = 0
    End If
    '----------------

    Tobias
    ...

  2. #2
    Erfahrener Benutzer Roboter-Spezialist
    Registriert seit
    17.09.2005
    Beiträge
    276
    Ja das geht
    In der Art ,sind alle Taster auch Null *Grins*

    Ein wenig nachdenken sollst Du schon selbst dazu.

    lg
    Gento

  3. #3
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.07.2006
    Alter
    87
    Beiträge
    627
    Hey Gento
    ich dachte schon das du mir zumindes einen Tipp geben könntest in welcher Richtung ich suchen muss.

    geht vielleicht:

    if taster1 to taster10 = 0 then
    'machen
    end if
    ???

    Tobias
    ...

  4. #4
    Erfahrener Benutzer Fleißiges Mitglied
    Registriert seit
    04.11.2007
    Beiträge
    100
    man kann nullen auch addieren ^^

    edit: zugegeben.. viel kürzer wird es dann auch nicht:
    if taster1+taster2+taster3+taster4+taster5+taster6... +taster10=0 then

  5. #5
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112

    Re: mehrere and zusammenfassen?

    Zitat Zitat von TobiasBlome
    If Taster1 > 0 And Taster2 > 0 And Taster3 > 0 And Taster4 > 0 Then
    Taster1 klingt nach Pinx.y.
    Wenn du sie an einem gemeinsamen Port hängen hast, kannst du natürlich auch
    If PinX = &B11111111 Then
    schreiben.

    Oder auch

    Taster=PinX Or &B11111000 'die Taster sind an Pinx.0, Pinx.1 und Pinx.2
    If Taster = &B11111111 Then

    Gruß

    Rolf

  6. #6
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.07.2006
    Alter
    87
    Beiträge
    627
    Hallo _werwurm_

    tolle Idee! da bin ich noch nicht drauf gekomen. aber du hast recht es wird nicht viel kürzer (weiß natürlich nicht wie das mit der µC Bearbeitungszeit ist???)

    @for_ro
    Das sind Taster
    aber 2 Ports:
    PB1-5 PC1-5 -> also 10 Taster

    PC0 ist z.B. ein Ausgang und bei PB1 hängt noch ein anderer Schalter. Kann man auch so einen Pin ignorieren?

    Abgesehen das deine Version natürlich viel übersichtlicher ist: Kann man damit µC Rechenzeit sparen?

    Vielen Dank für eure Antworten,
    Gruß, Tobias
    ...

  7. #7
    Erfahrener Benutzer Roboter Genie
    Registriert seit
    16.02.2006
    Beiträge
    1.112
    Zitat Zitat von TobiasBlome
    PB1-5 PC1-5 -> also 10 Taster
    Na dann mach es doch so wie oben beschrieben

    TasterB=PinB And &B00111110 'oder And 62 oder And &H3E
    TasterC=PinC And &B00111110

    If TasterB=62 and TasterC=62 Then ...

    Zitat Zitat von TobiasBlome
    Abgesehen das deine Version natürlich viel übersichtlicher ist: Kann man damit µC Rechenzeit sparen?
    Ein einzelnes Bit abfragen ist immer aufwändiger als ein ganzes Byte.
    Im Simulator kannst du sehen, dass
    If Pinb.1=1 Then 14 Zyklen braucht, während
    IF Pinb =62 Then nur 7 Zyklen benötigt.

    Gruß

    Rolf

  8. #8
    Erfahrener Benutzer Roboter Experte
    Registriert seit
    06.07.2006
    Alter
    87
    Beiträge
    627
    besten Dank! das spart ja ganz ganz viele Zyklen!!!
    ...

Berechtigungen

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