Go Down

Topic: Was passiert bei falscher Pinbelegung? (Read 1 time) previous topic - next topic

voithian

#15
Nov 20, 2011, 06:48 pm Last Edit: Nov 20, 2011, 07:23 pm by voithian Reason: 1

Naja, was für den Controller gilt, gilt für den Arduino noch lange nicht. Siehe hier: http://blog.blinkenlight.net/experiments/basic-sketches/.

Wenn man mal von den Sonderfällen der Pins für Rx, Tx und Pin 13 absieht, kann man Arduino-Pins und Controller-Pins doch gleichsetzen, oder? Die sind doch direkt durchverbunden. Unterschiede kann es natürlich durch eine angeschlossene Hardware geben, das ist klar.
Quote

Davon abgesehen ist alles auf "high Z" nicht notwendig "ungefährlich". Sowas hängt immer auch von der restlichen Schaltung ab.

Das "ungefährlich" bezog sich natürlich darauf, dass man an einen sonst nicht anderweitig beschalteten Pin im "high Z"-Zustand beliebig GND oder +5V (selbst aus einem 20A-Netzteil) anlegen kann ohne dass etwas passiert (So wie es durch den im Eingangsposting beschriebenen Taster passieren könnte. So habe ich jedenfalls die Eingangsfrage verstanden).
Quote

Man sollte so designen, daß diese Situation ungefährlich ist, aber von selber passiert sowas nicht.

Auch ich bin ein Freund von Vorwiderständen und definierten Eingangssignalen durch Pull-up- oder Pull-down-Widerständen ;)



Knauf

Quote
Erst wenn dein Programm einen Pin auf "Ausgang" schaltet (z.B. mit pinMode() ) kann es gefährlich werden. Aber da rettet dich auch kein vorheriges Aufrufen des BareMinimum-Sketches oder eines sonstigen Programms.



@ voithian
genau , der BareMinimum Sketch tut "nix", darum ging es mir

Bei mir ist jede Schaltung ein "Prototyp", d.h.: ich baue was auf, programmiere etwas, reisse die Schaltung
wieder ab und baue was neues auf.
Es ist also gut möglich das was bei der einen Schaltung ein Ausgang war nun ein Eingang ist.

Darum meine "Anfängerfrage" ob ich auf der "sicheren Seite" bin den Arduino sozusagen in einen Zustand zu bringen wo die Pins noch nicht geschaltet sind.

gruß Dennis

voithian

#17
Nov 20, 2011, 07:07 pm Last Edit: Nov 20, 2011, 07:11 pm by voithian Reason: 1

Bei mir ist jede Schaltung ein "Prototyp", d.h.: ich baue was auf, programmiere etwas, reisse die Schaltung
wieder ab und baue was neues auf.
Es ist also gut möglich das was bei der einen Schaltung ein Ausgang war nun ein Eingang ist.

Darum meine "Anfängerfrage" ob ich auf der "sicheren Seite" bin den Arduino sozusagen in einen Zustand zu bringen wo die Pins noch nicht geschaltet sind.

OK, ich verstehe die Frage jetzt wahrscheinlich richtig: Du möchtest verhindern, dass du bei einer geänderten Schaltung irrtümlich noch das alte Programm startest, das vielleicht Pins als Ausgang setzt, die du im neuen Programm als Eingang verwendest, richtig?

Dann kannst du natürlich das BareMinimum-Programm verwenden, um das alte Programm zu "putzen" und die Pins in einen unkritischen Zustand zu bringen (siehe meine vorhergehende Antwort und die zusätzlichen Anmerkungen von Udo).

Knauf

Ah ok, vielen Dank Euch allen  ;)

Und ja , ich habe mich wohl etwas umständlich ausgedrückt, danke fürs mitdenken  :smiley-roll:

Vielen Dank euch allen :)

Dann hätte ich noch ein paar Fragen...

Wenn ich den BareMinimum Sketch auf das Arduino Uno Board lade, wie sind dann die Pins belegt? Ein-/oder Ausgang?

Wenn ich fertig bin lade ich momentan jedes Mal den Blink Sketch auf das Board. Dieser war, soweit ich mich erinnere ab Werk darauf. Wie sind in dem Falle die Pins bis auf Pin 13 belegt?
Diese müssten dann doch wie die im BareMinimum Sketch belegt seid, da diese nicht im Sketch erwähnt werden.

Und wie ist es mit Pin 0 und 1, an diesen steht ja TX und RX, dürfen diese eigentlich auf dem Board als Ein-/und Ausgänge verwendet werden?
Denn wenn ich Pin 1 als Ausgang setze und eine LED daran klemme blinkt bei jedem aufleuchten der LED die SMD-LED TX kurz auf.

Anbei noch, natürlich benutze ich Vorwiderstände ;)

MfG Pantherinae

Udo Klein

Check out my experiments http://blog.blinkenlight.net

Go Up