HAllo Alle, habe mir für ein UNO ein OLED gekauft, mit welchem ich mich seit Tagen rumärger...Die Libraries von Adafruit funktionieren - die schöne Animation von denen auch- schön schön. Beim selber coden kriege ich immer folgenden Fehlercode: missing binary operator before token "#" bezogen auf folgende Zeile: #if (SSD1306_LCDHEIGHT != 64) #error("Height incorrect, please fix Adafruit_SSD1306.h!"); //Standard Bug überschreiben Wer weiß Rat? Gruß T
Bitte C Buch aufschlagen. Bereich Präprozessor... Und mal kundig machen, wieviele Präprozessorstatements pro Zeile notiert werden dürfen.
Thomas H. schrieb: > OLED Was für eines? 128 * 32 128 * 64 96 * 16 Je nachdem musst Du in der Adafruit_SSD1306.h das Define anpassen
1 | -----------------------------------------------------------------------*/ |
2 | // #define SSD1306_128_64
|
3 | #define SSD1306_128_32
|
4 | // #define SSD1306_96_16
|
5 | /*=========================================================================*/
|
steht per Default auf 128 * 32 Dein Beispiel erfordert ein 128 * 64 OLED ... und fragt das auch ab.
Thomas H. schrieb: > Beim selber coden kriege ich immer folgenden Fehlercode: > missing binary operator before token "#" 1) Wie sollen wir wissen welcher Token gemeint ist wenn zwei # dastehen? 2) Zeige den ganze Code 3) Beachte die Anweisungen zum Posten von Code (Formatierung (mehr Informationen...)
1 | C-Code |
1 | AVR-Assembler-Code |
1 | Code in anderen Sprachen, ASCII-Zeichnungen |
..........)
Codeverstehversucher schrieb: > 1) Wie sollen wir wissen welcher Token gemeint ist wenn > zwei # dastehen? Hää .... Wenn ich das wissen kann, dann kann das auch jeder andere in Erfahrung bringen. Da ist keine Geheiminformation... alles gut dokumentiert...
hier isser: #include <Wire.h> // Wire Bibliothek hochladen #include <SPI.h> // SPI Bibliothek hochladen(I²C Bus) #include <Adafruit_GFX.h> // Adafruit Firm Lib hochladen #include <Adafruit_SSD1306.h> // Adafruit Firmen Bibliothek hochladen #define OLED_RESET 4 Adafruit_SSD1306 display(OLED_RESET); #if (SSD1306_LCDHEIGHT != 64) error("Height incorrect, please fix Adafruit_SSD1306.h!"); //Standard Bug überschreiben int messwert =0; void setup() { // put your setup code here, to run once: Serial.begin(9600); // by default, we'll generate the high voltage from the 3.3v line internally! (neat!) display.begin(SSD1306_SWITCHCAPVCC, 0x3C); // initialize with the I2C addr 0x3D (for the 128x64) // Bus Adresse initialisiern } void loop() { messwert=analogRead(A0); // Der Messwert vom Analogen Eingang A0 soll ausgelesen, und unter der Variablen „messwert“ gespeichert werden. display.setCursor(0,0); // In der ersten Zeile soll der Text „Messwert:“ angezeigt werden. display.print("Messwert:"); delay(500); } display.setCursor(0,1); // In der zweiten Zeile soll der Messwert, der vom Feuchtigkeitssensor bestimmt wurde, angezeigt werden. display.print(messwert);
Thomas H. schrieb: > hier isser: Kannst nicht lesen? Beratungsresistent? Dein Computer verschluckt ganze Textbereiche? Codeverstehversucher schrieb: > 3) Beachte die Anweisungen zum Posten von Code
Thomas H. schrieb: > hier isser: Es wäre schon praktisch, wenn Du verwendete Teile aus dem Beispielcode https://github.com/adafruit/Adafruit_SSD1306/blob/master/examples/ssd1306_128x64_i2c/ssd1306_128x64_i2c.ino korrekt übernehmen würdest
1 | #if (SSD1306_LCDHEIGHT != 64)
|
2 | #error("Height incorrect, please fix Adafruit_SSD1306.h!");
|
3 | #endif
|
und nicht verstümmelst
1 | #if (SSD1306_LCDHEIGHT != 64) error("Height incorrect, please fix
|
2 | Adafruit_SSD1306.h!"); //Standard Bug überschreiben |
Thomas H. schrieb: > hier isser: Und, warum hast du dich noch nicht kundig gemacht, wie so eine #if - #error Kombination auszusehen hat?
... und tue allen (auch Dir) einen Gefallen und nutze "Werkzeuge" -> "Automatische Formatierung" BEVOR Du hier Code (-Fragmente) einstellst
@jim_quakenbush , yeahh das war hilfreich...jetzt habe ich weitere Aufgaben, ;-) war mein erster post hier, man möge mir verzeihen, für meine Fehler. Oder andere können auch gerne in Ihrer bornierten Hölle bleiben, unglaublich...
Diese Anmache und Überheblichkeit ist manchmal nicht zu ertragen. Sind vielleicht im waren Leben rechte Duckmäuser. ;--)))
Klappt es denn jetzt mit dem richtigen "#define SSD1306_…" oder mit welchem Define funktioniert "die schöne Animation von denen"^^?
Thomas H. schrieb: > ;-) war mein erster post hier, man möge mir verzeihen, für meine Fehler. > Oder andere können auch gerne in Ihrer bornierten Hölle bleiben, > unglaublich... Mit dem Ton wirst du hier nicht weiter kommen :-(
Wolfgang A. schrieb: > Thomas H. schrieb: > ;-) war mein erster post hier, man möge mir verzeihen, für meine Fehler. > Oder andere können auch gerne in Ihrer bornierten Hölle bleiben, > unglaublich... > > Mit dem Ton wirst du hier nicht weiter kommen :-( Meine Güte. Der TE stellt eine Frage und man hat nichts besseres zu tun als in höchst aroganter Form Ihn auf Literatur bzw. Formatierungsfehler anzupöbeln. Wenn er hunderte Bücher lesen wollte wäre er sicher in eine Buchhandlung und nicht in ein Forum gegangen. Gibt es hier fast nur noch bürokratische Authisten oder werden hier von vielen einfach nur User auf Formatierungsfehler und dergleichen hingewiesen weil man zum eigentlichen Problem mangels eigenen Wissen nichts sinnvolleres posten kann?
Klappt es denn jetzt mit dem richtigen "#define SSD1306_…" oder mit welchem Define funktioniert "die schöne Animation von denen"^^? :Nee, leider nicht, ich habe mal die adafruit datei hinzugefügt, daraus nen lauffähigen Code zu schnitzen ..
Und was ist der Fehlercode dazu? Ich kenn mich ja nun mit dem Arduino Quark nicht aus, aber die Main ist doch leer?! Wird da diese Setup automatisch ausgeführt???
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.