Hallo, ich habe ein multithreading Programm für meine Modellbahn geschrieben und erweitere dieses jede Woche um ca 1-2 Ausgänge. Davon hat der Mega ja jede Menge. Jedenfalls schafft es der Arduino nicht mehr eine neue LED gescheit zu bestromen. Sie leuchtet nur ganz schwach, egal welche LED!, welchen Vorwiderstand! und auch! "welchen Ausgang" ich zuweise!. Das ist total komisch. Das restliche Programm funktioniert einwandfrei!! Es sind wenn überhaupt höchstens 3 Transistoren und 4 LED´s gleichzeitig an, also von 500mA bin ich weit entfernt. Selbst wenn kurzzeitig alles aus ist, ist die LED nur ganz schwach an. Ich habe Kabel getauscht, die LED sogar direkt mit Vorwiderstand in die Buchsenleiste reingeklemmt. Sie glimmt ganz schwach, egal wo das Programm gerade ist. An 5 V geht sie einwandfrei. Das Restprogramm läuft auch einwandfrei. Es hört sich komisch an, aber kann es sein, dass der Arduino softwareseitig ab einer gewissen Anzahl an Ausgängen dichtmacht oder sowas oder soll man doch an Geister glauben ? Am Programm liegt es jedenfalls nicht.
Peter F. schrieb: > Es hört sich komisch an, aber kann es sein, dass der Arduino > softwareseitig ab einer gewissen Anzahl an Ausgängen dichtmacht oder > sowas oder soll man doch an Geister glauben ? DAS ist ein Geisterglaube...
Peter F. schrieb: > Es sind wenn überhaupt > höchstens 3 Transistoren und 4 LED´s gleichzeitig an, also von 500mA bin > ich weit entfernt. Hä? Welche 500mA? Und was hast du denn da für ein lustiges Foto angehängt? Lies mal das Datenblatt des MC (ATMega 2560): Da steht, das jeder Ausgang maximal 40mA liefern darf, der ganze Chip aber höchstens 200mA aufnehmen darf. Also nix mit 500mA. So, jetzt müsstest du nur mal die Schaltung posten und dann können wir dir sagen, wo dein Denkfehler liegt.
Peter, seit wann laufen Bilder als Programm und was sollen wir hier damit anstellen ? Als Hintergrund verwenden? Ohne Schaltbild, Bilder vom realen Aufbau im Detail und das reale Programm. Wird es darauf hinauslaufen, dass dein Softwaresystem daran Schuld sein kann.
Es hört sich zwar komisch an, aber hast du mal den Strom mit einem Multimeter gemessen, der zum Arduino fließt? Es gibt da, meine ich zumindest, das Problem, dass der Arduino per Linearregler seine Spannung bekommt und nicht per Schaltregler. Es könnte sein, dass auf dem Arduino-Board dieses Bauteil sehr heiß wird und die Ausgangsspannung runter regelt. Natürlich gibt es viele weitere Möglichkeiten, aber wie immer: ohne Schaltplan (und/oder) Bild vom Aufbau (und/oder) allgemein mehr Infos wird nur geraten...
Die Ausgänge mal mit einem Oszi ansehen. Ansonst gibt es diesen Effekt wenn man den Ausgang nicht als Ausgang sondern als Eingang mit aktivem PullUp schaltet. Also nur den PullUp ein und ausschaltet.
Karl M. schrieb: > seit wann laufen Bilder als Programm und was sollen wir hier damit > anstellen ? > Als Hintergrund verwenden? Das ist der WCC. Wardrobe C-Compiler. mfg.
Ich habe das Programm nur als Bild gepostet, damit man sieht, dass man das nicht mal eben in 3 min durchschauen kann. Ich kann es aber später mal richtig posten. Ich habe die LED direkt im Programmdurchlauf auf DauerHIGH gesetzt und ihr auch unterschiedliche Ausgänge zugewiesen. Trotzdem war sie immer nur ganz minimal an. Seltsamerweise geht sie nichtmal in Pausen an, wo fast alle anderen Dinge aus sind. Also kann es an zu wenig Spannung nicht liegen, auch wenn der Arduino nur 200mA liefert. Bei 3 Transistoren und 4 Led´s wären es trotzdem nämlich nichtmal 100mA. ;-) """"""Ansonst gibt es diesen Effekt wenn man den Ausgang nicht als Ausgang sondern als Eingang mit aktivem PullUp schaltet. Also nur den PullUp ein und ausschaltet."""""""""""""""" Ich habe der LED die Ausgänge jeweils so zugewiesen int led = 3 ; pinMode(led,OUTPUT); Mit den Pull up/downs habe ich mich nicht beschäftigt, da ich an Eingängen jeweils extern pulldownwiderstände angelötet habe. Ja ich werde später mal ein Bild von der Schaltung machen, das Programm posten und meinetwegen auch den Gesamtstrom messen.
Peter F. schrieb: > wenn der Arduino nur 200mA liefert. Bei 3 Transistoren und 4 Led´s wären > es trotzdem nämlich nichtmal 100mA. ;-) Das sagt über den eigentlichen Stromverbrauch nichts aus. Der ist letztendlich auch von den Vorwiderständen zu den Leds abhängig. Ohne die Widerstände liegt der schnell am Limit.
Und ich glaube ein Schaltbild sagt da sehr viel aus und sollte hier reichen.
Led auch als Ausgang definiert? Schwaches Glimmen könnte durch den internen Pullup des Avr passieren. Hat der Portpin eventuell eine Doppelbedeutung zb Jtag und Jtag ist enable?
Peter F. schrieb: > Ich habe das Programm nur als Bild gepostet, damit man sieht, dass man > das nicht mal eben in 3 min durchschauen kann. Ich kann es aber später > mal richtig posten. Diese Information ist aber absolut wertlos. Und manchmal braucht ein anderer nur kurz drüberschauen und erkennt den Fehler. Während du stundenlang draufgucken kannst und den Wald vor lauter Bäumen nicht siehst. mfg.
Ok, Sketch ist geheim, Schaltbild ist geheim, also müssen wir weiter raten. Netzteil ist zu schwach dimensioniert.
Hallo, es ist mir sehr peinlich aber es ist nun mal so wie es ist. War grad dabei das Programm einzufügen, um es hier zu posten, da hab ich doch tatsächlich wircklich gesehen, dass ich einfach genau das nicht getan habe, was ich oben schrieb. ^^ Also doch vergessen den Port als OUTPUT festzulegen. Ist dann so wie hier von 2 Leuten schon geschrieben. Der standartmäßig als Eingang festgelegte Port hat den pulldown aktiviert gehabt. Arghhh da habe ich gestern über eine Stunde rumgebastelt und konnte mir das nicht erklären, was der µC macht. Aber aus Fehlern lernt man ja. Vielen Dank auf jeden Fall für eure Hilfe ! Thomas E. schrieb: > und den Wald vor lauter Bäumen nicht > siehst.
Und die Stelle an der das setzen der Portrichtung vergessen wurde hätte dir jemand schon nach 3 min Code angucken zeigen können. Selbst bei einem doppelt so großen Programm. Aber ich kenn das, da hackt man über wochen Chaos zusammen - mit dem Vorsatz das mal auf zu Räumen - und wenn man in der 3. Woche nicht mehr durchsteigt fehlt die Zeit zum Aufräumen und man schämt sich den Code zu zeigen. Und dann muss es did Hardware sein. Elektrostatik oder ein Fehler vom Hersteller.
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.
