Aus irgendeinem seltsamen Grund wird der folgende Code nicht kompiliert. Ich erhalte den Fehler "Streuner '\ 302' im Programm" um volatile unsigned int encoderPos = 0;
, und ich habe keine Ahnung, was das Problem ist. Ich habe über 40 Minuten lang versucht, dies herauszufinden, und nichts funktioniert. Es macht keinen Sinn
#include <U8g2lib.h> # include <SPI.h> // Pin-Definitionen: const int control_PWM = A3; // PWM-Ausgang für die Verzögerung const int btn_1 = 1; // Schaltfläche für Modus 1const int btn_2 = 4; // Schaltfläche für Modus 2const int btn_3 = 5; // Schaltfläche für Modus 3const int r_A = 2; // Datenkonstante des Drehgebers A int r_B = 3; // Datenkonstante des Drehgebers A int r_SW = 0; // Taste des Drehgebers dataconst int oled_CLK = 9; // SPI cloackconst int oled_MOSI = 8; // MOSI pinconst int oled_CS = 7; // Chip Select pinconst int oled_DC = 6; // OLEDs D / C-PinU8G2_SH1106_128X64_NONAME_F_4W_HW_SPI u8g2 (U8G2_R0, / * cs = * / 10, / * dc = * / 9, / * reset = * / 8); int mode = 1; // 1: RGB, 2: HSL, 3: Distanzkontrolleint value_selection = 1; // Istwert selectintionint value1 = 0; // rot in Modus 1; Farbton im Modus 2int Wert2 = 0; //// grün in Modus 1; Sättigung im Modus 2int Wert3 = 0; // blau in Modus 1; Leuchtkraft im Modus 2 volatile unsigned int encoderPos = 0; // aktuelle Position des Drehgebers nicht signiert int lastReportedPos = 1; // vorherige Position des Drehgebers statisch boolesch rotierend = false; // ist der Encoder-Aktivitätsstatus // Unterbrechervariablenboolean A_set = false; boolean B_set = false; boolean A_change = false; boolean B_change = false; void setup () {} void loop () {}