Forum: Mikrocontroller und Digitale Elektronik Atmega 8 will nicht


von frage ... atmega8 (Gast)


Lesenswert?

Ich hab erfolgreich meinen Atmega 8 über den usbasp v2.0 adapter 
verbunden.

Nachdem ich mein Programm in den Atmega gebrannt hatte, wurde mir auch 
von Bascom mitgeteilt das es erfolgreich war.

Frage:
Warum geht aber die verdammte Led nicht an?


Nachdem Brennvorgang hab ich den Atmega mit Vcc u. den GND Pin mit einem 
+5 Volt Netzteil verbunden.
Bei der VCC Leitung geht noch eine Leitung über einen 10 kohm widerstand 
an den reset pin.


Ich hab natürlich ein viel größeres Programm.


Hier mal ein kleines testprogramm

$regfile = "m8def.dat"
$crystal = 1000000


Config Portc.0 = Output


Portc.0 = 1


   Do


   Loop

  End


Ich bitte um Hilfe DANKE im voraus

von Hubert G. (hubertg)


Lesenswert?

Du musst für den PortC auch AVCC mit 5V und AGND mit GND verbinden.

von Justus S. (jussa)


Lesenswert?

frage ... atmega8 schrieb:
> Warum geht aber die verdammte Led nicht an?

man muss die LED schon auch anschließen...

von Spess53 (Gast)


Lesenswert?

Hi

>Frage:
>Warum geht aber die verdammte Led nicht an?

>Portc.0 = 1

Wie ist denn die Led angeschlossen?

MfG Spess

von frage ... atmega8 (Gast)


Lesenswert?

Nochmal, damit ich keine Fehler mache.


Vcc u. AVCC mit Pluspol +5 V Netzteil

AGND u. GND mit dem Negativpol des Netzteil verbunden.


So und warum geht es nicht?

Ja ..die Led ist eine Diode u. ich hab sie auch schon anderst 
angeschlossen

von ... (Gast)


Lesenswert?

Port zerschossen! LEDs brauchen einen Vorwiderstand! Ätsch!

von Spess53 (Gast)


Lesenswert?

Hi

>Ja ..die Led ist eine Diode u. ich hab sie auch schon anderst
>angeschlossen

Keine nichtssagende Prosa, sondern die Schaltung.

MfG Spess

von Thomas E. (thomase)


Lesenswert?

frage ... atmega8 schrieb:
> Ja ..die Led ist eine Diode u. ich hab sie auch schon anderst
> angeschlossen
Das meinte er nicht.

Klassisch wird eine Led mit Anode an Vcc und Kathode an den 
Controllerport angeschlossen. Wenn dem so ist, kannst du sie drehen und 
wenden, wie du lustig bist. Die leuchtet nicht wenn der Ausgang high 
ist. Sondern bei low. Nach dem Starten des Programms tut sie das dann 
auch kurz. Das geht aber so schnell, daß sie mit "Portc.0 = 1" wieder 
abgeschaltet wird, daß du davon gar nichts mitbekommst.



mfg.

von Joe (Gast)


Lesenswert?

$regfile = "m8def.dat"
$crystal = 1000000

Config Portc.0 = Output


do
   Portc.0 = 1
   wait 1
   Portc.0=0
   wait 1
loop

End

LED nur mit Vorwiderstand verwenden!
LED vorher prüfen.
LED an + und über einen Widerstand an -
Wenn das geht, LED an PortC.0 anschließen.

PortC.0 kann auch mit einem Voltmeter geprüft werden!
Schwank im Sekundentakt!

von frage ... atmega8 (Gast)


Lesenswert?

So...ich hab gerade den Port C mal durchgemssen.

Es liegen dort bei allen Pins 0,2 Volt an...NORMAL =?????

von Hubert G. (hubertg)


Lesenswert?

Wie ist der KOntroller beschalten (Schaltplan) und welches Programm ist 
drinnen.

von frage ... atmega8 (Gast)


Angehängte Dateien:

Lesenswert?

So hab ich den Atmega8 beschaltet

von ... (Gast)


Lesenswert?

Könntest Du auch die LED einzeichnen?

von frage ... atmega8 (Gast)


Angehängte Dateien:

Lesenswert?

so...


$regfile = "m8def.dat"
$crystal = 1000000


Config Portc.0 = Output


Portc.0 = 1


   Do


   Loop

von ... (Gast)


Lesenswert?

Mit der Beschaltung sollte schon was leuchten. Versuche einmal, das 
ganze auf Prt B.0 umszustellen. Und lass die LED mit oben geposteten 
Programm blinken (dann natürlich auf B.0).

von frage ... atmega8 (Gast)


Lesenswert?

$regfile = "m8def.dat"
$crystal = 1000000


Config Portb.0 = Output
Config Portb.1 = Output



   Do

Portb.0 = 1
Portb.1 = 1
Waitms 500
Portb.0 = 0
Portb.1 = 0
   Loop



Es passiert nichts.

Bei PC0-PC5 liegen 0,22 Volt an.


Ich packs nett

von Karl H. (kbuchegg)


Lesenswert?

frage ... atmega8 schrieb:
> $regfile = "m8def.dat"
> $crystal = 1000000
>
>
> Config Portb.0 = Output
> Config Portb.1 = Output
>
>
>
>    Do
>
> Portb.0 = 1
> Portb.1 = 1
> Waitms 500
> Portb.0 = 0
> Portb.1 = 0
>    Loop


mach da noch ein 2-tes Waitms rein, nachdem du die Pins auf 0 geschaltet 
hast. Denn sonst sind die ein paar µs auf Low, und das siehst du 
garantiert nicht. Wenn schon blinken, dann so, dass du als 
vergleichsweise langsamer Mensch da auch noch mitkommst.

von Karl H. (kbuchegg)


Lesenswert?

Wo kommen deine +5V her?
Netzteil ist schon klar - was ist das für ein Netzteil?

von frage ... atmega8 (Gast)


Lesenswert?

Kein Netzteil...hab es an den USB Port gehängt.

rotes Kabel = + 5, schwarzes Kabel = GND

von Eumel (Gast)


Lesenswert?

frage ... atmega8 schrieb:
> Portb.0 = 1
> Portb.1 = 1
> Waitms 500
> Portb.0 = 0
> Portb.1 = 0

An welchem Port ist denn nun deine LED. B oder C?

von frage ... atmega8 (Gast)


Angehängte Dateien:

Lesenswert?

Die LED ist an PORTC.0


Und hier das Ergebnis, das ich vom Atmega lesen als auch schreiben kann.

Warum aber LED nicht an und warum liegen bei Pin Portc.0-portc.5 = 0,22 
Volt an

von oldmax (Gast)


Lesenswert?

Hi
Befolge doch einfach den Rat, den man dir gibt. Auch wenn ich von Bascom 
nicht viel verstehe, so sehe ich doch, das du dir überhaupt nicht im 
Klaren bist, wie ein Controller funktioniert.
Dein erster Fehler, du schickst ein Beispielprogramm auf die Reise, was 
nicht vollständig ist.

frage ... atmega8 schrieb:
> Ich hab natürlich ein viel größeres Programm.

Dein zweiter Fehler, du gibst vermutlich auch nicht die komplette 
Beschaltung preis. Eine LED kann man ausprobieren, in dem man sie 
einfach zwischen VCC und GND hält (Mit vorwiderstand natürlich). Gehen 
beide Richtungen nicht, dann bekommst du sie mit einem Controller auch 
nicht an.
Dann mal genau hinsehen, wirklich nur 180 Ohm ? oder gar 18 K. Einfach 
mal den Widerstand messen.

frage ... atmega8 schrieb:
> Do
>
> Portb.0 = 1
> Portb.1 = 1
> Waitms 500
> Portb.0 = 0
> Portb.1 = 0
>    Loop
>
> Es passiert nichts.
>
> Bei PC0-PC5 liegen 0,22 Volt an.

und

frage ... atmega8 schrieb:
> Die LED ist an PORTC.0

passt ja nun gar nicht zusammen. Also, so geheim kann dein Programm 
nicht sein, das du uns nicht mitteilen kannst, was du treibst, wie du 
deinen Controller wirklich beschaltet hast und wie die aktuelle Software 
wirklich gestaltet ist. Ansonsten programmiere auch Port C wenn du da 
die LED dranhängen hast und nicht Port B
Gruß oldmax

von rintintin (Gast)


Lesenswert?

>Kein Netzteil...hab es an den USB Port gehängt.
>rotes Kabel = + 5, schwarzes Kabel = GND

Usb ist eine sehr "verseuchte" Spannungsquelle daher ist es dringend 
anzuraten an Vcc/GND und AVCC/GND jeweils einen 100nF Kerko 
anzuschließen.


Zum Bastel ist das keine so gute Idee, ein Kurzschluss ist schneller 
gebaut als man schauen kann und wenn dann der USB Port/Controller keine 
Schutzschaltung hat ist der im Eimer.

von frage ... atmega8 (Gast)


Lesenswert?

Jepp...hab den Fehler gefunden :D

Es war BASCOM.

Die Version 1.11.9.8.

Mein Brenngerät: usbasp v2.0

Ich compile jetzt zwar meine Programme weiter mit Bascom, aber brennen 
tue ich das Programm mit extrem burner avr.

Es klappt

von B.A. (Gast)


Lesenswert?

Zum beschreiben deines AVRs ist der "AVR8_Burn_O_Mat" sehr gut geeignet.
http://avr8-burn-o-mat.aaabbb.de/

von da (Gast)


Lesenswert?

Cool...dank Dir....

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.