Forum: Mikrocontroller und Digitale Elektronik Probleme mit zwei AVRs


von M. M. (mrmcchicken)


Lesenswert?

Hallo, zwei AVRs die ich hier habe machen Probleme. Insgesamt waren es 
mehr, allerdings konnte ich diese noch Retten. Die zwei die hier übrig 
geblieben sind wollen immer noch nicht und ich weiß auch nicht mehr was 
ich noch tun könnte.

Es geht um einen Atmega168 und einen Atmega328.
Stecke ich den Atmega328 in mein STK500, wird dieser als ATA6614Q 
erkannt.
Woher kann das kommen? Dieser Fehler scheint mir sehr seltsam.
Der Atmega168 wird gar nicht erkannt. Ich bekomme die Meldung: ,,Unable 
to enter programming mode." Dies geschah nachdem ich die Fuse CKDIV8 
gesetzt habe. Die Takteinstellung war auf Low-Freq Crystal eingestellt. 
Ich wollte probieren wie tief ich mit der Frequenz gehen kann.
Der Quarz schwingt auch an, jedoch kann ich nicht auf den AVR zugreifen. 
Die ISP Frequenz habe ich auf 1,2kHz gestellt. tiefer geht leider im AVR 
Studio nicht.

Hat jemand Ideen wie ich die AVRs retten kann?

von Thomas E. (thomase)


Lesenswert?

M. M. C. schrieb:
> Hat jemand Ideen wie ich die AVRs retten kann?

Ein STK500 kann doch HV.

mfg.

von M. M. (mrmcchicken)


Lesenswert?

Thomas Eckmann schrieb:

> Ein STK500 kann doch HV.
>
> mfg.

Hatte ich vorher nie benutzt, scheint aber prima zu klappen. Habe den 
Atmega168 retten können, Danke! Der Atmega328 fühlt sich immernoch im 
falschen Körper. Schade drum.

Hat das HV Programmieren irgendwelche Nachteile/Folgen wenn man das 
benutzt/zu oft macht?
Dem Atmega168 schienen zu niedrige Frequenzen ja nicht gut zu bekommen 
(4,096kHz). Dann kann ich den nicht mehr via ISP ansprechen. Liegt das 
an der ISP Frequenz? Diese kann ich im AVR Studio auf min. 1,2Khz 
setzen.
Komme ich auch irgendwie tiefer?

von OldMan (Gast)


Lesenswert?

M. M. C. schrieb:
> Dem Atmega168 schienen zu niedrige Frequenzen ja nicht gut zu bekommen
> (4,096kHz). Dann kann ich den nicht mehr via ISP ansprechen. Liegt das
> an der ISP Frequenz? Diese kann ich im AVR Studio auf min. 1,2Khz
> setzen.
> Komme ich auch irgendwie tiefer?

Die AVRs benötigen einen Mindesttakt. Mit Deinen 4 kHZ wird das nix.
Und ISP-Clock mit 1,2 kHz wird nicht funktionieren.
Schau Dir bitte einmal die Datenblätter von den zwei Helden an. 
Augenmerk: CLOCK-System!
Ich vermute, dass Du eine Art Demoboard bauen willst. Da gibt es andere 
und bessere Lösungen, als den Takt bis fast zu DC zu verringern.
Schreib doch bitte einmal was Du eigentlich damit bezwecken möchtest.

von S. Landolt (Gast)


Lesenswert?

32768 Hz /8 /4 = 1024 Hz: die ISP-Frequenz muss darunter liegen.

> Die AVRs benötigen einen Mindesttakt. Mit Deinen 4 kHZ wird das nix.
?

von Martin S. (led_martin)


Lesenswert?

M. M. C. schrieb:
> (4,096kHz). Dann kann ich den nicht mehr via ISP ansprechen. Liegt das
> an der ISP Frequenz? Diese kann ich im AVR Studio auf min. 1,2Khz
> setzen.

Das kann nicht funktionieren, es liegt aber nicht an den 4,096kHz, die 
ATmegas können bis 0 runter, wenn eine gewisse Flankensteilheit 
eingehalten wird, im Datenblatt zu lesen, auf der ersten Seite:

> – Fully Static Operation

Dein Problem ist die ISP Frequenz, die darf maximal 1/4 des 
Systemtakts sein, also bei Dir max. 1,024kHz.

Mit freundlichen Grüßen - Martin

von M. M. (mrmcchicken)


Lesenswert?

Martin Schlüter schrieb:

> Dein Problem ist die ISP Frequenz, die darf maximal 1/4 des
> Systemtakts sein, also bei Dir max. 1,024kHz.
>
> Mit freundlichen Grüßen - Martin

Kann ich die ISP Frequenz irgendwie weiter herunter beklommen?
Gibt es andere Programme neben AVR Studio welche das STK500 unterstützen 
und mit denen ich die Frequenz tiefer kriege?

von Falk B. (falk)


Lesenswert?

Ja, mein AVR ISP MK II geht bis 50 Hz runter.

von M. M. (mrmcchicken)


Lesenswert?

Falk Brunner schrieb:
> Ja, mein AVR ISP MK II geht bis 50 Hz runter.

Hängt das also von der Hardware ab? Na da wundert es mich, dass das 
STK500 nicht tiefer als 1,2kHz kommt. Da bleibt dann halt erstmal nur 
HVPP über.

von Falk B. (falk)


Lesenswert?

Bastel dir einen schnellen Taktgenerator aus einem NE555, 74HC14, 74HC04 
oder sonstwas. Selbst ein anderer AVR kann als Taktgenerator 
programmiert werden. Den Takt klemmst du an den XTAL1 Pin und los 
geht's.

von Christian K. (the_kirsch)


Lesenswert?

Das STK500 hat doch einen programmierbaren Taktgenerator onboard

von S. Landolt (Gast)


Lesenswert?

> Den Takt klemmst du an den XTAL1 Pin und los geht's.

Das soll wohl eher XTAL2 heißen.

von Falk B. (falk)


Lesenswert?

@ S. Landolt (Gast)

>> Den Takt klemmst du an den XTAL1 Pin und los geht's.

>Das soll wohl eher XTAL2 heißen.

Nö, XTAL1 ist der TaktEINGANG.

von S. Landolt (Gast)


Lesenswert?

Ausprobiert?! Wir reden von der Einstellung low frequency crystal.
Ich habe es hier vor mir auf einem ATmega88.

von c-hater (Gast)


Lesenswert?

OldMan schrieb:

> Die AVRs benötigen einen Mindesttakt. Mit Deinen 4 kHZ wird das nix.

Quatsch. AVRs benötigen einen Mindest-ISP-Takt nur für ein oder zwei 
völlig unwichtige Sachen. Mir fällt da spontan nur die Programmierung 
des EEPROM bei einigen (eher nur historisch wertvollen) AVR-Typen ein.

Wie auch immer, alles was einen normalerweise interessiert (Fuses und 
Flash) läßt sich bei beliebig geringer ISP-Frequenz programmieren, also 
auch bei 4kHz, und dies gilt selbst bei diesen wenigen und eher nur noch 
historisch wertvollen AVRs...

von Falk B. (falk)


Lesenswert?

@c-hater (Gast)

>> Die AVRs benötigen einen Mindesttakt. Mit Deinen 4 kHZ wird das nix.

>Quatsch. AVRs benötigen einen Mindest-ISP-Takt nur für ein oder zwei
>völlig unwichtige Sachen. Mir fällt da spontan nur die Programmierung
>des EEPROM bei einigen (eher nur historisch wertvollen) AVR-Typen ein.

Für den GESAMTEN ISP Vorgang!

>Wie auch immer, alles was einen normalerweise interessiert (Fuses und
>Flash) läßt sich bei beliebig geringer ISP-Frequenz programmieren,

Falsch!

Denn ISP läuft über SPI, und dabei ist der AVR ein SPI Slave, welcher 
SPI Takt & Daten mittels CPU Takt abtastet. Und dafür gilt, dass F_CPU > 
1/4 F_SPI sein muss!

von S. Landolt (Gast)


Lesenswert?

> Und dafür gilt, dass F_CPU > 1/4 F_SPI sein muss!

Nanu! - ?

von Christian K. (the_kirsch)


Lesenswert?

Das STK500 hat zwei Taktquellen.

Einmal ein per Software einstellbare Clock,

und ein Quartssockel mit Oszillatorschaltung, der daraus einen Takt 
generiert.

Beides geht zu einem 3-Pin Jumper, der dann eines davon an den XTAL1-Pin 
der jeweiligen DIL-Sockel legt.

Der AVR könnte per Fuse sogar auf External Clock eingestellt sein, und 
würde vom STK500 mit einem Takt versorgt werden.


Inwieweit jetzt die Fuse "External Low-frequency Crystal" inkompatibel 
mit einem extern erzeugten Clock ist, weis ich nicht.

Mit "External Crystal/Ceramic Resonator" gab es nie Probleme.

: Bearbeitet durch User
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.