Hallo zusammen, heute konnte ich mich erstmals hinsetzen und meine ersten Programme fuer den Atmega32 schreiben. Ich habe natuerlich mit den LED's angefangen. Dabei ist mir aufgefallen, das vermutlich High und Low vertauscht sind. Hier mal ein Beispiel: DDRC |= (1<<PC0) //Pin PC0 auf Ausgang gesetzt PORTC |= (1<<PC0) // Pin PC0 auf High gesetzt (5V == VCC) Jetzt sollte die LED eigentlich leuchten, was sie aber nicht macht. Wenn ich allerdings diese Befehle ausfuehre, dann geht sie an. DDRC |= (1<<PC0) //Pin PC0 auf Ausgang gesetzt PORTC &= ~(1<<PC0) // Pin PC0 auf High gesetzt (0V == GND) Das verwirrt mich gerade ein bisschen. Hoffe Ihr wisst darauf eine Antwort!!! Gruss
pad89 schrieb: > PORTC &= ~(1<<PC0) // Pin PC0 auf High gesetzt Genau deshalb sollte man sich solche Kommentare sparen...
Je nachdem wie die LED an dem Port-Pin angeschlossen ist, ist sie HI-Active oder LOW-Active. Wie Markus bereits schrieb ist sie vermutlich über einen Widerstand an VCC gelegt. Dann leuchtet die LED, wenn der Port-Pin Low-Pegel hat. Hier fließt Strom in den Port-Pin rein. Ist die LED nach GND Geschaltet, leuchtet sie wenn der Port-Pin HI-Pegel hat. Hier fließt Strom aus dem Port-Pin raus. Bitte achte darauf, das die Port-Pins nur einen gewissen Strom vertragen.
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.