Pages: [1] 2   Go Down
Author Topic: Was passiert bei falscher Pinbelegung?  (Read 1262 times)
0 Members and 1 Guest are viewing this topic.
Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Huhu,

ich habe gerade auf Grund meiner Ausbildung zum Elektroniker für Betrierbstechnik mit der Microcontrollertechnik angefangen und habe da eine Frage zum Arduino Uno Board.

Was passiert wenn ich z.B. Pin 10 in der Programmierung als Ausgang definiere, aber ein Eingangssignal (z.B. von einem Taster) mit +5V an diesen Pin anlege.
Oder ich z.B. Pin 5 als Eingang definiere und einen Verbraucher (LED) mit der Anode an Pin 5 sowie der Kathode an GND anklemme?

Können möglicherweise Hardwareschäden auftreten?

MfG Pantherinae
Logged

Offline Offline
Sr. Member
****
Karma: 2
Posts: 260
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo.

In der Regel nicht.

Man kann das sogar beabsichtigt machen.

Beispiel: LED mit Anode an Pin 8, Kathode an Pin 9 (natürlich mit Widerstand an der LED!!)
Jetzt definiert man PIN 8 und PIN 9 als Outputs und setzt beide auf HIGH.
-> LED leuchtet nicht

Setzt du dann den Kathoden-Pin 9 auf LOW fließt strom. (Potentialausgleich)
-> LED leuchtet

Das nennt sich "sinking".
Logged

0
Offline Offline
Faraday Member
**
Karma: 24
Posts: 3486
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Klar kann bei sowas der Controller beschädigt werden. Wenn Du einen Pin auf Output und Low setzt und gleichzeitig 5V anlegst, dann wir mit sehr hoher Wahrscheinlichkeit der maximal zulässige Strom überschritten. Der Erfolg ist dann ein mindestens ein defekter Ausgang smiley-sad

Wenn Du hingegen ein LED falsch anschliesst ohne Vorwiderstand, dann ist es eine interessante Frage was warum zuerst kaputt geht. Mit Vorwiderstand hingegen bleibt schlimmstenfalls die LED dunkel und sonst rührt sich nichts.

Wenn Du das Verhalten der verschiedenen Pins mal sehen willst, dann schau Dir mal meine Seite hier an: 
Code:
http://blog.blinkenlight.net/experiments/basic-sketches/

Gruß, Udo
Logged

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

Munich/Germany
Offline Offline
God Member
*****
Karma: 11
Posts: 643
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo.

In der Regel nicht.

Man kann das sogar beabsichtigt machen.

Beispiel: LED mit Anode an Pin 8, Kathode an Pin 9 (natürlich mit Widerstand an der LED!!)
Jetzt definiert man PIN 8 und PIN 9 als Outputs und setzt beide auf HIGH.
-> LED leuchtet nicht

Setzt du dann den Kathoden-Pin 9 auf LOW fließt strom. (Potentialausgleich)
-> LED leuchtet

Das nennt sich "sinking".

Eine sinnvolle Anwendung dafür wäre z.B. eine zweifarbige LED mit zwei Anschlusspins. Je nach Flussrichtung leuchtet eine der beiden Farben.
Logged

_______
Manfred

Offline Offline
Newbie
*
Karma: 0
Posts: 3
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Danke für eure Antworten.

Das heißt für das abwechselnde Leuchten einer Dual-LED könnte ich den Sketch folgendermaßen schreiben:
Die Led wäre dann zwischen Pin 8 und 9 verklemmt.

void setup()
{
  pinMode (8, OUTPUT);
  pinMode (9, OUTPUT);
}

void loop()
{
  digitalWrite (8, LOW);
  digitalWrite (9, HIGH);
  delay (200);
  digitalWrite (9, LOW);
  digitalWrite (8, HIGH);
  delay (200);
}


MfG Pantherinae
Logged

AREA COLOGNE
Offline Offline
Edison Member
*
Karma: 21
Posts: 1128
I am 1 of 10 who understands binary
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Genauso sieht es aus. Im Grunde muss man halt nur aufpassen das kein zu hoher STrom fließt bzw eine zu hohe Spannung anliegt. Ich persöhnlich nutze wenn ich höhere Spannungen überwache als 5V trotz Vorteiler immer noch eine 5,1V Z-Diode  (Eingänge sind bis max 5,5V "belastbar"). Dann ist man noch sicherer.
Logged

So ist das Leben:
Manchmal bis du das Denkmal, manchmal die Taube!

Offline Offline
Sr. Member
****
Karma: 2
Posts: 260
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Klar kann bei sowas der Controller beschädigt werden. Wenn Du einen Pin auf Output und Low setzt und gleichzeitig 5V anlegst, dann wir mit sehr hoher Wahrscheinlichkeit der maximal zulässige Strom überschritten. Der Erfolg ist dann ein mindestens ein defekter Ausgang smiley-sad

max. 40 mA pro Port und 200mA für alle Ports zusammen
Logged

Forum Moderator
BZ (I)
Online Online
Brattain Member
*****
Karma: 266
Posts: 21647
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Das heißt für das abwechselnde Leuchten einer Dual-LED könnte ich den Sketch folgendermaßen schreiben:
Die Led wäre dann zwischen Pin 8 und 9 verklemmt.
Ich hoffe Du schließt die LED mit Vorwiderstand in Reihe an.

PS den Kode hebt man mit der Taste mit der Rautentaste hervor.

Grüße Uwe
Logged

MK (D)
Offline Offline
Full Member
***
Karma: 8
Posts: 170
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Klar kann bei sowas der Controller beschädigt werden.
max. 40 mA pro Port und 200mA für alle Ports zusammen
Was denn nu?
Aus dem Datenblatt Atmega8/Atmega168:
"Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device."
Klingt für mich nicht nach Kurzschlussfest!
Logged

Gruß Peter

Forum Moderator
BZ (I)
Online Online
Brattain Member
*****
Karma: 266
Posts: 21647
+39 349 2158303
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Nee, sind nicht kurzschlußfest.
Grüße Uwe
Logged

Neuss
Offline Offline
Full Member
***
Karma: 1
Posts: 200
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Klar kann bei sowas der Controller beschädigt werden.
max. 40 mA pro Port und 200mA für alle Ports zusammen
Was denn nu?
Aus dem Datenblatt Atmega8/Atmega168:
"Stresses beyond those listed under “Absolute Maximum Ratings” may cause permanent damage to the device."
Klingt für mich nicht nach Kurzschlussfest!
Ich denke kduin wollte freundlicherweise sagen, dass der max. Strom, der in einen Port hinein- oder herausfließen darf (Sink oder Source) laut Angaben im Datenblatt tunlichst auf 40 mA begrenzt werden sollte. Dass das Ding kurzschlussfest sein soll, kann ich aus seinen Angaben nicht deuten.

Wolfgang

« Last Edit: November 20, 2011, 11:13:58 am by voithian » Logged

Berlin/Germany
Offline Offline
Newbie
*
Karma: 0
Posts: 15
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Ist es also generell Sinnvoll, bevor man eine neue Schaltung mit dem Arduino verbindet,
den BareMinimum - Sketch zu laden ?
Logged

Neuss
Offline Offline
Full Member
***
Karma: 1
Posts: 200
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Hallo Knauf,

was erhoffst du dir davon?

Der BareMinimum-Sketch tut garnichts (mal abgesehen davon, dass in init() für dich unsichtbar ein paar Timer konfiguriert werden)! Das kannst du  auch sehen, wenn du dir den Code anschaust: da stehen in setup() und loop() keine Befehle drin.

Es werden keine Pins auf Ein- oder Ausgang geschaltet, es wird kein Ausgang gesetzt oder zurückgesetzt, es werden keine internen Pull-Up-Widerstände aktiviert oder deaktiviert. Nix!

Im übrigen ist nach einem Reset des Mikrocontrollers (durch Resettaster, Einschalten der Versorgungsspannung, usw.) alles im ungefährlichen Zustand: die I/O-Pins sind im hochohmigen Zustand auf Eingang geschaltet. Da kannst du beliebig 0 Volt oder 5 Volt anlegen ohne etwas kaputt zu machen. 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.

Wolfgang

Logged

0
Offline Offline
Faraday Member
**
Karma: 24
Posts: 3486
20 LEDs are enough
View Profile
WWW
 Bigger Bigger  Smaller Smaller  Reset Reset

Naja, was für den Controller gilt, gilt für den Arduino noch lange nicht. Siehe hier: http://blog.blinkenlight.net/experiments/basic-sketches/. Davon abgesehen ist alles auf "high Z" nicht notwendig "ungefährlich". Sowas hängt immer auch von der restlichen Schaltung ab. Man sollte so designen, daß diese Situation ungefährlich ist, aber von selber passiert sowas nicht.
Logged

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

MK (D)
Offline Offline
Full Member
***
Karma: 8
Posts: 170
Arduino rocks
View Profile
 Bigger Bigger  Smaller Smaller  Reset Reset

Dass das Ding kurzschlussfest sein soll, kann ich aus seinen Angaben nicht deuten.
So interpretiert halt jeder für sich selbst eine Aneinanderreihung von Worten,
ich lese aus "Reply #6" das Anzweifeln von Udos Post,
und wollte eine Klarstellung erreichen, falls es jemand genauso deutet. smiley-cool
Logged

Gruß Peter

Pages: [1] 2   Go Up
Jump to: