Added HID and Midi examples
This commit is contained in:
parent
ff15d4815a
commit
c53a418700
|
@ -0,0 +1,16 @@
|
|||
byte lPin = 33;
|
||||
|
||||
void setup() {
|
||||
pinMode(lPin, OUTPUT);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
delay(1500);
|
||||
Joystick.X(1000);
|
||||
delay(1500);
|
||||
Joystick.Y(1000);
|
||||
delay(1500);
|
||||
Joystick.X(0);
|
||||
delay(1500);
|
||||
Joystick.Y(0);
|
||||
}
|
|
@ -0,0 +1,34 @@
|
|||
#include <usb_hid_device.h>
|
||||
|
||||
#define lPin 33
|
||||
#define bPin 32
|
||||
#define BUTTON_DEBOUNCE_DELAY 1
|
||||
|
||||
int i=1, li=0;
|
||||
|
||||
void setup() {
|
||||
pinMode(lPin, OUTPUT);
|
||||
HID.begin();
|
||||
}
|
||||
|
||||
void loop() {
|
||||
bool pressed = isButtonPressed();
|
||||
if(pressed){
|
||||
Joystick.button(i,1);
|
||||
li=i;
|
||||
}else{
|
||||
Joystick.button(i,0);
|
||||
if(li==i)i++;
|
||||
i=(i>32)?1:i;
|
||||
}
|
||||
}
|
||||
|
||||
bool isButtonPressed() {
|
||||
if (digitalRead(bPin) == HIGH) {
|
||||
delay(BUTTON_DEBOUNCE_DELAY);
|
||||
if (digitalRead(bPin) == HIGH)
|
||||
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
|
@ -0,0 +1,31 @@
|
|||
#define bPin 32
|
||||
#define lPin 33
|
||||
#define BUTTON_DEBOUNCE_DELAY 1
|
||||
|
||||
bool isButtonPressed();
|
||||
|
||||
void setup() {
|
||||
|
||||
pinMode(lPin, OUTPUT);
|
||||
pinMode(bPin, INPUT);
|
||||
}
|
||||
|
||||
void loop() {
|
||||
//delay(1000);
|
||||
if(isButtonPressed()){
|
||||
Keyboard.write(KEY_LEFT_GUI);
|
||||
//Keyboard.print("Hello World !!!\n");
|
||||
}
|
||||
}
|
||||
|
||||
bool isButtonPressed() {
|
||||
if (digitalRead(bPin) == HIGH) {
|
||||
delay(BUTTON_DEBOUNCE_DELAY);
|
||||
while (digitalRead(bPin) == HIGH)
|
||||
;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
|
|
@ -0,0 +1,32 @@
|
|||
#define lPin 33
|
||||
#define bPin 32
|
||||
#define BUTTON_DEBOUNCE_DELAY 1
|
||||
#define inc 32
|
||||
|
||||
bool isButtonPressed();
|
||||
|
||||
void setup() {
|
||||
|
||||
pinMode(lPin, OUTPUT);
|
||||
|
||||
}
|
||||
|
||||
void loop() {
|
||||
|
||||
if(isButtonPressed()){
|
||||
//Mouse.click(MOUSE_RIGHT);
|
||||
//Mouse.click(MOUSE_LEFT);
|
||||
Mouse.move(inc, inc, -5);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
bool isButtonPressed() {
|
||||
if (digitalRead(bPin) == HIGH) {
|
||||
delay(BUTTON_DEBOUNCE_DELAY);
|
||||
while (digitalRead(bPin) == HIGH)
|
||||
;
|
||||
return true;
|
||||
}
|
||||
return false;
|
||||
}
|
|
@ -0,0 +1,55 @@
|
|||
// ACHTUNG:
|
||||
// für Midi Eingang die voids von usb_midi.cpp übernehmen -> siehe unten (sind auskommentiert im cpp file)
|
||||
//#include <usb_midi.h>
|
||||
#define ledpiny 33
|
||||
boolean flip=0;
|
||||
long sendtimer=millis();
|
||||
void setup() {
|
||||
pinMode(ledpiny, OUTPUT);
|
||||
//MidiUSB.begin();
|
||||
}
|
||||
|
||||
void loop() {
|
||||
// digitalWrite(ledpiny, MidiUSB.isConnected() );
|
||||
/*
|
||||
void sendNoteOff(unsigned int channel, unsigned int note, unsigned int velocity);
|
||||
void sendNoteOn(unsigned int channel, unsigned int note, unsigned int velocity);
|
||||
*/
|
||||
if (millis()-sendtimer>=500)
|
||||
{
|
||||
if (flip==0)
|
||||
MidiUSB.sendNoteOn(1, 64, 127);
|
||||
else
|
||||
MidiUSB.sendNoteOff(1, 64, 0);
|
||||
flip=!flip;
|
||||
sendtimer=millis();
|
||||
|
||||
}
|
||||
MidiUSB.poll();
|
||||
}
|
||||
void USBMidi::handleNoteOff(unsigned int channel, unsigned int note, unsigned int velocity) {
|
||||
digitalWrite(ledpiny,0);
|
||||
}
|
||||
|
||||
|
||||
void USBMidi::handleNoteOn(unsigned int channel, unsigned int note, unsigned int velocity) {
|
||||
if (velocity>=0)
|
||||
digitalWrite(ledpiny,1);
|
||||
}
|
||||
|
||||
|
||||
|
||||
void USBMidi::handleVelocityChange(unsigned int channel, unsigned int note, unsigned int velocity) {}
|
||||
void USBMidi::handleControlChange(unsigned int channel, unsigned int controller, unsigned int value) {}
|
||||
void USBMidi::handleProgramChange(unsigned int channel, unsigned int program) {}
|
||||
void USBMidi::handleAfterTouch(unsigned int channel, unsigned int velocity) {}
|
||||
void USBMidi::handlePitchChange(unsigned int pitch) {}
|
||||
void USBMidi::handleSongPosition(unsigned int position) {}
|
||||
void USBMidi::handleSongSelect(unsigned int song) {}
|
||||
void USBMidi::handleTuneRequest(void) {}
|
||||
void USBMidi::handleSync(void) {}
|
||||
void USBMidi::handleStart(void) {}
|
||||
void USBMidi::handleContinue(void) {}
|
||||
void USBMidi::handleStop(void) {}
|
||||
void USBMidi::handleActiveSense(void) {}
|
||||
void USBMidi::handleReset(void) {}
|
Loading…
Reference in New Issue