Forum: Mikrocontroller und Digitale Elektronik ATMEGA8 auslesen


von Armin K. (schauriman)


Angehängte Dateien:

Lesenswert?

Hallo
also als absoluter Neuling beim programmieren scheitere ich schon am 
Anfang :-(

Ich versuche auf einem Steckbrett einen ATMEGA8 über ISP auszulesen.

Ich denke mal ich habe alle wichtigen Sachen angeschlossen.

Wenn ich den AVR in eine funktionierende Schaltung einstecke ( ein 
nachgebautes Temperaturmesssystem ) dann kann ich ihn auslesen und 
beschreiben.

Ich habe dann mal den AVR in dieser Schaltung gelöscht, dann mit 
Standardwerten beschrieben, wieder nichts auf dem Steckbrett.

Immer " Timeaout beim Starten des Programmiermodus "

Benötige ich unbedingt den Quarz ? , soweit ich verstanden habe geht es 
im Auslieferungszustand auch ohne ?

hat vielleicht jemand einen Tip für mich ??

von Amperhochskiller (Gast)


Lesenswert?

Armin K. schrieb:
> Wenn ich den AVR in eine funktionierende Schaltung einstecke ( ein
> nachgebautes Temperaturmesssystem ) dann kann ich ihn auslesen und
> beschreiben.

Mit oder ohne Quarz?

Armin K. schrieb:
> wieder nichts auf dem Steckbrett.

Wenn in deiner bestehenden Schaltung ein Quarz betrieben wird
dann brauchst du das auf deinem Steckbrett auch.

von Armin K. (schauriman)


Lesenswert?

Auch wenn der AVR gelöscht ist ??

von Amperhochskiller (Gast)


Lesenswert?

Armin K. schrieb:
> Auch wenn der AVR gelöscht ist ??

Ja.
Denn Flash löschen löscht nicht die Quarz-Konfiguration.

von Amperhochskiller (Gast)


Lesenswert?

Armin K. schrieb:
> soweit ich verstanden habe geht es
> im Auslieferungszustand auch ohne ?

Ja, aber den Auslieferungszustand erreichst du ja nicht bei
einem Prozessor der schon programmiert wurde.

von Armin K. (schauriman)


Lesenswert?

habe Fuse auf Standard gesetzt !

von Amperhochskiller (Gast)


Lesenswert?

Armin K. schrieb:
> habe Fuse auf Standard gesetzt !

Da es nur eine Fuse gibt ist ja alles in Ordnung.
Der Thread kann geschlossen werden.

von dunno.. (Gast)


Lesenswert?

Ich finde besonders auf einem Steckbrett sollte man mehr Kondensatoren 
haben als in deiner Zeichnung.

schau dir mal die hier an, da gibts ein paar mehr 100nF Kondensatoren:

http://www.mikrocontroller.net/articles/AVR-Tutorial:_Equipment#Selbstbau

wenn deine fuses auf den internen oszillator gestellt sind, brauchst du 
natürlich keinen quarz :)

von Amperhochskiller (Gast)


Lesenswert?

dunno.. schrieb:
> wenn deine fuses auf den internen oszillator gestellt sind, brauchst du
> natürlich keinen quarz :)

Bleibt die klitzekleine Frage was Standard ist. Eins oder Null.

Armin K. schrieb:
> habe Fuse auf Standard gesetzt !

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Fabirkfrische Mega8 laufen mit dem internen 1Mhz Oszillator. VCC und 
AVCC müssen mit Spannung versorgt werden und alle GND Anschlüsse sollten 
auch benutzt werden.

von Armin K. (schauriman)


Lesenswert?

Alle Gnd sind an Masse angeschlossen und auch die 7 , 20 und 21 sind auf 
5 V
Mal sehen ob ich noch einen Quarz finde sonst warte ich erstmal bis mein 
neu bestellter AVR kommt

Danke erstmal, falls jemand noch ne andere Idee hat bitte melden

von Amperhochskiller (Gast)


Lesenswert?

Armin K. schrieb:
> Danke erstmal, falls jemand noch ne andere Idee hat bitte melden

Dich mit "der Fuse" auseinandersetzen. Offensichtlich existiert da
noch Verbesserungpotential.

Armin K. schrieb:
> habe Fuse auf Standard gesetzt !

Sonst wüsstest du dass du das auch in dieser Schaltung
verändern kannst:

Armin K. schrieb:
> Ich habe dann mal den AVR in dieser Schaltung gelöscht,

von Michael K. (tschoeatsch)


Lesenswert?

Wenn dein Kontroller auf Quarzbetrieb 'gefused' wurde, braucht der immer 
einen Quarz oder zur Not einen externen Takt um neu programmiert zu 
werden oder um die fuses neu zu stellen. Ich rede aber nur über 
Programmieren über isp, also der normale Standard, nicht 
HV-Programmierung)

von S. Landolt (Gast)


Lesenswert?

Probeweise die 100 nF an Reset weglassen.

von Dietrich L. (dietrichl)


Lesenswert?

Matthias S. schrieb:
> Fabirkfrische Mega8 laufen mit dem internen 1Mhz Oszillator. VCC und
> AVCC müssen mit Spannung versorgt werden und alle GND Anschlüsse sollten
> auch benutzt werden.

... und je ein 100nF an VCC/GND und AVCC/GND.

von Alexander S. (alesi)


Lesenswert?

Armin K. schrieb:
> Ich versuche auf einem Steckbrett einen ATMEGA8 über ISP auszulesen.

Wie stabil ist die Versorgungsspannung auf dem Steckbrett?
Ich habe einmal mein Steckbrett mit den 5V vom Atmel STK500 versorgt.
Einige 100 µF zum Puffern auf dem Steckbrett haben nicht gereicht,
stabil lief es erst mit > 2000 µF.

Armin K. schrieb:
> Immer " Timeaout beim Starten des Programmiermodus "

Mit welchem ISP Takt programmierst Du? Evtl. den Takt reduzieren.

Beschreibe mal den gesamten Aufbau, die Programmierumgebung
und die Parameter beim Programmieren.

von Armin K. (schauriman)


Lesenswert?

Ich habe jetzt den IC nochmal in die funktionierende Schaltung gesetzt 
und gelöscht, dann die Fuse auf Standard ( laut myAVRProg Tool ) gesetzt 
und gebrannt.
Dann wieder ausgelesen:
Fuse für Osz. ist immer noch auf extern.
Wie kann ich das ändern ?

von Matthias S. (Firma: matzetronics) (mschoeldgen)


Lesenswert?

Armin K. schrieb:
> Wie kann ich das ändern ?

Setzen der Fuses ist ein völlig anderer Vorgang als das Flashen eines 
Programmes. Es hilft also nichts, die Fuses umzustellen und dann ein 
Programm zu flashen, sondern man muss die Fuses flashen. Dafür hat auch 
das myAVR eine extra Sektion.
Hier wirds beschrieben:
http://projekte.myavr.de/index.php?sp=pages/kleiner_bascom_avr_kurs_2

von Amperhochskiller (Gast)


Lesenswert?

Armin K. schrieb:
> dann die Fuse auf Standard

Du hast es immer noch nicht kapiert. Lies das Datenblatt.
Es gibt nicht nur eine Fuse, es gibt eine Menge davon.

Das Schlüsselwort für deinen Mega8 ist "SUT_CKSEL"

von Tobiwan (Gast)


Lesenswert?

Überprüf mal die Anschlüsse der ISP. Hatte selbst da schon mal einen 
Dreher und ist dann mit dem gleichen  Fehler ausgestiegen.

von Armin K. (schauriman)


Lesenswert?

"Amperhochskiller"
bei " Standardwerte einstellen" stellt der AVR Programmer alle auf 
Auslieferungswerte ein, auch CKSEL auf den internen 1 MHz
nur leider lassen sich die Daten nicht ändern !
Nach dem Schreiben der Fuse und Lock ist alles wieder wie zuvor !

von Marc V. (Firma: Vescomp) (logarithmus)


Angehängte Dateien:

Lesenswert?

Armin K. schrieb:
> bei " Standardwerte einstellen" stellt der AVR Programmer alle auf
> Auslieferungswerte ein, auch CKSEL auf den internen 1 MHz
> nur leider lassen sich die Daten nicht ändern !
> Nach dem Schreiben der Fuse und Lock ist alles wieder wie zuvor !

 Hier.
 So sehen Fuses für Int. Oszi und 8MHz (Low Fuse).
 Vergleiche das mal mit deinen  "Standardwerten".

: Bearbeitet durch User
von Marc V. (Firma: Vescomp) (logarithmus)


Angehängte Dateien:

Lesenswert?

Armin K. schrieb:
> Nach dem Schreiben der Fuse und Lock ist alles wieder wie zuvor !

 Und so sieht Auslieferungszustand aus (1MHz).

von Armin K. (schauriman)


Lesenswert?

genau so will ich es haben, stelle es so ein aber es lässt sich nicht 
ändern

nach dem Schreiben der Fuse ist alles wie vorher.

die Lock Fuse sind gesetzt und lassen sich auch nicht ändern.
es ändert sich an denen auch nichts beim Löschen des chip. ???

von Marc V. (Firma: Vescomp) (logarithmus)


Lesenswert?

Armin K. schrieb:
> genau so will ich es haben, stelle es so ein aber es lässt sich nicht
> ändern
>
> nach dem Schreiben der Fuse ist alles wie vorher.

 Da ich einen eigenen Prommer habe, kann ich nicht wissen wie das
 bei dir funktioniert, aber bei den meisten musst du zuerst irgend-
 eine Option checken, um überhaupt mit den Fuses rumzuspielen.

 Meistens ist es ein Checkbox mit "Expert Mode" oder so ähnlich.
 Wahrscheinlich ist es bei dir auch so.

von Armin K. (schauriman)


Angehängte Dateien:

Lesenswert?

so stelle ich es ein, dann auf schreiben und danach kurz aus, wieder an 
und auslesen.
Die Fuse sind unverändert wie vorher auf ext. Quarz gestellt

von Jacko (Gast)


Lesenswert?

100 nF an den richtigen Punkten sind schon OK.
Ohne die gehts mal - und mal nicht...

Aber mit Fuse-Bytes = Quarz geht gleich garnix ohne Quarz!

Es sei denn, man simuliert den Quarz auf dem Steckbrett!

Wenn man die Möglichkeit hat, eine Taktfrequenz (1..8 MHz)
mit passendem Pegel in den XTAL-1 Pin einzuspeisen,
funktioniert plötzlich das ISP - und alle Schlaumeier
wundern sich! ;-)

von Armin K. (schauriman)


Lesenswert?

So,
habe jetzt neuen AVR auf die Schaltung gesteckt und....
funktioniert !!
Kann ihn ganz normal auslesen.
Liegt dann scheinbar an den gesetzten Fuse.
Darum kümmere ich mich aber später, jetzt gehts ans üben
mit nem " sauberen " Chip

Danke erstmal für eure Hilfe

Gesundes Neues Jahr übrigens noch an alle !!

MfG

von Alex W. (a20q90)


Lesenswert?

ARef sollte, wenn programmiert, nicht auf VCC gelegt werden! Bei 
falscher Fuse-Einstellung (z.b. 2,56V) hast du ein Problem wenn da 5V 
anliegen!

Besser ARef mit einem C gegen Masse, wenn nicht unbedingt benötigt!

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.