You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

44 lines
775 B
C++

/*
ICE KING
*/
#define POT1 (0)
#define POT2 (1)
#define POT3 (2)
#define SPEAKER (11)
int t;
int u;
int tone_delay;
int tone_freq;
void
setup()
{
Serial.begin(9600); // DEBUG
pinMode(SPEAKER, OUTPUT);
}
void
loop()
{
// 1CE C0DE
t++;
u = (t*t/256)&(t>>((t/1024)%16))^t%64*(0x1CEC0DE>>(t>>9&30)&t%32)*t>>18;
// Use bytebeat u value as tone frequency
// tone(pin, frequency) is provided by Arduino lib
tone_freq = u * (((1023 - analogRead(POT2)) / 10) + 1);
tone(SPEAKER, tone_freq);
// Use pot 1 to set the tone duration (0-31)
//tone_delay = analogRead(POT1) / 32; // meergranen v2
tone_delay = (1023 - analogRead(POT1)) / 32; // meergranen v1
delay(tone_delay);
// DEBUG
//Serial.println(tone_delay);
Serial.println(tone_freq);
}