Un clavier simple (pour déclencher des actions sur différents logiciels).
#include "HID-Project.h"
#include <Adafruit_NeoPixel.h>
#ifdef __AVR__
#include <avr/power.h>
#endif
int pinqt = 3;
const int buttonPin[] = {3, 4, 5, 6};
#define PIN 2 // PIN LED
#define NUMPIXELS 8
Adafruit_NeoPixel pixels(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
void setup() {
for (int i = 0; i <= pinqt; i++) {
pinMode(buttonPin[i], INPUT_PULLUP);
}
Keyboard.begin();
#if defined(__AVR_ATtiny85__) && (F_CPU == 16000000)
clock_prescale_set(clock_div_1);
#endif
pixels.begin();
bootled();
}//setup
void loop() {
if (!digitalRead(buttonPin[0])) {
Keyboard.write(KEY_F18);
anim1();
}
if (!digitalRead(buttonPin[1])) {
Keyboard.write(KEY_F19);
anim2();
}
if (!digitalRead(buttonPin[2])) {
Keyboard.write(KEY_F20);
anim3();
}
if (!digitalRead(buttonPin[3])) {
Keyboard.write(KEY_F21);
anim4();
}
}//loop
void bootled() {
for (int i = 0; i < 2; i++) {
for (int i = 0; i < NUMPIXELS; i++) {
pixels.clear();
pixels.setPixelColor(i, pixels.Color(100, 100, 100));
pixels.show();
delay(50);
}
for (int i = 0; i < NUMPIXELS; i++) {
pixels.clear();
pixels.setPixelColor((NUMPIXELS - 1) - i, pixels.Color(100, 100, 100));
pixels.show();
delay(50);
}
}
pixels.clear();
pixels.show();
}//bootled
void anim1() {
pixels.clear();
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(0, 255, 0));
}
pixels.show();
delay(80);
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor((NUMPIXELS - 1) - i, pixels.Color(0, 0, 0));
pixels.show();
delay(50);
}
delay(50);
}
void anim2() {
pixels.clear();
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(255, 0, 0));
}
pixels.show();
delay(80);
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(0, 0, 0));
pixels.show();
delay(50);
}
delay(50);
}
void anim3() {
pixels.clear();
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
}
pixels.show();
delay(80);
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(0, 0, 0));
pixels.show();
delay(50);
}
delay(50);
}
void anim4() {
pixels.clear();
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor(i, pixels.Color(0, 0, 255));
}
pixels.show();
delay(80);
for (int i = 0; i < NUMPIXELS; i++) {
pixels.setPixelColor((NUMPIXELS - 1) - i, pixels.Color(0, 0, 0));
pixels.show();
delay(50);
}
delay(50);
}


