Forum: Compiler & IDEs WinAVR LED steuern geht nicht?


von Deniz k. (deniz82)


Angehängte Dateien:

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ß.

: Verschoben durch Moderator
von BWLnow (Gast)


Lesenswert?

Du gibst dir keine Mühe mit der Rechtschreibung. Nachlässigkeit wohin 
man schaut. Was sich auch in deinem "Programm" wiederspiegelt.

von Deniz k. (deniz82)


Lesenswert?

BWLnow schrieb:
> Du gibst dir keine Mühe mit der Rechtschreibung. Nachlässigkeit wohin
> man schaut. Was sich auch in deinem "Programm" wiederspiegelt.

und das heißt?

von JensM (Gast)


Lesenswert?

Da ligt der Fehler:

DDRC = 0b00000000;


Gruß JensM

von Deniz k. (deniz82)


Lesenswert?

JensM schrieb:
> Da ligt der Fehler:
>
> DDRC = 0b00000000;
>
>
> Gruß JensM

ja ich habe auch versucht DDRC = 0b00000001;
geht auch nicht?
was muß ich machen

von Michael R. (dj_motionx)


Lesenswert?

K. k. schrieb:
> was muß ich machen

Das AVR Tutorial lesen !

von Deniz k. (deniz82)


Lesenswert?

Michael Rathmair schrieb:
> K. k. schrieb:
>> was muß ich machen
>
> Das AVR Tutorial lesen !

habe ich aber komme nicht weiter

von Dietrich L. (dietrichl)


Lesenswert?

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

von Deniz k. (deniz82)


Lesenswert?

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;

von Cyblord -. (cyblord)


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!?

von Deniz k. (deniz82)


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

von Εrnst B. (ernst)


Lesenswert?

Dietrich L. schrieb:
> Also: such nach Kurzschlüssen,

Einen hab ich schon: AREF ist gegen AVCC gebrückt ;)


Woher sich die Leute immer diese falschen "Grundschaltungen" ziehen...

von Michael H. (michael_h45)


Lesenswert?

roboternetz... hab ich denen sogar schon mal geschrieben...
stört sie scheinbar nicht.

von Lukas J. (drluke)


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.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


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.

von Falk B. (falk)


Lesenswert?

@  Jörg Wunsch (dl8dtl) (Moderator) Benutzerseite

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

Ach was, sowas machen doch nur Dinosaurier wir du und ich. Die junge 
Generation nimmt einfach eine Lichtfeldkamera!

Beitrag "Re: StarWars 3D - ein Witz"

SCNR
Falk

von Deniz k. (deniz82)


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

von Deniz k. (deniz82)


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

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


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

Sinnlos, weiterzuschreiben:

. fullquote (wofür?)
. "alles geht", auch wenn es in sich widersprüchlich ist
. nichts passt zusammen

Mach einfach weiter.  Schade um die Zeit, die andere für dich
investiert haben.

von Karl H. (kbuchegg)


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.

von Werner (Gast)


Lesenswert?

Lukas J. schrieb:
> An den Threadersteller:
>
> DDRC = 0xFF;
> PORTC = 0x00;
>
> sollte eigentlich das Problem lösen.

Falls du die vorherigen Beiträge gelesen hast: Tut es lt. TO nicht

K. k. schrieb:
> ja ich habe auch versucht DDRC = 0b00000001;
> geht auch nicht?

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
Noch kein Account? Hier anmelden.