Hoşgeldin Misafir

Beyin Patlatan Ardiuno

35izmir

35izmir

🆁🅴🅸🆂🅲🅸🆂🅴🆅🅴🆁
11 Ocak 2018
2,701 Mesaj

Aktiflik

Seviye

Deneyim

TIM / GÖREV:
Kod:
// *
Delta dalgalar 1⁄2Hz - 4Hz 2.2Hz bilinçsiz, sezgi ve kavrayış
Theta 4Hz - 8Hz 6.0Hz bilinçaltı, yaratıcılık, derin rahatlama
Alfa dalgaları 8Hz - 13Hz 11.1Hz arası boşluklu ve rüya gibi, alıcı ve pasif
Beta dalgaları 13Hz - 30Hz 14,4Hz bilinçli düşünce, dış odaklama
* /

// uncomment to output current hertz to serial
// #define DEBUG

// http://code.google.com/p/arduino-tone/
#include <Tone.h>

// current brainwave-scoped freq
float hertz = 0;

// carrier frequency
float baseFreq = float(NOTE_C3);

// pin for analog speed control
int speedPot = 0;

// LED's are on these pins
int ledR = 8; // atmega pin 14, use 1K resistor
int ledL = 7; // atmega pin 13, use 1K resistor

// speakers are on these pins
int audR = 6; // atmega pin 11, use 1K resistor
int audL = 5; // atmega pin 12, use 1K resistor

int ledState = LOW;             // ledState used to set the LED
long previousLEDMillis = 0;     // will store last time LED was updated

Tone toneL;
Tone toneR;

void setup(){
#ifdef DEBUG
  Serial.begin(9600);
#endif

  pinMode(ledR, OUTPUT);
  pinMode(ledL, OUTPUT);

  toneL.begin(audL);
  toneR.begin(audR);
}

void loop(){
  // current brainwave-scoped freq, based on analog pot
  hertz = float(map(analogRead(speedPot), 0, 1023, 5, 300)) / 10.00;

#ifdef DEBUG
  Serial.println(hertz);
#endif

  // AUDIO
  toneL.play(baseFreq - (hertz/2.00));
  toneR.play(baseFreq + (hertz/2.00));

  // VISUAL
  if ((millis() - previousLEDMillis) > (1000.00 / (hertz * 2.00))) {
    previousLEDMillis = millis();
    ledState = !ledState;
    digitalWrite(ledL, ledState);
    digitalWrite(ledR, !ledState);
  }

}