PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Spannung bricht zusammen - 8051 (AT89C51ED2) und ULN2803



Daniel.85
11.12.2006, 18:45
Hallo,
ich bin auf der Suche nach einer Antwort, warum die Spannung beim einstecken des ULN2803 am Eingang von 5V auf rund 200mV zusammenbricht.

Ich gebe einen High Pegel mit dem AT89C51 an den Pins von Port 1 aus und messe entsprechend 5V, die ich zur Schrittmotoransteuerung verstärken möchte. Wenn ich nun den ULN in seine Fassung stecke bricht die Spannung wie gesagt zusammen und am Ausgang liegt eine noch viel niedrigere Spannung, da der ULN den Eingang als Low interpretiert.

Kann es sein, dass Port1 einfach nicht geeignet ist um den Motortreiber zu treiben? Muss ich (trotz interner Pullups) weitere externe Pullups vorschalten, wenn ja, wie groß sollten die sein?


Für eine Antwort wäre ich sehr dankbar.
Mit freundlich Grüßen
Daniel


Anlagen:
- Datasheet AT89C51ED2 (http://www.atmel.com/dyn/resources/prod_documents/doc4235.pdf)
- Datasheet ULN2803 (http://www.ucapps.de/midio128/uln2803.pdf)

gunzelg
11.12.2006, 20:31
Hallo Daniel

poste mal deine Schaltung.
gerhard

Yossarian
11.12.2006, 21:06
Hallo

wenn der ULN2803 low am Eingang sieht ist sein Ausgang auf high bzw. hochohmig,da open collector.

Mit freundlichen Grüßen
Benno

Yossarian
11.12.2006, 21:12
Hallo
Hast Du einen 2801 erwischt? Der hat keinen Vorwiderstand im Basiskreis.

Mit freundlichen Grüßen
Benno

Daniel.85
11.12.2006, 22:27
Danke ersteinmal :-)

Ich bin mir sehr sicher, dass es ein ULN2803A ist O:)
Willst du mit deinem ersten Post sagen, wenn ich am Ausgang des ULN2803 +Vcc haben möchte, muss ich 0V auf den Eingang legen und wenn am Ausgang GND liegen soll muss ich 5V auf den Eingang legen?


Darüber hinaus habe ich einen Tip von jemanden bekommen, der sagte, ich müsse den Port als "Output Low Voltage, ports 1, 2, 3, 4" (siehe Seite 116f in Datasheet) konfigurieren, indem ich 1kOhm Widerstände gegen Masse (also Pulldown Widerstände :-s) an die Leiter zwischen Prozessor und Treiber schalte.
Grund sei, dass der Port in der jetziegen Konfiguration zu wenig Strom liefern kann, um die Eingangswiderstände des ULN (2,7kOhm) bei 5V mit ausreichend Strom zu versorgen.
Ist das evtl die Lösung für mein Problem?


Die Schaltung findet ihr im Anhang, aber bevor ihr euch wundert, wir nutzen folgende Motoren: Datenblatt Schrittmotor Astrosyn Y129 (http://images.mercateo.com/pdf/Farnell_InOne/8074.pdf)

Ich gebe zur Ansteurung in einer Schleife folgende Werte auf P1 aus: 0x33 --> 0x99 --> 0xCC --> 0x66

Der Motor zuckt jedoch nur hin und her, weshalb ich dann durch messen festellen musste, dass die Spanung wie oben erwähnt zusammenbebrochen ist.

Yossarian
11.12.2006, 23:40
Hallo
sobald Du auf z.B pin1 +5V legst, schaltet pin18 nach gnd,d.h. durch Deine Motorspule fließt Strom.
Ich lese jetzt nicht das Datenblatt des 89c51 , aber 2mA dürfte der Ausgang doch liefern können.
Die Ports des µC sind nach dem Reset als Eingänge definiert,also hochohmig.
Das erkennt der ULN schon als high am Eingang und schaltet durch.
Hier würden also die erwähnten Widerstände helfen.
Wenn Du damit leben kannst,setze die Ports nach dem Initialisieren auf low.
Bis dahin sind eben alle Ausgänge des ULN eingeschaltet.
Der Ausgang für die Spule die bestromt werden soll muß nach gnd schalten.
Der dazugehörige Ausgang des µC wird dazu auf high gesetzt.
Wenn ich das richtig sehe , muß Deine Reihenfolge 3,6,c,9 sein.
Das stimmt also mit Deiner Folge überein.

Mit freundlichen Grüßen
Benno

BlinkyBill
12.12.2006, 13:18
hast du das problem nur mit, oder auch ohne motoren ?
Bricht die ganze Spannung ein, oder nur am Ausgang des µC ?