Arduino UNO
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 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 | #include “TEA5767Radio.h” #include “LCDIC2.h” // 4‑zeiliges Display LCDIC2 lcd(0x27, 20, 4); // String für die Eingabe im Seriellen Monitor String Eingabe; // Name des Radios TEA5767Radio radio = TEA5767Radio(); /* Senderliste nach Bundesländern ————————————————————————- NRW: https://www.bandscan.de/listen/nrw.php Baden-Württemberg: https://www.bandscan.de/listen/baden_wuerttemberg.php Rheinland-Pfalz&Saarland: https://www.bandscan.de/listen/rpsaar.php Bayern: https://www.bandscan.de/listen/bayern.php Schleswig-Holstein&Hamburg: https://www.bandscan.de/listen/hamburg_sh.php Berlin&Brandenburg: https://www.bandscan.de/listen/berlin.php Sachsen: https://www.bandscan.de/listen/sachsen.php Sachsen-Anhalt: https://www.bandscan.de/listen/sachsen-anhalt.php Hessen: https://www.bandscan.de/listen/hessen.php Niedersachsen&Bremen: https://www.bandscan.de/listen/nds.php Mecklenburg-Vorpommern: https://www.bandscan.de/listen/meckp.php Thüringen: https://www.bandscan.de/listen/thueringen.php ———————————————————————— Senderliste Raum Köln 1Live 87,6 bigFM 104.9 Deutschlandfunk 89,1 Radio Berg 99.7 Radio Köln 107.1 RPR1 103.5 SWR1 92.4 SWR3 94.8 SWR4 97.4 WDR2 98.6 WDR3 95.9 WDR4 90,7 WDR5 88.0 */ // Anzahl der Sender #define Anzahl 5 // Variable für den gewählten Sender int SenderNummer; // Namen der Sender String Senderliste[Anzahl] = { “WDR2 “, “1Live”, “WDR4 “, “Radio Berg”, “SWR3” }; // Frequenzen der Sender float Frequenzliste[Anzahl] { 98.6, 87.6, 90.7, 99.7, 94.8 }; void setup() { Serial.begin(9600); // LCD starten lcd.begin(); // Cursor “verstecken” lcd.setCursor(false); lcd.setCursor(0, 0); lcd.print(“Sender mit Taste”); lcd.setCursor(0, 1); lcd.print(“w\341hlen”); } void loop() { // Tasten des Tastenpads abfragen SenderNummer = Tasterabfrage(); // ‑1 -> keine Taste gedrückt if (SenderNummer !=-1) { // Namen und Frequenz des gewählten Senders anzeigen lcd.clear(); radio.setFrequency(Frequenzliste[SenderNummer]); lcd.setCursor(0, 0); lcd.print(“Sender: ” + Senderliste[SenderNummer]); lcd.setCursor(0, 1); // . durch , ersetzen String Frequenz = String(Frequenzliste[SenderNummer]); Frequenz.replace(“.”, “,”); lcd.print(“Frequenz: ” + Frequenz); } // auf serielle Eingabe warten while (Serial.available() > 0) { // Eingabe im Seriellen Monitor lesen String Eingabe = Serial.readStringUntil(‘\n’); // Leerzeichen entfernen Eingabe.trim(); // Eingabe in Großbuchstaben umwandeln // Groß- und Kleinschreibung der Eingabe möglich Eingabe.toUpperCase(); // Eingabe abfragen -> Zählung beginnt mit 0 if (Eingabe == “WDR2”) { SenderNummer = 0; } if (Eingabe == “1LIVE”) { SenderNummer = 1; } if (Eingabe == “WDR4”) { SenderNummer = 2; } if (Eingabe == “RADIOBERG”) { SenderNummer = 3; } if (Eingabe == “SWR3”) { SenderNummer = 4; } // Namen und Frequenz des gewählten Senders anzeigen lcd.clear(); radio.setFrequency(Frequenzliste[SenderNummer]); lcd.setCursor(0, 0); lcd.print(“Sender: ” + Senderliste[SenderNummer]); lcd.setCursor(0, 1); // . durch , ersetzen String Frequenz = String(Frequenzliste[SenderNummer]); Frequenz.replace(“.”, “,”); lcd.print(“Frequenz: ” + Frequenz); Serial.println(“Sender: ” + Senderliste[SenderNummer]); Serial.println(“Frequenz: ” + Frequenz); } // String Eingabe leeren Eingabe = “”; } int Tasterabfrage() { int Analogwert = analogRead(A0); // kurzes delay() -> doppelten Tastendruck so weit wie möglich verhindern delay(200); /* 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) { // links case 0 ... 20: SenderNummer = 0; break; // oben case 30 ... 60: SenderNummer = 1; break; // unten case 70 ... 120: SenderNummer = 2; break; // rechts case 150 ... 200: SenderNummer = 3; break; // rechts außen case 300 ... 400: SenderNummer = 4; break; // keine Taste gedrückt default: return -1; } // gedrückte Taste zurückgeben return SenderNummer; } |
D1 Mini
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 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 | #include “TEA5767Radio.h” #include “LCDIC2.h” // 4‑zeiliges Display LCDIC2 lcd(0x27, 20, 4); // String für die Eingabe im Seriellen Monitor String Eingabe; // Name des Radios TEA5767Radio radio = TEA5767Radio(); /* Senderliste nach Bundesländern ————————————————————————- NRW: https://www.bandscan.de/listen/nrw.php Baden-Württemberg: https://www.bandscan.de/listen/baden_wuerttemberg.php Rheinland-Pfalz&Saarland: https://www.bandscan.de/listen/rpsaar.php Bayern: https://www.bandscan.de/listen/bayern.php Schleswig-Holstein&Hamburg: https://www.bandscan.de/listen/hamburg_sh.php Berlin&Brandenburg: https://www.bandscan.de/listen/berlin.php Sachsen: https://www.bandscan.de/listen/sachsen.php Sachsen-Anhalt: https://www.bandscan.de/listen/sachsen-anhalt.php Hessen: https://www.bandscan.de/listen/hessen.php Niedersachsen&Bremen: https://www.bandscan.de/listen/nds.php Mecklenburg-Vorpommern: https://www.bandscan.de/listen/meckp.php Thüringen: https://www.bandscan.de/listen/thueringen.php ———————————————————————— Senderliste Raum Köln 1Live 87,6 bigFM 104.9 Deutschlandfunk 89,1 Radio Berg 99.7 Radio Köln 107.1 RPR1 103.5 SWR1 92.4 SWR3 94.8 SWR4 97.4 WDR2 98.6 WDR3 95.9 WDR4 90,7 WDR5 88.0 */ // Anzahl der Sender #define Anzahl 5 // Variable für den gewählten Sender int SenderNummer; // Namen der Sender String Senderliste[Anzahl] = { “WDR2 “, “1Live”, “WDR4 “, “Radio Berg”, “SWR3” }; // Frequenzen der Sender float Frequenzliste[Anzahl] { 98.6, 87.6, 90.7, 99.7, 94.8 }; void setup() { Serial.begin(9600); // LCD starten lcd.begin(); // Cursor “verstecken” lcd.setCursor(false); } void loop() { // Tasten des Tastenpads abfragen SenderNummer = Tasterabfrage(); // ‑1 -> keine Taste gedrückt if (SenderNummer !=-1) { // Namen und Frequenz des gewählten Senders anzeigen lcd.clear(); radio.setFrequency(Frequenzliste[SenderNummer]); lcd.setCursor(0, 0); lcd.print(“Sender: ” + Senderliste[SenderNummer]); lcd.setCursor(0, 1); // . durch , ersetzen String Frequenz = String(Frequenzliste[SenderNummer]); Frequenz.replace(“.”, “,”); lcd.print(“Frequenz: ” + Frequenz); } // auf serielle Eingabe warten while (Serial.available() > 0) { // Eingabe im Seriellen Monitor lesen String Eingabe = Serial.readStringUntil(‘\n’); // Leerzeichen entfernen Eingabe.trim(); // Eingabe in Großbuchstaben umwandeln // Groß- und Kleinschreibung der Eingabe möglich Eingabe.toUpperCase(); // Eingabe abfragen -> Zählung beginnt mit 0 if (Eingabe == “WDR2”) { SenderNummer = 0; } if (Eingabe == “1LIVE”) { SenderNummer = 1; } if (Eingabe == “WDR4”) { SenderNummer = 2; } if (Eingabe == “RADIOBERG”) { SenderNummer = 3; } if (Eingabe == “SWR3”) { SenderNummer = 4; } // Namen und Frequenz des gewählten Senders anzeigen lcd.clear(); radio.setFrequency(Frequenzliste[SenderNummer]); lcd.setCursor(0, 0); lcd.print(“Sender: ” + Senderliste[SenderNummer]); lcd.setCursor(0, 1); // . durch , ersetzen String Frequenz = String(Frequenzliste[SenderNummer]); Frequenz.replace(“.”, “,”); lcd.print(“Frequenz: ” + Frequenz); Serial.println(“Sender: ” + Senderliste[SenderNummer]); Serial.println(“Frequenz: ” + Frequenz); } // String Eingabe leeren Eingabe = “”; } int Tasterabfrage() { int Analogwert = analogRead(A0); // kurzes delay() -> doppelten Tastendruck so weit wie möglich verhindern delay(200); /* 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) { // links case 0 ... 20: SenderNummer = 0; break; // oben case 30 ... 100: SenderNummer = 1; break; // unten case 120 ... 180: SenderNummer = 2; break; // rechts case 200 ... 300: SenderNummer = 3; break; // rechts außen case 500 ... 600: SenderNummer = 4; break; // keine Taste gedrückt default: return -1; } // gedrückte Taste zurückgeben return SenderNummer; } |
ESP32-Wroom
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 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 | #include “TEA5767Radio.h” #include “LCDIC2.h” // 4‑zeiliges Display LCDIC2 lcd(0x27, 20, 4); // String für die Eingabe im Seriellen Monitor String Eingabe; // Name des Radios TEA5767Radio radio = TEA5767Radio(); /* Senderliste nach Bundesländern ————————————————————————- NRW: https://www.bandscan.de/listen/nrw.php Baden-Württemberg: https://www.bandscan.de/listen/baden_wuerttemberg.php Rheinland-Pfalz&Saarland: https://www.bandscan.de/listen/rpsaar.php Bayern: https://www.bandscan.de/listen/bayern.php Schleswig-Holstein&Hamburg: https://www.bandscan.de/listen/hamburg_sh.php Berlin&Brandenburg: https://www.bandscan.de/listen/berlin.php Sachsen: https://www.bandscan.de/listen/sachsen.php Sachsen-Anhalt: https://www.bandscan.de/listen/sachsen-anhalt.php Hessen: https://www.bandscan.de/listen/hessen.php Niedersachsen&Bremen: https://www.bandscan.de/listen/nds.php Mecklenburg-Vorpommern: https://www.bandscan.de/listen/meckp.php Thüringen: https://www.bandscan.de/listen/thueringen.php ———————————————————————— Senderliste Raum Köln 1Live 87,6 bigFM 104.9 Deutschlandfunk 89,1 Radio Berg 99.7 Radio Köln 107.1 RPR1 103.5 SWR1 92.4 SWR3 94.8 SWR4 97.4 WDR2 98.6 WDR3 95.9 WDR4 90,7 WDR5 88.0 */ // Anzahl der Sender #define Anzahl 5 int SenderNummer; // Namen der Sender String Senderliste[Anzahl] = { “WDR2 “, “1Live”, “WDR4 “, “Radio Berg”, “SWR3” }; // Frequenzen der Sender float Frequenzliste[Anzahl] { 98.6, 87.6, 90.7, 99.7, 94.8 }; void setup() { Serial.begin(9600); // LCD starten lcd.begin(); // Cursor “verstecken” lcd.setCursor(false); } void loop() { // Tasten des Tastenpads abfragen SenderNummer = Tasterabfrage(); // ‑1 -> keine Taste gedrückt if (SenderNummer !=-1) { // Namen und Frequenz des gewählten Senders anzeigen lcd.clear(); radio.setFrequency(Frequenzliste[SenderNummer]); lcd.setCursor(0, 0); lcd.print(“Sender: ” + Senderliste[SenderNummer]); lcd.setCursor(0, 1); // . durch , ersetzen String Frequenz = String(Frequenzliste[SenderNummer]); Frequenz.replace(“.”, “,”); lcd.print(“Frequenz: ” + Frequenz); } // auf serielle Eingabe warten while (Serial.available() > 0) { // Eingabe im Seriellen Monitor lesen String Eingabe = Serial.readStringUntil(‘\n’); // Leerzeichen entfernen Eingabe.trim(); // Eingabe in Großbuchstaben umwandeln // Groß- und Kleinschreibung der Eingabe möglich Eingabe.toUpperCase(); // Eingabe abfragen -> Zählung beginnt mit 0 if (Eingabe == “WDR2”) { SenderNummer = 0; } if (Eingabe == “1LIVE”) { SenderNummer = 1; } if (Eingabe == “WDR4”) { SenderNummer = 2; } if (Eingabe == “RADIOBERG”) { SenderNummer = 3; } if (Eingabe == “SWR3”) { SenderNummer = 4; } // Namen und Frequenz des gewählten Senders anzeigen lcd.clear(); radio.setFrequency(Frequenzliste[SenderNummer]); lcd.setCursor(0, 0); lcd.print(“Sender: ” + Senderliste[SenderNummer]); lcd.setCursor(0, 1); // . durch , ersetzen String Frequenz = String(Frequenzliste[SenderNummer]); Frequenz.replace(“.”, “,”); lcd.print(“Frequenz: ” + Frequenz); Serial.println(“Sender: ” + Senderliste[SenderNummer]); Serial.println(“Frequenz: ” + Frequenz); } // String Eingabe leeren Eingabe = “”; } int Tasterabfrage() { int Analogwert = analogRead(35); // kurzes delay() -> doppelten Tastendruck so weit wie möglich verhindern delay(200); /* G35 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) { // links case 0 ... 50: SenderNummer = 0; break; // oben case 100 ... 200: SenderNummer = 1; break; // unten case 300 ... 700: SenderNummer = 2; break; // rechts case 900 ... 1200: SenderNummer = 3; break; // rechts außen case 1800 ... 2500: SenderNummer = 4; break; // keine Taste gedrückt default: return -1; } // gedrückte Taste zurückgeben return SenderNummer; } |
Letzte Aktualisierung: