Skip to main content
Question Protected by CommunityBot
edited tags
Link
user31481
user31481
#include <U8g2lib.h>
#include <SPI.h>

//Définition de tous lesPin portsdefinitions:

const int control_PWM = A3; //La sortie PWM versoutput lefor registrethe àdelay décalage

const int btn_1 = 1; //Le bouton pourButton lefor mode 1
const int btn_2 = 4; //Le bouton pourButton lefor mode 2
const int btn_3 = 5; //Le bouton pourButton lefor mode 3

const int r_A = 2; //Le data ARotary duencoder codeurA's rotatifdata
const int r_B = 3; //Le data BRotary duencoder codeurA's rotatifdata
const int r_SW = 0; //Le boutonRotary duencoder's codeurbutton rotatifdata

const int oled_CLK = 9; //L'horloge SPI de l'écrancloack
const int oled_MOSI = 8; //Le data SPI deMOSI l'écranpin
const int oled_CS = 7; //Le CS SPIChip deSelect l'écranpin
const int oled_DC = 6; //LeOLED's D/C SPI de l'écranpin
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 aDistance distancecontrol
int value_selection = 1; //Séléction actuelle de la valeur 1, 2,Actual ouvalue 3selectrion
int value1 = 0; //ROUGEred enin mode 1; TEINTEtint enin mode 2
int value2 = 0; //VERT//green enin mode 1; SATURATIONsaturation enin mode 2
int value3 = 0; //BLEUblue enin mode 1; LUMINOSITÉluminosity enin mode 2;2

volatile unsigned int encoderPos = 0;  // la positionrotary actuelleencoder's decurrent l'encodeurposition
unsigned int lastReportedPos = 1;   // la positionrotary précédenteencoder's deprevious l'encodeurposition
static boolean rotating=false;      // gestion de l'anti-rebonds (est ceis quethe l'encodeurencoder estactivity actif?)status

// variables pour les routinesinterrupter d'interruptionvariables
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:

}
#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:

}
#include <U8g2lib.h>
#include <SPI.h>

//Pin definitions:

const int control_PWM = A3; //PWM output for the delay 

const int btn_1 = 1; //Button for mode 1
const int btn_2 = 4; //Button for mode 2
const int btn_3 = 5; //Button for mode 3

const int r_A = 2; //Rotary encoder A's data
const int r_B = 3; //Rotary encoder A's data
const int r_SW = 0; //Rotary encoder's button data

const int oled_CLK = 9; //SPI cloack
const int oled_MOSI = 8; //MOSI pin
const int oled_CS = 7; //Chip Select pin
const int oled_DC = 6; //OLED's D/C pin
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: Distance control
int value_selection = 1; //Actual value selectrion
int value1 = 0; //red in mode 1; tint in mode 2
int value2 = 0; ////green in mode 1; saturation in mode 2
int value3 = 0; //blue in mode 1; luminosity in mode 2

volatile unsigned int encoderPos = 0;  // rotary encoder's current position
unsigned int lastReportedPos = 1;   // rotary encoder's previous position
static boolean rotating=false;      // is the encoder activity status

// interrupter variables
boolean A_set = false;              
boolean B_set = false;
boolean A_change = false;
boolean B_change= false;
void setup() {

}

void loop() {
}
Source Link
user2950509
  • 183
  • 1
  • 1
  • 6

"stray '/302' in program error" when compiling

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:

}