Hallo zusammen!
Ich bastel mir gerade mit meine Raspberry Pi und einem Arduino ein Webradio nach der Anleitung...
Der Verfasser hat den Code für den Encoder auch online gestellt, jedoch bekomme ich beim verifizieren immer wieder die Meldung, dass die Bibliothek "keyboard.h" fehlen würde.....
Der Code ist Folgender:
#include <Keyboard.h>
#include <ClickEncoder.h>
#include <TimerOne.h>
ClickEncoder *encoder01;
ClickEncoder *encoder02;
int16_t last01, value01;
int16_t last02, value02;
void timerIsr01()
{
encoder01->service();
encoder02->service();
}
void setup()
{
Serial.begin(9600);
encoder01 = new ClickEncoder(A1, A0, A2, 4); // Encoder Pin an A0 und A1, Button Pin an A2; Restlichen Pins direkt an GND ### 4 = stepsPerNotch
encoder02 = new ClickEncoder(A4, A3, A5, 4); // Encoder Pin an A3 und A4, Button Pin an A5; Restlichen Pins direkt an GND ### 4 = stepsPerNotch
Timer1.initialize(1000);
Timer1.attachInterrupt(timerIsr01);
last01 = -1;
last02 = -1;
}
void loop() {
value01 += encoder01->getValue();
if (value01 != last01) {
if (value01 < last01) {
Keyboard.press(KEY_UP_ARROW);
delay(100);
Keyboard.releaseAll();
}
if (value01 > last01) {
Keyboard.press(KEY_DOWN_ARROW);
delay(100);
Keyboard.releaseAll();
}
last01 = value01;
}
ClickEncoder::Button b = encoder01->getButton();
if (b != ClickEncoder::Open) {
switch (b) {
case ClickEncoder::Pressed:
Serial.print("01: Pressed \n");
break;
case ClickEncoder::Held:
Serial.print("01: Held \n");
break;
case ClickEncoder::Released:
Serial.print("01: Released \n");
break;
case ClickEncoder::Clicked:
Keyboard.press(KEY_RETURN);
delay(100);
Keyboard.releaseAll();
break;
case ClickEncoder::DoubleClicked:
Keyboard.press(KEY_BACKSPACE);
delay(100);
Keyboard.releaseAll();
break;
}
}
// E N C O D E R 2
value02 += encoder02->getValue();
if (value02 != last02) {
if (value02 < last02) {
Keyboard.press(KEY_F9); // Lautstaerke - (Keyboard.xml anpassen)
//delay(100);
Keyboard.releaseAll();
}
if (value02 > last02) {
Keyboard.press(KEY_F10); // Lautstaerke + (Keyboard.xml anpassen)
//delay(100);
Keyboard.releaseAll();
}
last02 = value02;
}
ClickEncoder::Button c = encoder02->getButton();
if (c != ClickEncoder::Open) {
switch (c) {
case ClickEncoder::Pressed:
Serial.print("02: Pressed \n");
break;
case ClickEncoder::Held:
Serial.print("02: Held \n");
break;
case ClickEncoder::Released:
Serial.print("02: Released \n");
break;
case ClickEncoder::Clicked:
Keyboard.press(120); // Taste x - Kodi: Stop
delay(100);
Keyboard.releaseAll();
break;
case ClickEncoder::DoubleClicked:
Serial.print("02: DoubleClicked \n");
break;
}
}
}
//. . -32-
//.!. -33-
//.Ä. -34-
//.§. -35-
//.$. -36-
//.%. -37-
//./. -38-
//.ä. -39-
//.). -40-
//.=. -41-
//.(. -42-
//.`. -43-
//.,. -44-
//.ß. -45-
//... -46-
//.-. -47-
//.0. -48-
//.1. -49-
//.2. -50-
//.3. -51-
//.4. -52-
//.5. -53-
//.6. -54-
//.7. -55-
//.8. -56-
//.9. -57-
//.Ö. -58-
//.ö. -59-
//.;. -60-
//.´. -61-
//.:. -62-
//._. -63-
//.". -64-
//.A. -65-
//.B. -66-
//.C. -67-
//.D. -68-
//.E. -69-
//.F. -70-
//.G. -71-
//.H. -72-
//.I. -73-
//.J. -74-
//.K. -75-
//.L. -76-
//.M. -77-
//.N. -78-
//.O. -79-
//.P. -80-
//.Q. -81-
//.R. -82-
//.S. -83-
//.T. -84-
//.U. -85-
//.V. -86-
//.W. -87-
//.X. -88-
//.Z. -89-
//.Y. -90-
//.ü. -91-
//.#. -92-
//.+. -93-
//.&. -94-
//.?. -95-
//.^. -96-
//.a. -97-
//.b. -98-
//.c. -99-
//.d. -100-
//.e. -101-
//.f. -102-
//.g. -103-
//.h. -104-
//.i. -105-
//.j. -106-
//.k. -107-
//.l. -108-
//.m. -109-
//.n. -110-
//.o. -111-
//.p. -112-
//.q. -113-
//.r. -114-
//.s. -115-
//.t. -116-
//.u. -117-
//.v. -118-
//.w. -119-
//.x. -120-
//.z. -121-
//.y. -122-
//.Ü. -123-
//.'. -124-
//.*. -125-
//.°. -126-
//.a. -140-
//.b. -141-
//.c. -142-
//.d. -143-
//.e. -144-
//.f. -145-
//.g. -146-
//.h. -147-
//.i. -148-
//.j. -149-
//.k. -150-
//.l. -151-
//.m. -152-
//.n. -153-
//.o. -154-
//.p. -155-
//.q. -156-
//.r. -157-
//.s. -158-
//.t. -159-
//.u. -160-
//.v. -161-
//.w. -162-
//.x. -163-
//.z. -164-
//.y. -165-
//.1. -166-
//.2. -167-
//.3. -168-
//.4. -169-
//.5. -170-
//.6. -171-
//.7. -172-
//.8. -173-
//.9. -174-
//.0. -175-
//. . -180-
//.ß. -181-
//.´. -182-
//.ü. -183-
//.+. -184-
//.#. -185-
//.#. -186-
//.ö. -187-
//.ä. -188-
//.^. -189-
//.,. -190-
//... -191-
//.-. -192-
Ich hoffe, ihr könnt mir sagen, was ich da noch zu tun habe?
Viele Dank und viele Grüße,
Maze-M