Big Dome Box
Jump to navigation
Jump to search
Matériel
- Big Dome Push Button
- MDF 5 mm / Contreplaqué 5 mm
- Arduino Leonardo
Design
Logiciel
Emergency Logout
http://www.arduino.cc/en/Tutorial/KeyboardLogout
Spacebar for presentation, movie pause&resume, ...
const int domeButton = 12;
const int domeLed = 13;
boolean flag=false;
void setup() {
pinMode(domeLed, OUTPUT);
pinMode(domeButton, INPUT_PULLUP);
Keyboard.begin();
}
void loop() {
if (!flag && digitalRead(domeButton) == HIGH) {
digitalWrite(domeLed, HIGH);
Keyboard.print(" ");
delay(100);
Keyboard.releaseAll();
flag=true;
}
if (flag && digitalRead(domeButton) == LOW) {
digitalWrite(domeLed, LOW);
delay(100);
Keyboard.releaseAll();
flag=false;
}
}
for Reveal.js
const int domeButton = 12;
const int domeLed = 13;
boolean flag=false;
unsigned long time;
void setup() {
pinMode(domeLed, OUTPUT);
pinMode(domeButton, INPUT_PULLUP);
Keyboard.begin();
}
void loop() {
if (!flag && digitalRead(domeButton) == HIGH) {
digitalWrite(domeLed, HIGH);
time = millis();
delay(100);
Keyboard.releaseAll();
flag=true;
}
if (flag && digitalRead(domeButton) == LOW) {
digitalWrite(domeLed, LOW);
unsigned long delta = millis()-time;
if(delta<500) {
Keyboard.press(0x20); // SPACE
} else if(delta<1500) {
Keyboard.press(KEY_LEFT_ARROW); // or KEY_BACKSPACE
} else {
Keyboard.press(KEY_ESC); // for bird view with Reveal.js
}
delay(100);
Keyboard.releaseAll();
flag=false;
}
}