- 12V Akku mit 280 Ah bauen         
Ergebnis 1 bis 8 von 8

Thema: Was macht dieser Befehl: digitalWrite(ziffer[0][j], (segmente[i][j]==1)?HIGH:LOW);

Baum-Darstellung

Vorheriger Beitrag Vorheriger Beitrag   Nächster Beitrag Nächster Beitrag
  1. #4
    Erfahrener Benutzer Roboter Genie Avatar von HeXPloreR
    Registriert seit
    08.07.2008
    Ort
    Soltau - Niedersachsen
    Alter
    46
    Beiträge
    1.369
    Hallo Marco,

    dass das Programm sehr weit nach oben springt sollte klar sein, da die Sub-Funktion "pinAnazeige" hier nunmal endet, zurück in die loop geht, die dann endet und von neuem beginnt.

    Warum die letzten drei prints nicht ausgegeben werden wenn das "error" kommt, kann ich nicht sehen. Hier befindet man sich ja schon in der if-Anweisung die das print "error" enthält.
    Das "Error" selbst hat innerhalb dieses Strings hier jedenfalls nichts damit zu tun und kann nicht irgendwie aktiv werden. Es sei den der String wird noch irgendwie irgendwo ausgewertet - sieht aber nicht danach aus.

    Versuche mal den Inhalt vom ersten (fehlendem) print manuell in einen definitven String zu ändern (z.B. Serial.print("Ziffer 0"); ). Wenn der dann nach dem "error" auch kommt dann tippe ich darauf das der Inhalt von print jetzt noch fehlerhaft ist. Print scheint gar keinen Inhalt zu haben. Was ja nicht sein kann wenn alle Prints davor in der gleichen Form "print(digitalread ... )" funktionieren. Warum sehe ich aber nicht.

    Viele Grüße
    Jörg

    Edit1:
    Unglücklich finde ich immer so Bedingungen wie z.B. " >=7 " zu wählen wenn man auf eine Zahl prüft ob sie größer als 6 ist. Da würde ich persönlich immer direkt " >6 " bevorzugen, weil man hier direkt sehen kann worum es geht, nämlich um einen Test auf "größer als 6". Die 7 kommt zwar nach 6, ist aber im Bezug auf die Prüfung bei Ganzzahlen nicht relevant.
    Das gleiche sinngemäß umgekehrt für die for-Schleifen z.B. bei "(..., j <=10 , ... )".

    Edit2:
    Um die "if 's" alles zusammenzufassen würde ich Dir ncht empfehlen den Operator ?: zu benutzen. Wie Du selbst gesehen hast erzeugt er eher Verwirung, bei der großangelegten Verwendung in Blöcken ist diese umso größer.
    Daher schaue Dir dazu lieber ein "switch-case" Konstrukt an.
    Geändert von HeXPloreR (01.04.2015 um 05:36 Uhr)

Ähnliche Themen

  1. Verständnisfrage: HIGH/LOW?
    Von BurningWave im Forum Elektronik
    Antworten: 5
    Letzter Beitrag: 16.04.2008, 18:34
  2. was bewirkt dieser bascom befehl?
    Von alper im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 18.04.2007, 20:07
  3. High und Low
    Von keha im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 3
    Letzter Beitrag: 11.04.2007, 10:49
  4. High Low simulieren?
    Von JojoKoester im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 1
    Letzter Beitrag: 23.07.2006, 17:43
  5. i2c low-byte high-byre
    Von rille im Forum Basic-Programmierung (Bascom-Compiler)
    Antworten: 2
    Letzter Beitrag: 08.11.2005, 14:56

Berechtigungen

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

fchao-Sinus-Wechselrichter AliExpress