Atmega32 + ULN2803a + LED

OP #3589878
Lesenswert?

Hallo Leute,

ich versuche LED´s über einen ULN2803a zu verwenden.
Sobald ich dies mit einem µc Versuche klappt es nicht mehr.

Vorher habe ich das ganze mit einem Labornetzteil getestet.

Im Bild seht ihr meine Schaltung!

Oben Links die PIN Belegung vom Wannenstecker:
Pin1: +5V
Pin2: Masse
Pin3: PA0
Pin4: PA1
Pin5: PA2
usw.

Verwendet wird der Atmega 32.

Könnt ihr mir helfen?
Angehängte Dateien:
OP #3590000
Lesenswert?

@Karl:

Das ganze ist 1 zu 1 so aufgebaut, auch die LED´s sind richtig gepolt.
Verwende ich +5V zum durchschalten funktioniert es.
Nutze ich einen PIN der High geschaltet ist funktioniert es nicht.

@Alex:
Die Pin´s sind vom ULN zusammen geschaltet, damit an jedem Input ein 
Signal anliegt.
Ist dies nicht der Fall kann es zu Fehlern kommen.
#3590012
Lesenswert?

Julien J. schrieb:
> @Karl:
>
> Das ganze ist 1 zu 1 so aufgebaut, auch die LED´s sind richtig gepolt.

Das sagst du, aber ich kann es von dieser Seite des Monitors aus nicht 
kontrollieren.
Im Laufe der Jahre hab ich mir angewöhnt, auch in die Richtungen zu 
denken, die vom Fragesteller kategorisch ausgeschlossen werden. Manchmal 
ist das tatsächlich ein 'Bingo' (tm Christoph Walzl).

> Verwende ich +5V zum durchschalten funktioniert es.

OK. Akzeptiere ich mal so.

> Nutze ich einen PIN der High geschaltet ist funktioniert es nicht.

Tja. dann wirst du eben den Pin nicht High-schalten.

Aber da du den Wink mit dem Zaunpfahl nicht verstanden hast:
Zeige dein Programm!

Alles andere ist Kaffeesudleserei und nicht zielführend. Wenn die 
Verdrahtung stimmt, du am richtigen Port bist, den Portpin auf Ausgang 
gestellt hast und den Pin dann auch noch auf High geschaltet hast, dann 
müssen die LED leuchten. Da sie es nicht tun, ist irgendwo ein Fehler 
vorhanden. Den werden wir aber nicht finden, wenn du immer nur 
behauptest, dass eh alles richtig ist und mit nichts rüber kommst, mit 
dem man arbeiten könnte.
#3590032
Lesenswert?

Dachte ich mirs doch.

Du hast den Pin nicht auf Ausgang gestellt.
Was dein Programm macht: Es schaltet den Pullup zu. Mehr nicht.
Mit einem Voltmeter kannst du da unbelastet tatsächlich 5V messen. Aber 
sobald da dann ein paar mA fliessen sollen ....


Warum postest du dein Programm eigentlich als PNG.
Das ist für dich mehr Arbeit und für uns auch.
Denn jetzt kann ich alles neu tippen, anstatt mir die Teile aus deinem 
Programm zusammenzukopieren. Häng dein C-File einfach so an wie es ist.
1
#include <avr/io.h>
2

3
int main()
4
{
5
  DDRA = 0xFF;
6

7
  PORTA = 0xFF;
8

9
  while( 1 )
10
  {
11
  }
12
}

Wenn deine LED wirklich am Port A hängen, dann kannst du dich jetzt an 
leuchtenden LED erfreuen.

Und deine diversen set... Funktionen. Die hebst du dir für später auf, 
wenn du sie wirklich mal brauchst und es keine andere Möglichkeit gibt. 
Denn die willst du so nämlich nicht wirklich haben.

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