Open Collector am Mega 8?

Gast #138164
Lesenswert?
• ▲
▼
collector schon mal gar nicht, da CMOS - wenn, dann wäre es open drain.
Falls du das wirklich brauchst - eine einfache Diode 1N4148 (Katode zum
Portpin) macht aus einem Gegentakt-Ausgang einen fast vollwertigen
open-xx Ausgang. Fast, da der L-Pegel um die Durchlassspannung der
Diode höher liegt. Ob das stört, hängt von den nachfolgenden
Komponenten und der Betriebsspannung ab. Zur Not Schottky-Dioden
einsetzen.
Gast #138166
Lesenswert?
• ▲
▼
Das einzige was man beachten muss, egal ob beim Verfahren mit der Diode
oder der Lösung in Software: Man darf an einen solchen Ausgang keine
höhere Spannung anlegen als die Versorgungsspannung des AVR, da sonst
die Schutzdioden im AVR überlastet werden.

Wenn man einen echten Open-Kollektor-Ausgang benötigt, nimmt man am
aller einfachsten einen kleinen Mosfet, z.B. BS170 (TO-92, nicht für
unter 5 Volt geeignet) oder  BS130 (SOT-23, SMD, aber "schöner"
Mosfet).

Wer keinen Mosfet mag, kann auch einen normalen NPN-Transistor inkl.
zweier Widerstände verwenden. Wenn er dann noch schnell schalten soll,
benötigt der Transistor über den Basis-Widerstand noch einen
Beschleunigungskondensator. Wenn den Transistor auch richtig lahm
schalten darf, kommt man auch nur mit einem Widerstand aus.
Gast #138168
Lesenswert?
• ▲
▼
@Michael

"Wenn man einen echten Open-Kollektor-Ausgang benötigt..."


Wenn Du das Portbit konstant auf 0 setzt und nur das DDR-Bit
umschaltest, dann ist das "echt open drain", echter gehts nicht.
Der obere FET ist immer gesperrt.

In alten CMOS-Logikschaltungen hat man früher oft den 74HC125 genommen,
um open-drain Ausgänge nach diesem Prinzip zu realisieren und in CPLDs
macht man es genau so.


Peter
Gast #138169
Lesenswert?
• ▲
▼
Hi

er hat schon recht. Die Schutzdiode ist trotz gesperrtem FET immer noch
da. An einem "echten Open-Drain" Ausgang kann man einen LED-Strang an
+12V betreiben. Das wird mit der DDRx Methode nicht funktionieren.

Matthias
Gast #138170
Lesenswert?
• ▲
▼
"An einem "echten Open-Drain" Ausgang kann man einen LED-Strang an
+12V betreiben."


Völlig falsch !!!

Der 74LS03 ist ein "echter" open-collector und kann nur 5V ab.
Der 74LS26 ist schaltungsmäßig identisch mit dem 74LS03, kann aber 15V
ab.

Welche Spannung der Ausgangstransistor abkann ist also kein Merkmal der
open-collector Schaltung.

Und Schutzdioden sind auch in den ULNxxx drin.


Peter
Gast #138172
Lesenswert?
• ▲
▼
@peter dannegger:

Auch wenn der obere Fet gesperrt ist, hast Du immer noch eine Diode vom
Ausgang nach VCC, also eine Beschaltung des Open-Kollektor- bzw.
Open-Drain-Ausgang.

Ich habe kein Datenblatt von so einem antiken 74LS03 da, aber im
Datablatt zum 74HC03 von Philips kann man nachlesen:

    "The 74HC/HCT03 have open-drain N-transistor outputs,
     which are not clamped by a diode connected to VCC. In
     the OFF-state, i.e. when one input is LOW, the output
     may be pulled to any voltage between GND and VOmax.
     This allows the device to be used as a LOW-to-HIGH or
     HIGH-to-LOW level shifter."

VOmax ist übrigens mit 7 Volt angegeben.

Deine Aussage:

> Wenn Du das Portbit konstant auf 0 setzt und nur das DDR-Bit
> umschaltest, dann ist das "echt open drain", echter gehts nicht.

ist so nicht richtig. Denn ein "echt open drain" ist überhaupt nicht
beschaltet, auch nicht mit einer Diode nach VCC. Die Diode stört in
vielen Fällen bei Open-Drain- bzw. Open-Kollektor-Anwendungen, wie z.B.
Level-Shifter oder Schaltaufgaben.

Und:

> Welche Spannung der Ausgangstransistor abkann ist also kein
> Merkmal der open-collector Schaltung.

Das hat hier noch nie jemand behauptet. Es ging und geht
ausschliesslich darum, dass Du mit der Softwarelösung oder der
Beschaltung mit einer externen Diode in Reihe an die eingebaute Diode
im AVR denken musst und nicht von einem reinem Open-Kollektor-Ausgang
ausgehen darfst.

VCC am AVR kann ja auch kleiner als 5 Volt sein und Du kannst trotzdem
keine Spannungen wegschalten die höher als VCC ist weil über die Diode
ein Strom nach VCC fliessen würde!
Gast #138173
Lesenswert?
• ▲
▼
@peter dannegger:

> In alten CMOS-Logikschaltungen hat man früher oft den 74HC125
> genommen, um open-drain Ausgänge nach diesem Prinzip zu
> realisieren

Der 74HC125 hat keine Open-Drain-Augänge sondern 3-State-Ausgänge.
3-State und Open-Drain sind zwei völlig verschiedene Sachen, auch wenn
sie sich in bestimmten Anwendungsfällen ähnlich verhalten.

Im AVR hast Du 3-State-Ausgänge und keine Open-Drain-Ausgänge.

Kleiner, aber sehr entscheidender Unterschied.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren