Arduino SSD1306 und Buttons

    • Official Post

    Hallo zusammen, ich sitze schon viel zu lange vor nem Problem, welches eigentlich keins sein sollte. An nem Arduino Uno hängt ein 0,96" SSD1306 Display (und 6 Fußschalter). Der Example Sketch funktioniert tadellos. Nun wollt ich, leichtgläubig wie ich bin, auf diesem auch was ausgeben lassen. ich scheiter schon an nem simplem Text per Knopfdruck. Es scheint, als wenn das Display nur angesprochen werden kann, wenn die Aufrufe dafür im setup() Teil erfolgen. Der Punkt aus Zeile 40 wird jedenfalls angezeigt. Wenn ich die Zeilen 50-56 in den Setup Bereich hoch hole, funktioniert das auch.


    Wie kriege ich es hin, auf Knopfdruck einen Text anzeigen zu lassen?


  • dbv

    Approved the thread.
  • Moin dbv,


    bist du sicher das die Funktion void button1_func(void) überhaupt erreicht wird?


    Füge doch eine "Debugzeile" ein. Serial.println("Bin all dor");


    73 de Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"

    Vielleicht trifft man sich in der RPi-Plauderecke.

    • Official Post

    Ja, die Funktion wird angesprochen. Das Midi-Signal kommt auch genau so an wie bestellt ;).

    hallo dbv,

    ich habe hier ein e-book zum SSD1306, vielleicht hilft das weiter. Am Raspberry hat das (in Python) gut geklappt. C habe ich damit nicht probiert.

    Muss ich mir mal in Ruhe anschauen.

  • Moin dbv,


    dann setz doch mal MIDI.sendControlChange(0,127,1); an das Ende der Funktion...


    73 de Bernd

    Ich habe KEINE Ahnung und davon GANZ VIEL!!
    Bei einer Lösung freue ich mich über ein ":thumbup:"

    Vielleicht trifft man sich in der RPi-Plauderecke.

  • Nur so eine Idee: Vielleicht möchte das Display selbst Interrupts verwenden (wäre naheliegend um Timing einzuhalten). Damit könntest Du einen Interrupt (Prioritäten) Konflikt haben.

    Vorschlag: Werde die Taste (oder eine Variable die vom Interrupt generiert wird) in Loop aus und steuere von dort aus das Display...

    ...wenn Software nicht so hard-ware ;) ...

    Freue mich über jeden like :thumbup:

    • Official Post

    Vorschlag: Werde die Taste (oder eine Variable die vom Interrupt generiert wird) in Loop aus und steuere von dort aus das Display...

    Das Klingt erstmal nachvollziehbar auch wenn es mir programmiertechnisch nicht gefällt (schreibfaul ;) ). Werde ich aber probieren.


    Edit: So hab ich probiert, aus dem loop heraus funktioniert es.