Kann eine Datenkollision Ports zerstören?

Gast #129645
Hallo zusammen!
Was würde passieren wenn ich Ports von 2 Mikrocontrollern miteinander
verbinde und z.B. durch einen Programmfehler eine Kollision auf diesem
"Datenbus" entsteht.. dadurch das der eine Port-Pin als Ausgang
geschaltet ist und auf Low-Pegel liegt während der Port-Pin des anderen
Controllers gleichzeitig ebenfalls als Ausgang geschaltet ist aber auf
High-Pegel steht? Könnte es passieren das der eine Port zerstört wird
da es ja ein Kurzschluss darstellt? Ich denke zwar man kann das aus den
Schemas in den Datenblättern ableiten, die beschreiben wie diese
Port-Pins intern im Controller verschaltet sind, jedoch fehlt mir hier
echt das Wissen über die Funktionsweise um das zu verstehen :(
Mir geht es hier hauptsächlich um Pic16, aber auch AVR Controller.
Danke
Joseph
Gast
Danke Johannes! Das habe ich schon fast befürchtet :( Mal blöd gefragt:
brauche ich denn in diesem Fall dann zusätzlich Pulldown- oder
Pullup-Widerstände, oder genügt es wenn ich von dem einen Port zu dem
anderen einfach einen (z.B. 10k) Widerstand nehme?
Gast
Hi...

Das kommt wieder auf den Bus an. Nutzt du die Ports als Open-Drain,
dann brauchst du Pull-Ups (oder schaltest, falls vorhanden, die
internen ein). Arbeitest du mit Tristate, dann brauchst du keine
Pull-Ups.

Auf Widerstände in den Portleitungen würde ich erst verzichten, wenn im
finalen Aufbau nicht mehr mit Programmierfehlern zu rechnen ist. Schau
dir dazu mal bei Reichelt die BCN16-Serie an...

...HanneS...
Gast
Hi, Joseph.

Ich weiß ja nicht genau, was Du vor hast... Wenn Du praktisch den
Status des einen Portpins mit Hilfe des zweiten Controllers auslesen
willst, brauchst Du keinen Pullup etc. Der 1. Controller legt den
Ausgang auf entsprechendes Potential (0 bzw. 5 Volt), und der andere
bekommt diesen Pegel an den Eingang, ob über einen Widertand oder nicht
ist egal. Nur im von Dir beschriebenen "Kurzschlussfall", also quasi
einer "Kollision" auf dem Bus, fließt ein Strom, der durch den
Widerstand begrenzt wird.
1K hören sich nach einem vernünftigen Wert an.

Gruß

Johannes

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.