For some weird reason, the following code doesn't compile. I get a "stray '\302' in program" error around volatile unsigned int encoderPos = 0; , and I have no idea what the issue is. I've been trying to figure this out for over 40min, and nothing works. It doesn't make any sense 😭
#include <U8g2lib.h>
#include <SPI.h>
//Définition de tous les ports:
const int control_PWM = A3; //La sortie PWM vers le registre à décalage
const int btn_1 = 1; //Le bouton pour le mode 1
const int btn_2 = 4; //Le bouton pour le mode 2
const int btn_3 = 5; //Le bouton pour le mode 3
const int r_A = 2; //Le data A du codeur rotatif
const int r_B = 3; //Le data B du codeur rotatif
const int r_SW = 0; //Le bouton du codeur rotatif
const int oled_CLK = 9; //L'horloge SPI de l'écran
const int oled_MOSI = 8; //Le data SPI de l'écran
const int oled_CS = 7; //Le CS SPI de l'écran
const int oled_DC = 6; //Le D/C SPI de l'écran
U8G2_SH1106_128X64_NONAME_F_4W_HW_SPI u8g2(U8G2_R0, /* cs=*/ 10, /* dc=*/ 9, /* reset=*/ 8);
int mode = 1; //1: RGB, 2: HSL, 3: Contrôle a distance
int value_selection = 1; //Séléction actuelle de la valeur 1, 2, ou 3
int value1 = 0; //ROUGE en mode 1; TEINTE en mode 2
int value2 = 0; //VERT en mode 1; SATURATION en mode 2
int value3 = 0; //BLEU en mode 1; LUMINOSITÉ en mode 2;
volatile unsigned int encoderPos = 0; // la position actuelle de l'encodeur
unsigned int lastReportedPos = 1; // la position précédente de l'encodeur
static boolean rotating=false; // gestion de l'anti-rebonds (est ce que l'encodeur est actif?)
// variables pour les routines d'interruption
boolean A_set = false;
boolean B_set = false;
boolean A_change = false;
boolean B_change= false;
void setup() {
// put your setup code here, to run once:
}
void loop() {
// put your main code here, to run repeatedly:
}