Helpdesk
Menschen Wissenschaft Politik Mystery Kriminalfälle Spiritualität Verschwörungen Technologie Ufologie Natur Umfragen Unterhaltung
weitere Rubriken
PhilosophieTräumeOrteEsoterikLiteraturAstronomieHelpdeskGruppenGamingFilmeMusikClashVerbesserungenAllmysteryEnglish
Diskussions-Übersichten
BesuchtTeilgenommenAlleNeueGeschlossenLesenswertSchlüsselwörter
Schiebe oft benutzte Tabs in die Navigationsleiste (zurücksetzen).

Hilfe beim Arduino Mini nötig

8 Beiträge ▪ Schlüsselwörter: Arduino ▪ Abonnieren: Feed E-Mail
Seite 1 von 1

Hilfe beim Arduino Mini nötig

15.12.2017 um 16:14
Hallo Leute,

ich verzweifle gerade am Arduino Mini. Ich schaffe es einfach nicht einen einfachen Drucktaster anzuschließen.

Eine Seite vom Taster wird doch bei GND angeschlossen, die andere bei PINS 2-13? Habe alle Pins durchprobiert mit verschiedenen Sketches, bei mir registriert er nie eine Eingabe. Auch wenn ich die Verbindung einfach auf dem Breadboard herstelle.

Der Analoge Input wird ausgelesen.

Verkabel ich da irgendwas falsch?


melden

Hilfe beim Arduino Mini nötig

16.12.2017 um 16:07
https://www.arduino.cc/en/tutorial/switch (Archiv-Version vom 01.01.2018)

Schau mal hier nach. Da ist der Taster auf Pin 2 und die LED auf Pin 13.
Läuft denn die Blink-Demo? Nicht das der Mini abgeraucht ist
Edit : das ist ein 220-Ohm Widerstand, der sollte als Vorwiderstand für die LED dienen. Manchmal benötigt ein Eingang auch einen 10k Widerstand gegen Betriebsspannung als Pullup-Widerstand.
Leider habe ich den Sketch zum Tutorial nicht gefunden


melden

Hilfe beim Arduino Mini nötig

18.12.2017 um 19:52
Hi Void, danke für die Hilfe.

Es läuft beim Arduino alles andere bis auf die Taster, habe die Analogen Inputs angeschlossen und das funktioniert. Glaube ich mache was beim Anschluss der Drucktaster falsch. Habe auch viele verschiedene Sketches ausprobiert, würde das wohl auch ausschließen.


melden

Hilfe beim Arduino Mini nötig

19.12.2017 um 18:37
@Comguard2
ich weiß, das hört sich jetzt blöd an: hast Du mal mit einem Multimeter geprüft, ob die Schalter so, wie Du sie angeschlossen hast, auch schließen? Also nicht, daß Du da zwei Kontakte des Schalters verwendest, die sich überhaupt nicht verbinden?
Oder hast Du vielleicht Öffner erwischt? Nimm doch als Ersatz einfach mal ein Kabel als Schalterersatz und probiere aus, ob Du da eine Reaktion bemerkst.


melden

Hilfe beim Arduino Mini nötig

23.12.2017 um 11:15
@cpt_void
Nehme dir das nicht übel, verwende den Arduino normalerweise nie. Bzw. sonst funktioniert es, aber jetzt brauch ich die Schalter.

Arbeite jetzt mit einem Uno zum probieren, ist komfortabler als der Mini.

Jetzt versuche ich einen ganz primitiven Code zu erstellen.

Was am Ende passieren soll: Es wird eine Fernbedienung. Die Analoginputs funktionieren anscheinend. Aber wenn ich einen Button drücke sollte er halt ausdrucken welcher Button das war und welches Soundfile dann der andere Arduino abspielt, deshalb das audio im Code (Übertragung per Bluetooth).

Ich bekomme im seriellen Monitor aber immer nur 0. Die Sketches mit den LEDs funktionieren, also habe ich das mit dem Schalter hinbekommen.

Mein Code zum Versuchen:

int pushButton = 2; int audio; void setup() { Serial.begin(9600); pinMode(pushButton, INPUT); } void loop() { int buttonState = digitalRead(pushButton); delay(1); if (buttonState == LOW) {audio=1;} else {audio=2;} Serial.write(audio); }

Also sollte er entweder 1 oder 2 über dem seriellen Monitor ausgeben, ich bekomme aber immer nur 0? Ich hangel mich halt an dem Code entlang der in der Fernbedienung dabei war und versuche dahinterzusteigen.


melden

Hilfe beim Arduino Mini nötig

26.12.2017 um 15:53
erstmal: frohe Weihnachten :)

Wenn weder "1" noch "2" kommt: Bist Du sicher, daß am Terminal eine "0" erscheint? Oder so ein "komisches leeres Viereck"? Wenn ich in meinem Testprogramm
Serial.write(localState == HIGH ? "1" : "0");
benutze, kommen am Terminal 1 und 0 heraus, gebe ich stattdessen
Serial.write(localState == HIGH ? 1 : 0);
ein, kommen nur diese Vierecke.

Bau doch mal in der "Setup"-Sektion ein
Serial.write("Hallo Terminal\n");
ein.
Dann solltest Du sehen, ob der Text auf dem Terminal ankommt.


melden

Hilfe beim Arduino Mini nötig

26.12.2017 um 17:18
@cpt_void

ich denke auch das es mit der formatierung zu tun hat, auch wegen dem hinweis dass dieses zeichen nur in einer zeile ausgegeben wird, also kein lf/cr...

meine tip war ja(ich habe aber keinen plan von dem ardu, kenne nur atmel und raspberry) mal die funktionen anzusehen, da gibt es ja auch ein serialPrintln...
und das teil gibt formatiert aus... und in den beispielen(code) die ich gesehen habe arbeiten die mit dem serialPrintln um auf die konsole auszugeben.

digitalWrite()
Write a HIGH or a LOW value to a digital pin.

write()
Writes binary data to the serial port. This data is sent as a byte or series of bytes; to send the characters representing the digits of a number use the print() function instead.

println()
Prints data to the serial port as human-readable ASCII text followed by a carriage return character (ASCII 13, or '\r') and a newline character (ASCII 10, or '\n'). This command takes the same forms as Serial.print().

https://www.arduino.cc/reference/en/language/functions/digital-io/digitalwrite/


melden

Hilfe beim Arduino Mini nötig

04.03.2018 um 20:28
Auch wenn es inzwischen viel zu spät ist:
serial.write gibt Binärdaten aus.

serial.write(1) gibt also eine binäre 1 aus. Das ist die Bitfolge 00000001. Das ist ein Steuerzeichen (start of heading) das ein Monitor üblicherweise nicht darstellen kann.
serial.write(10) gibt eine dezimale 10 binär aus. Das ist die Bitfolge 00001010. Das ist auch ein Steuerzeichen (line feed) das ein Monitor üblicherweise darstellen kann. Der nachfolgende Text geht in eine neue Zeile.

Die Codierung der einzelnen darstellbaren Zeichen findet ihr in der ASCII-Tabelle (American Standard Code of Information Interchange). Das ist der klassische amerikanische Fernschreibcode.

Die Ziffer "0" ist codiert als 48 (ASCII-Code)
Die Ziffer "1" ist codiert als 49 (ASCII-Code)
.
Die Ziffer "9" ist codiert als 57 (ASCII-Code)
Der Buchstabe "A" ist codiert als 65

serial.write(49) druckt also eine "1" auf den Bildschirm
serial.write(65) druckt also ein "A" auf den Bildschirm

serial.print gibt zahlen formatiert aus.
serial.print(1) druckt also eine "1" auf den Bildschirm.

Um zu sehen, ob ein Eingang von einem Schalter überhaupt das richtige Signal erhält, sollte man das gelesene Ergebnis beim ersten Üben zur LED schicken.

Die serielle Ausgabe testet man am besten in einer Schleife von 0...255, dann sieht man, was für Zeichen heraus kommen.
Für derartige Probleme würde ich übrigens ein Arduino-Forum empfehlen.

Gruß RoBernd


melden

Ähnliche Diskussionen
Themen
Beiträge
Letzte Antwort
Helpdesk: Kennt sich jemand mit Steppermotoren aus?
Helpdesk, 5 Beiträge, am 01.02.2023 von Gucky87
Gucky87 am 23.09.2022
5
am 01.02.2023 »