Steuerung im Seriellen Monitor
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 | #include “SoftwareSerial.h” #include “DFRobotDFPlayerMini.h” // RX/TX Port definieren SoftwareSerial DFPlayerSoftwareSerial(3, 4); // Name des Players DFRobotDFPlayerMini mp3Player; int Lautstaerke = 15; /* Schalter für die Pausenfunktion Pause == true -> Wiedergabe gestoppt Pause == false -> Wiedergabe neu starten */ bool Pause = false; void setup() { DFPlayerSoftwareSerial.begin(9600); Serial.begin(9600); delay(1000); // Player starten // falls die Parameter true, true nicht funktionieren // mp3Player.begin(DFPlayerSoftwareSerial, false, true); mp3Player.begin(DFPlayerSoftwareSerial, true, true); /* Equalizer: mp3Player.EQ(DFPLAYER_EQ_NORMAL); mp3Player.EQ(DFPLAYER_EQ_POP); mp3Player.EQ(DFPLAYER_EQ_ROCK); mp3Player.EQ(DFPLAYER_EQ_JAZZ); mp3Player.EQ(DFPLAYER_EQ_CLASSIC); mp3Player.EQ(DFPLAYER_EQ_BASS); */ mp3Player.EQ(DFPLAYER_EQ_ROCK); // Lautstärke 1 .. 30 mp3Player.volume(Lautstaerke); // zufällige Wiedergabe starten mp3Player.randomAll(); // Menü Serial.println(“—————————–”); Serial.println(“n = nächster Titel”); Serial.println(“v = voheriger Titel”); Serial.println(“+ = Laustärke +”); Serial.println(“- = Lautstärke -”); Serial.println(“s = Stopp/Weiter”); Serial.println(“z = zufällige Wiedergabe”); Serial.println(“m = Menü anzeigen”); Serial.println(“1–9 = Verzeichnis 1–9 spielen”); Serial.println(“—————————–”); } void loop() { // auf serielle Eingabe warten while (Serial.available() > 0) { // Eingabe im Seriellen Monitor lesen char Zeichen = Serial.read(); // wenn die Eingabe eine Zahl ist if (isdigit(Zeichen)) { // char in String umwandeln, anschließend zu int konvertieren String Zahl = String(Zeichen); int Nummer = Zahl.toInt(); Serial.println(“Spiele Verzeichnis ” + String(Nummer)); mp3Player.loopFolder(Nummer); Pause = false; } // — -> Lautstärke - if (Zeichen == ‘-’) { if (Lautstaerke > 2) Lautstaerke = Lautstaerke - 2; mp3Player.volume(Lautstaerke); Serial.println(“Lautst\u00e4rke: ” + String(Lautstaerke)); } // + -> Lautstärke + if (Zeichen == ‘+’) { if (Lautstaerke <= 28) Lautstaerke = Lautstaerke + 2; mp3Player.volume(Lautstaerke); Serial.println(“Lautst\u00e4rke: ” + String(Lautstaerke)); } // n -> nächster Titel if (Zeichen == ’n’) { mp3Player.next(); Serial.println(“Nächster Titel”); } // v -> vorheriger Titel if (Zeichen == ‘v’) { mp3Player.previous(); Serial.println(“Vorheriger Titel”); } // s -> Pause/Weiter if (Zeichen == ’s’) { if (!Pause) { mp3Player.stop(); } if (Pause) { mp3Player.start(); } Pause = !Pause; if (Pause) Serial.println(“Wiedergabe angehalten”); if (!Pause) Serial.println(“Wiedergabe fortgesetzt”); } // z -> zufällige Wiedergabe Titel if (Zeichen == ‘z’) { mp3Player.randomAll(); Serial.println(“Zufällige Wiedergabe gestartet”); Pause = false; } // m -> Menü anzeigen if (Zeichen == ‘m’) { Serial.println(“—————————–”); Serial.println(“n = nächster Titel”); Serial.println(“v = voheriger Titel”); Serial.println(“+ = Laustärke +”); Serial.println(“- = Lautstärke -”); Serial.println(“s = Stopp/Weiter”); Serial.println(“z = zufällige Wiedergabe”); Serial.println(“m = Menü anzeigen”); Serial.println(“1–9 = Verzeichnis 1–9 spielen”); Serial.println(“—————————–”); } } } |
Steuerung mit Tastenpad
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 | #include “SoftwareSerial.h” #include “DFRobotDFPlayerMini.h” // RX/TX Port definieren SoftwareSerial DFPlayerSoftwareSerial(3, 4); // Name des Players DFRobotDFPlayerMini mp3Player; int Taster; int Lautstaerke = 20; /* Schalter für die Pausenfunktion Pause == true -> Wiedergabe gestoppt Pause == false -> Wiedergabe neu starten */ bool Pause = false; void setup() { DFPlayerSoftwareSerial.begin(9600); Serial.begin(9600); // auf Seriellen Monitor warten while (!Serial); Serial.println(); // Player starten mp3Player.begin(DFPlayerSoftwareSerial, false, true); /* Equalizer: mp3Player.EQ(DFPLAYER_EQ_NORMAL); mp3Player.EQ(DFPLAYER_EQ_POP); mp3Player.EQ(DFPLAYER_EQ_ROCK); mp3Player.EQ(DFPLAYER_EQ_JAZZ); mp3Player.EQ(DFPLAYER_EQ_CLASSIC); mp3Player.EQ(DFPLAYER_EQ_BASS); */ mp3Player.EQ(DFPLAYER_EQ_ROCK); // Lautstärke 1 .. 30 mp3Player.volume(Lautstaerke); // Wiedergabe starten mp3Player.enableLoopAll(); } int Tasterabfrage() { int Analogwert = analogRead(A0); // kurzes delay() -> doppelten Tastendruck so weit wie möglich verhindern delay(200); //Serial.println(Analogwert); /* A0 gibt je nach Taster einen Wert aus über den Seriellen Monitor wird dieser Wert angezeigt und kann dann eventuell angepasst werden */ // Serial.println(Analogwert); switch (Analogwert) { case 0 ... 20: Taster = 1; break; case 30 ... 60: Taster = 2; break; case 70 ... 120: Taster = 3; break; case 150 ... 200: Taster = 4; break; case 300 ... 400: Taster = 5; break; default: return 0; } // gedrückten Taster zurückgeben return Taster; } void loop() { Taster = Tasterabfrage(); // Taster links -> Lautstärke - if (Taster == 1) { if (Lautstaerke > 0) Lautstaerke = Lautstaerke - 2; mp3Player.volume(Lautstaerke); Serial.println(“Lautst\u00e4rke: ” + String(Lautstaerke)); } // Taster oben Mitte -> nächster Titel if (Taster == 2) { mp3Player.next(); } // Taster unten Mitte -> vorheriger Titel if (Taster == 3) { mp3Player.previous(); } // Taster rechts -> Lautstärke + if (Taster == 4) { if (Lautstaerke < 30) Lautstaerke = Lautstaerke + 2; mp3Player.volume(Lautstaerke); Serial.println(“Lautst\u00e4rke: ” + String(Lautstaerke)); } // Taster außen -> Pause/Weiter if (Taster == 5) { if (!Pause) { Pause = !Pause; mp3Player.stop(); } if (Pause) { Pause = !Pause; mp3Player.start(); } } } |
Letzte Aktualisierung: