hi leute, ich möchte einen ULN2803 Treiberbaustein an den AVR AT90S2313 anschalten, da ich einige LEDs ansteuern will die mehr als die 20mA ziehen. Der Baustein bietet sich meiner Meinung auch deshalb an, da er 8 Treiber besitzt, andere weniger (brauche auch genau 8 Stück). Ich brauche dazu sicher Pullup-Widerstände oder, um die Datenleitungen zw. AVR und ULN gegen +5V zu ziehen, oder? Wollte sicherheitshalber nachfragen, da ich in Sachen "Bussen und so" ein Neuling bin. Besten Dank schon mal, viele Grüße Markus.
Warum nimmst Du nicht LowCurrent-LEDs die brauchen nur 2mA. Ferner kann jeder Port 40mA sourcen und 200mA sinken. Siehe Datenblatt "Electrical Characteristics"
@Ben: Woher nimmst Du diese Werte? Ich lese aus dem Datenblatt des 2313 eigentlich, daß jeder Pin 20mA (absolutes Maximum: 40mA) sinken und 3mA sourcen kann. Alle I/O-Pins zusammen dürfen nicht mehr als 200mA sinken. Markus
@Thomas Ich versuch mal ne einfache Antwort (Is nicht meine stärke.) Pullupwiderstände (Oder auch Pulldown.Es gibt beide Varianten aber P-Up ist häufiger vertreten) braucht man gewöhnlich wenn ein Ausgang nur einen Transistor hat der den Ausgang gegen Masse zieht. Das heißt das bei Leitendem Transistor der Ausgang gegen masse gezogen wird und eine Saubere Elektrische "0" bildet. Bei gesperrtem Transistor liegt der ausgang dann aber "quasi" in der Luft und bildet dann keinen Definierten Pegel. Er ist dann also "Hochohmig" Der Widerstand zur Versorgungsspannung sorgt dafür das in diesem Falle das Potential gegen die Versorgungsspannug gezogen wird. Er wirkt also wie eine Rückholfeder bei einem Relais die die Mechanik immer sicher in Grundposition bringt wenn der Magnet nicht aktiv ist. Dabei darf die Feder natürlich nicht stärker sein als der Magnet. Das gleiche gilt für den Pullupwiderstand. Ers sollte für Stabile verhältnisse sorgen. Ist er zu kleine dann fließt nur ein unnötig hoher Strom der im Widerstand in Wärme umgesetzt wird.
Wie hoch sollte der Widerstand sein? reichen 4700Ohm. Wenn ich einen Pullupwiderstand jetzt auf eine Leitung lege, der sagen wir mal zwischen uC und einem anderen Digitalen Baustein liegt, wie kann ich dann noch digital 0 (0V) senden, wenn doch der Pullup ständig das andere Bauteil auf logisch eins(5V) hält???
Der Transistor ist im durchgeschaltetem Zustand viel niederohmiger als der Widerstand und kann so den Pegel runterziehen. Im Beispiel mit dem Relais ist der Elektromagnet stärker als die Rückholfeder. Wie groß der Widerstand sein soll darüber kann man vortrefflich streiten. Angesichts des möglichst niedrigen Stromverbrauchs sollte er so klein wie nötig und so groß wie möglich sein plus einer Sicherheitsreserve. Mit deinen 4.7KOhm biste schon ganz gut dabei. Je nach schaltung kann man den Bereich irgendwo zwischen 1-10K Ohm ansetzen. Probiers erstmal mit den 4.7k das wären dann bei einer 0 ca 1mA an Strom.
kommt auf den MC an, beim AVR ist definitiv kein Pullup nötig, da die Ports als Ausgang totem-pole-Stufen haben, dementsprechend auch bei H-Signal Strom liefern. Anders sieht es beim 8051 aus, dort sind die Ausgänge nur als open-collector/drain mit relativ hochohmigen internem pull-up ausgeführt. Das reicht dann nicht, um an externe Bauteile bei H-Pegel Strom zu liefern.
@all, habe diesen etwas verstaubten Thread gefunden und hätte nun noch einige Fragen. Ich habe gerade ein Board gebaut das ein Evaluierungsboard mit der Hardware verbinden soll. Das Evaluierungsboard hat einen 80C517A als uC. Da ich einige LED anseuern will und ausserdem noch ein Funksignal abfrage habe ich als Treiberbausteine den ULN2803 verwendet. Das Funksignal lese ich über Port 1 ein P1.0 u. 1.1 und zusätzlich ein DCF-77 Sig an P1.3 und 1.5. Ich habe jeweils einen ULN2803 an den Ports 1,4 und 5. Jeder Portpin ist einzel mit einem 4,7kOhm Pullup Widerstand an Vcc gezogen. Verbind ich nun nur Port 1 mit der Hardware, kann ich die Signale ohne Probleme auslesen etc.Habe hier auch schon Langzeitmessungen gemacht ohne Probleme. Verbinde ich nun Port 4+5 des uC mit den Pullup Widerstanden und der Eingänge der ULN2803 kann ich fast keine Signale der Sensoren über Port 1.0+1.1 nehr erkennen. Sind meine Pullups zu gross? Gibt es hierzu Richtwerte? Danke!!!!! :-) Thomas
Für ULN2803 brauchst du keine pullup Widerstande, und nicht vergessen uC Pins als Ausgang configurieren!
Der Controller gibt entweder Hi- oder Lowpegel aus, genau das, was der ULN2803 will. Du braucht keine Pullups. Zu pullups hat Ratgeber schon einen Roman geschrieben den ich recht passend finde. Pullups / pulldowns werden nur dann gebraucht wenn ein Pegel fehlt.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.