Trompete
/*
* Arduino Trompete
*
* 3 Taster, 7 Töne
*
* Verschiedene Töne je nach Tastenkombination
* Mehr Taster können hinzugefügt werden
*
* Original:
* http://www.instructables.com/id/Arduino-Trumpet/
*/
int speaker = 13; // Lautsprecher auf Pin 13
int taster1 = 12; // Taster 1 auf Pin 12
int taster2 = 11; // Taster 2 auf Pin 11
int taster3 = 10; // Taster 3 auf Pin 10
int value1;
int value2;
int value3;
//Definieren der Noten
//Zahlen in Klammern ändern, Ton ändert sich
//Weiteren Ton hinzufügen: void () erstellen
//1 Mikrosekunde= 1'000'000 Sekunden, 1000 Millisekunden
void c () {
digitalWrite(speaker, HIGH);
delayMicroseconds(1915);
digitalWrite(speaker, LOW);
delayMicroseconds(1905);
}
void d () {
digitalWrite(speaker, HIGH);
delayMicroseconds(1700);
digitalWrite(speaker, LOW);
delayMicroseconds(1690);
}
void e () {
digitalWrite(speaker, HIGH);
delayMicroseconds(1519);
digitalWrite(speaker, LOW);
delayMicroseconds(1509);
}
void f () {
digitalWrite(speaker, HIGH);
delayMicroseconds(1432);
digitalWrite(speaker, LOW);
delayMicroseconds(1422);
}
void g () {
digitalWrite(speaker, HIGH);
delayMicroseconds(1275);
digitalWrite(speaker, LOW);
delayMicroseconds(1265);
}
void a () {
digitalWrite(speaker, HIGH);
delayMicroseconds(1136);
digitalWrite(speaker, LOW);
delayMicroseconds(1126);
}
void b () {
digitalWrite(speaker, HIGH);
delayMicroseconds(1014);
digitalWrite(speaker, LOW);
delayMicroseconds(1004);
}
void C () {
digitalWrite(speaker, HIGH);
delayMicroseconds(956);
digitalWrite(speaker, LOW);
delayMicroseconds(946);
}
void setup() {
pinMode(speaker, OUTPUT);
pinMode(taster1, INPUT);
digitalWrite(taster1, HIGH);
pinMode(taster2, INPUT);
digitalWrite(taster2, HIGH);
pinMode(taster3, INPUT);
digitalWrite(taster3, HIGH);
}
// Abspielen der Töne
// LOW = Taster gedrückt
void loop() {
value1 = digitalRead(taster1); // Taster 1 auslesen
value2 = digitalRead(taster2); // Taster 2 auslesen
value3 = digitalRead(taster3); // Taster 3 auslesen
if ((value1 == LOW) && (value2 == LOW) && (value3 == LOW))
{
c(); // Wenn alle 3 Taster gedrückt: "c"
}
else if ((value1 == LOW) && (value2 == HIGH) && (value3 == HIGH))
{
f(); // Wenn der 1. Taster gedrückt: "f"
}
else if ((value1 == HIGH) && (value2 == LOW) && (value3 == HIGH))
{
b(); // Wenn der 2. Taster gedrückt: "b"
}
else if ((value1 == HIGH) && (value2 == HIGH) && (value3 == LOW))
{
a(); // Wenn der 3. Taster gedrückt: "a"
}
else if ((value1 == LOW) && (value2 == LOW) && (value3 == HIGH))
{
e(); // Wenn der 1. und 2. Taster gedrückt: "e"
}
else if ((value1 == LOW) && (value2 == HIGH) && (value3 == LOW))
{
d(); // Wenn der 1. und 3. Taster gedrückt: "d"
}
else if ((value1 == HIGH) && (value2 == LOW) && (value3 == LOW))
{
g(); // Wenn der 2. und 3. Taster gedrückt: "e"
}
// Soll ein Grundton gespielt werden, /* */ entfernen
/*
else if ((valve1 == HIGH) && (valve2 == HIGH) && (valve3 == HIGH))
{
g(); // Ton wenn keine Taste gedrückt ist ("g")
}
else{
delay(1);
}
*/
}