Pin bei Start HIGH. Ist das möglich?

Hallo,
Ist es möglich, dass an einem PIN bereits zu Programmstart eine Spannung anliegt, wie z.B. von einem vorherigen Programm oder Ähnlichem?

Unter Anderem stellt sich also die Frage ob es nötig ist im anfangs den PIN auf LOW zu setzen.

Mit freundlichen Grüßen!

Der Pegel am offenen Pin kann bei Start ohne Massnahme jeden Wert angenommen haben.

Hallo
Im setup() kannst Du alle Einstellungen vornehmen, die zu Deinem Projekt passen.

Nur Pins, die auf OUTPUT programmiert sind/werden, haben überhaupt einen definierten
Spannungspegel, die anderen folgen der angelegten Spannung, wie alle INPUT Pins.

Also ist es nicht so wie es beim Raspberry pi zum Beispiel ist, dass PINs auch ohne sie auf OUTPUT und HIGH gesetzt zu haben bereits bei vor/beim Programmstart schon auf HIGH sind, weil ein vorheriges Programm den PIN vor Ende nicht wieder auf LOW gesetzt hat?

Und folgend daraus zu Beginn der Setupfunktion ist kein PIN auf HIGH?

Ich denke Du unterliegst einem Irrtum und/oder vermischt etwas.
Der Pegel kann HIGH sein.

Kann gut sein, dass ich da was vermische. Ich habe nicht viel Erfahrung und arbeite hauptsächlich mit dem Skript meines Lehrers.
Ich habe die simple Aufgabenstellung, ein Fußgängerampel zu simulieren. Zu Beginn soll die Ampel aus sein. Also ist es nötig im Setup alle PINs auf LOW zu setzen, weil davor z.B. die PINs durch ein vorherigen Programm auf HIGH gesetzt worden sind?
Um die Frage mal konkreter zu stellen. Habe gerade kein Arduino zur Hand.

Zwischen vorherigem und neuem Sketch wird der Prozessor mehrfach zurückgesetzt,
da bleibt kein Pin-Zustand übrig.

Ah okay vielen Dank!

Auch das kann falsch sein.
Es kommt ganz darauf an, mit welchem Zustand (HIGH oder LOW) du die jeweilige Lampe/Led zum Leuchten bringen willst.

Nicht unbedingt.
Es kommt auf die Anwendung an.
nicht benutzt, LOW-Level, oder HIGH-Level aktiv.

Deine Frage war:

Die Antwort ist: Es kommt darauf an.
Das nennt sich Pegel.

Wenn du empfindliche Hardware hast,
die u.U. bei nicht definierten (floating) Zuständen versehentlich aktiviert werden könnte,
kannst du diese Pins mit externen Widerständen auf den gewünschten inaktiven Pegel setzen,
wenn der Arduino die Füße hochzieht,
z.B. bei jedem Reset und bis zum Setzen eines OUTPUT Zustands.

Hallo
Das Lesen das µC Datenblatt hilft.
Dort wird spezfiziert welchen logischen Zustand die Pins nach dem PowerOn einnehmen.

Das ist ein Projektionsfehler!
Du projizierst das RPi Verhalten auf irgendeinen Arduino.
Auf einem Arduino gibt es meist kein ( oder immer ein) "Vorheriges Programm".

Du siehst das "meist"?

Wieder der Projektionsfehler.

Und wieder der Projektionsfehler.

Natürlich sind bei manchen Arduinos, Nachbauten und/oder Kompatiblen, irgendwelche Pins auf High!
Auch direkt nach dem Reset.
Und ebenso natürlich, gibt es Gründe dafür.

Tipp:
Wenn du konkrete Fragen hast, dann solltest du auch konkrete Fragen stellen.
z.B. Fakten nennen.
z.B. Welcher Arduino ..... Welche Pins du meinst... Welches "vorherige Programm"

Mittels Pullup oder Pulldown Widerstände kannst Du den logischen Zustand von Pins bestimmen bevor diese als Ausgänge initialisiert werden.

Grüße Uwe

This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.