Spel med tankar/Mindwaves (med Arduino) (9 / 13 steg)
Steg 9: programvara
Arduino Leonardo styrelsen ska kunna tävla med tangentbordet eller musen. Med den här funktionen gjorde jag en kod som emulerar WASD och styr många spel på datorn. NeuroSky använder eSense värden: uppmärksamhet och meditation från 1 till 100 och upptäcker blinkar. Om värdet eSense når gränsen (70 för meditation) och 65 för uppmärksamhet eller upptäcker blinkar emulerar en pressande nyckel.
Två lysdioder roll är att ange när du nått gränsen uppmärksamhet eller meditation. Röda anger uppmärksamhet och den gröna meditationen.
Anslut din Arduino Leonardo och ladda upp denna kod. Hämta biblioteken från programvara delar steg. Bluetooth-moduler är redan konfigurerad efter lastning upp koden kan du börja spela TV-spel.
/*
Kod som skapats av Tamás Imets för att spela TV-spel med mindwaves
Känn dig fri att använda det
25: e i mars, 2016
*/
#include < Mindwave.h >
#include < SofwareSerial.h >
#include < Keyboard.h >
SoftwareSerial bluetooth (9, 8); softwareserial stift
12Sprints 12Sprints; 12Sprints biblioteket aktiveras
int medlimit = 70. sätta gränser
int attlimit = 65; sätta gränser
void setup() {
Bluetooth.BEGIN(MINDWAVE_BAUDRATE); Ange baudvärde
pinMode (5, OUTPUT); setup pins
pinMode (4, OUTPUT); setup pins
}
void onMindwaveData() {
om (mindwave.quality() < 95) {/if du blinka
Keyboard.write('w'); pressar W
}
om (mindwave.quality() == 100) {
Keyboard.write(' ');
}
om (mindwave.meditation() > medlimit) {//if du meditera
digitalWrite 5, hög,
Keyboard.write('d'); pressar D
}
om (mindwave.meditation() < medlimit) {
digitalWrite (5, låg).
Keyboard.write(' ');
}
om (mindwave.attention() > attlimit) {//if youe fokus
digitalWrite (6, hög).
Keyboard.write('a'); pressar A
}
om (mindwave.attention() < attlimit) {
digitalWrite (6, låg).
Keyboard.write(' ');
}
}
void loop() {
mindwave.Update (bluetooth, onMindwaveData);
}