WinAVR LED steuern geht nicht?

OP #2550417
Lesenswert?

ich habe eine kleine problem und zwar ich versuche gerade meine 
aufgebaute schaltung zum laufen bringen aber irgendwie geht es nicht. 
Ich versuche meine LED zu leuchten mit avr.studio4 mit diesem befehlt:
#include <avr/io.h>

void main (void)
{

  DDRC = 0b00000000;
  PORTC = 0b00000000;

  while (1)
  {


  }
das wir alles schön an dem ATMEGA32 übetragen aber led leuchtet nicht wo 
mache ich fehler oder kann mir jemand helfen wie mein befehl sein muß.
Angehängte Dateien:
#2550540
Lesenswert?

K. k. schrieb:
> Dietrich L. schrieb:
>> Testpunkte:
>> - Ist die Schaltung so, wie oben gezeigt? Also: such nach Kurzschlüssen,
>> Unterbrechungen...
>> - Ist die LED richtig herum drin?
>> - µC defekt? -> anderen probieren
>> Unabhängig von dem Fehler: AREF sollte nicht an +5V angeschlossen
>> werden!
>>
>> Gruß Dietrich
>
> also ich habe das hinbekomme und zwar mit
> DDRC = 0xff;
> PORTC = 0x03;

Schön. Wenn du jetzt noch wissen würdest WARUM dass so ist wärs gut. Wer 
aber nach dem Lesen der AVR Tutorials noch immer nichtmal die 
Datenrichtungsregister und die Portregister setzen kann, suche sich evt. 
ein anderes Hobby!?
OP #2550548
Lesenswert?

cyblord ---- schrieb:
> K. k. schrieb:
>> Dietrich L. schrieb:
>>> Testpunkte:
>>> - Ist die Schaltung so, wie oben gezeigt? Also: such nach Kurzschlüssen,
>>> Unterbrechungen...
>>> - Ist die LED richtig herum drin?
>>> - µC defekt? -> anderen probieren
>>> Unabhängig von dem Fehler: AREF sollte nicht an +5V angeschlossen
>>> werden!
>>>
>>> Gruß Dietrich
>>
>> also ich habe das hinbekomme und zwar mit
>> DDRC = 0xff;
>> PORTC = 0x03;
>
> Schön. Wenn du jetzt noch wissen würdest WARUM dass so ist wärs gut. Wer
> aber nach dem Lesen der AVR Tutorials noch immer nichtmal die
> Datenrichtungsregister und die Portregister setzen kann, suche sich evt.
> ein anderes Hobby!?

wenn du es richtig einsetzen kannst wieso hast du mir nicht geschrieben 
das es so geht sondern das ich nach kurzschlüsse suchen soll?
naja egal
#2550629
Lesenswert?

An alle Leute die hier irgendwas nörgeln von wegen "das Tutorial nicht 
lesen können" sollten nächstesmal genauer hinschauen, bevor sie sich so 
äußern.
Hättet ihr den Schaltplan wenigstens mal angesehen, wüsstet ihr, dass 
die Kathode und nicht die Anode der LED an den Pin angeschlossen ist, 
weswegen PORTC = 0x00 sein muss, damit sie angeht, währrend DDRC = 0xFF 
ist.

Euer verhalten ist schlichtweg arrogant und schreckt Neulinge sofort ab, 
und der Vorschlag sich gar ein anderes Hobby zu suchen ist eine absolute 
Frechheit. Jeder hat einmal angefangen und mit etwas schwierigkeiten 
gehabt, was für euch heute banal erscheint.


An den Threadersteller:

DDRC = 0xFF;
PORTC = 0x00;

sollte eigentlich das Problem lösen.
Sollte es dennoch nicht funktionieren, schau nochmal nach ob die LED 
richtigrum drin ist (Der kürzere Pin muss an den Pin des AVR 
angeschlossen werden) und ob du auch den richtigen Widerstand eingesetzt 
hast.
Moderator Persönliche Seite #2550682
Lesenswert?

Lukas J. schrieb:
> Hättet ihr den Schaltplan wenigstens mal angesehen, wüsstet ihr, dass
> die Kathode und nicht die Anode der LED an den Pin angeschlossen ist,
> weswegen PORTC = 0x00 sein muss, damit sie angeht, währrend DDRC = 0xFF
> ist.

Hättest du seine weiteren Antworten gelesen, wäre dir die
Unstimmigkeit aufgefallen, dass er es mit PORTC = 0x03 dann
zum Laufen bekommen hat.

Ergo: irgendwas stimmt da nicht, der Schaltplan passt nicht zu
dem, was er schreibt.

Btw., Bildformate.  JPEG für ein Pixelbild (wie den Schaltplan
hier) ist völlig unpassend: es wird größer als nötig und unscharf.
OP #2553787
Lesenswert?

Lukas J. schrieb:

> Euer verhalten ist schlichtweg arrogant und schreckt Neulinge sofort ab,
> und der Vorschlag sich gar ein anderes Hobby zu suchen ist eine absolute
> Frechheit. Jeder hat einmal angefangen und mit etwas schwierigkeiten
> gehabt, was für euch heute banal erscheint.
>
>
> An den Threadersteller:
>
> DDRC = 0xFF;
> PORTC = 0x00;
>
> sollte eigentlich das Problem lösen.
> Sollte es dennoch nicht funktionieren, schau nochmal nach ob die LED
> richtigrum drin ist (Der kürzere Pin muss an den Pin des AVR
> angeschlossen werden) und ob du auch den richtigen Widerstand eingesetzt
> hast.

das stimmt vollkommen also wie du gesagt hast geht auch
aber meine art geht auch danke dir
OP #2553793
Lesenswert?

Jörg Wunsch schrieb:
> Lukas J. schrieb:
>> Hättet ihr den Schaltplan wenigstens mal angesehen, wüsstet ihr, dass
>> die Kathode und nicht die Anode der LED an den Pin angeschlossen ist,
>> weswegen PORTC = 0x00 sein muss, damit sie angeht, währrend DDRC = 0xFF
>> ist.
>
> Hättest du seine weiteren Antworten gelesen, wäre dir die
> Unstimmigkeit aufgefallen, dass er es mit PORTC = 0x03 dann
> zum Laufen bekommen hat.
>
> Ergo: irgendwas stimmt da nicht, der Schaltplan passt nicht zu
> dem, was er schreibt.
>
> Btw., Bildformate.  JPEG für ein Pixelbild (wie den Schaltplan
> hier) ist völlig unpassend: es wird größer als nötig und unscharf.

doch es geht mußt schauen wo der led angeschlossen ist
und mußt schauen was der befehl
PORTC = 0x03 aussagt
#2553804
Lesenswert?

K. k. schrieb:

> doch es geht mußt schauen wo der led angeschlossen ist
> und mußt schauen was der befehl
> PORTC = 0x03 aussagt


Sorry. Aber mit dem Schaltplan da oben, KANN das nicht funktionieren.
Du setzt PC0 auf 1. Damit liegt an der LED an der einen Seite 5V an und 
an der anderen Seite ebenfalls. Keine LED dieser Welt kann bei 
derartigen Spannungsverhältnissen leuchten. Das ist physikalisch einfach 
nicht möglich.

Wenn bei

   DDRC = 0xFF;
   PORTC = 0x03;

die LED leuchtet, dann MUSS sie nach Masse und nicht nach Vcc 
verschaltet sein, wie es im Schaltbild angegeben ist. Ergo ist dein 
Schaltbild falsch.

Wenn du aber Hilfe suchst, dann solltest du die Hilfesteller nicht mit 
falschen Informationen in die Irre führen.

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