www.mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AVR ISP bei hoher Quartzfrequenz fehlgeschlagen


Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo!
Ich beschäftige mich seit kurzem mit AVR Mikrocontrollern und möchte nun 
einen externen Quarz nutzen. Ich arbeite mit einem Mega 32 und WinAVR.

Mein Problem ist dass wenn ich den Mega32 mit einem 14,7456MHz Quarz 
takte ihn nicht mehr Programmieren kann (Fehlermeldung: avrdude: 
verification error, first mismatch at byte 0x0000 0x0c != 0x00) Nutze 
ich einen 8MHz Quarz oder den internen RC Oszillator funktioniert alles 
einwandfrei. Um das Programmieren langsamer zu machen habe ich erfolglos 
versuche AVRDude mit -i 10000 auszubremsen.
Liegt es vielleicht an den Fuses?
Die habe ich für den 14,7456Mhz Quarz mit Ponyprog folgendermaßen 
eingestellt :
[v]JTAG
[v]CKOPT
[v]BOOTSZ1
[v]BOOTSZ0
[v]SUT1
[ ]SUT0
[ ]CKSEL3
[v]CKSEL2
[ ]CKSEL1
[ ]CKSEL0

Bitte helft mir. So langsam bin ich am verzweifeln:-/

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Darf ich also annehmen, daß CKOPT nicht programmiert ist? Dann mach das 
mal. Ist über 8Mhz notwendig.

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
CKOPT ist doch programmiert

Im allgemeinen gilt doch:

Status       | Ponyprog | AVR Datenplatt
programmed   =   [v]    =   0
unprogrammed =   [ ]    =   1

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Datenplatt ist gut! :-D

Passen die Kondensatoren am Quarz (20-27pF) ?

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

CKSEL2 muß 1 sein! Also in Pony alle Haken bei CKSEL raus.

CKSEL3...0 1011 ist Ceramic-Resonator 0,4-0,9Mhz.
Datenblatt Tabelle 4 Seite 24

Gruß aus Berlin
Michael

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich habe 22pF Kondensatoren verwendet. Fuses habe ich auch verändert. 
Aber das selbe Problem besteht immernoch. Es liegt definitiv nicht an 
den Fuses. Wenn ich den internen Oszillator nutze funktioniert das 
flashen problemlos. Ich habe gerade im Pollinboard Quarz mit meinem 
14,...MHz  Quarz getauscht und ich kann den Mega32 erfolgreich flashen.
Es muss also an meiner Schaltung liegen.
Was kann ich denn da falsch gemacht haben? Quarz an XTAL1 und 2 und über 
zweimal 22pF  an GND. Mit internem Takt funktioniert alles wie es soll 
genauso wenn ich den Mega32 im Pollinboard programmiere und zurück in 
meine Schaltung setze. Nur das Flashen geht nicht:-(

Autor: Knut Ballhause (Firma: TravelRec.) (travelrec) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Kondensatoren vielleicht kaputt, unsichtbare Kurzschlußbrücken, 
Leitungen zum Quarz zu lang (>10cm?). Mach doch mal ein Foto von Deiner 
Schaltung (oder einen Scan).

Autor: Tim (Gast)
Datum:
Angehängte Dateien:

Bewertung
0 lesenswert
nicht lesenswert
Ich sitze schon so einige Stunden an dem Problem und bin der Meinung, 
dass keine Kurzschlussbrücken oder fehlende Verbindungen gibt. Im Anhang 
der Schaltplan.

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

hast Du das mit den Fusebits (CKSEL2) überprüft?

PS: bei Deinem Schaltplan bekomme ich ja Augenschmerzen, warum legst Du 
denn die Verdrahtung so durch die Bauteile???

Den "Bildformate"-Kommentar überlasse ich anderen. ;)

Gruß aus Berlin
Michael

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ja das habe ich getan Michael.
Die Leitungen vom Mikrocontroller zum Quarz und den Kondensatoren sind 
kürzer als 20mm. Einzig die ISP Leitungen sind recht lang(150mm) aber 
ich denke daran liegts nicht, denn mein Flashkabel ist recht kurz.

Autor: Rene (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
wieder jemand der an pony verzweifelt :-/ ... probiers mal damit:

http://www.myavr.de/download/myAVR_WorkpadPLUS_Demo.exe

unter Extras hast ne nette Oberfläche um die Fuses ordentlich zu 
setzen...

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich verzweifel doch nich an den Fuses. Die passen doch mein aktuelles 
Problem:
Mit internem Takt funktioniert alles wie es soll
genauso wenn ich den Mega32 im Pollinboard programmiere und zurück in
meine Schaltung setze. Nur das Flashen geht nicht mit externem Takt:-(

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

mich hätte ja das Ergebnis interessiert...
CKSEL3...0 in Pony ALLE haken aus?
Sonst ist es falsch!

Ab 8MHz ändert sich da nichts mehr. Wenn der Quarz nicht Schrott ist 
(meine Ausbauquarze gehen komischweise immer ;)), dann muß es schwingen.
Auch mit 16MHz auf einem Steckbrett mit Mega8/16/162 hatte ich noch nie 
Probleme, meist sogar CKOPT vergessen und lief trotzdem stabil bei 5V.

Wenn ich Dich richtig verstanden habe, ist der Stand doch so: mit einem 
8MHz Quarz spielt der Kram, mit einem 14,7456MHz in der GLEICHEN 
Schaltung OHNE WEITERE Änderung dagegen nicht?

Gruß aus Berlin
Michael

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo Michael,
ich habe doch die Fuses schon so gesetzt wie du gemeint hast. Ich habe 
jetzt den Quarz in meiner Platine gewechselt. Es funktioniert auch nich 
mit 8MHz. :-( Nur mit internem Takt gehts:-(((

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hier nochmal die komplette Fehlermeldung:

> "make.exe" program
avrdude -p atmega32 -P com1     -c ponyser    -i 10000 -U 
flash:w:main.hex

avrdude: AVR device initialized and ready to accept instructions

Reading | ################################################## | 100% 
0.00s

avrdude: Device signature = 0x1e9502
avrdude: NOTE: FLASH memory has been specified, an erase cycle will be 
performed
         To disable this feature, specify the -D option.
avrdude: erasing chip
avrdude: reading input file "main.hex"
avrdude: input file main.hex auto detected as Intel Hex
avrdude: writing flash (204 bytes):

Writing | ################################################## | 100% 
0.19s

avrdude: 204 bytes of flash written
avrdude: verifying flash memory against main.hex:
avrdude: load data flash data from input file main.hex:
avrdude: input file main.hex auto detected as Intel Hex
avrdude: input file main.hex contains 204 bytes
avrdude: reading on-chip flash data:

Reading | ################################################## | 100% 
0.19s

avrdude: verifying ...
avrdude: verification error, first mismatch at byte 0x0000
         0x0c != 0x00
avrdude: verification error; content mismatch

avrdude done.  Thank you.

make.exe: *** [program] Error 1

> Process Exit Code: 2
> Time Taken: 00:01

Autor: Michael U. (amiga)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

der ULN2803 ist ja ein Transistortreiber, vermutlich ist Deinem passiven 
Programmieradapter die Last zu hoch und die Flanken von MOSI/MISO/SCK 
sind irgendwie versaut. Da Du den Chip ja prinzipiell bei 8/16MHz 
ansprechen kannst, sollte der Quarz auch schwingen und ich würde jetzt 
sowas vermuten.

Falls der Kram alles gelötet ist, sicher ein Problem: sonst mal den 2803 
rausnehmen.

Gruß aus Berlin
Michael

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der ULN2803 ist eigentlich garnicht mit den SPI verbunden und die 
meisten aktiven Komponenten wie auch der ULN befinden sich noch garnicht 
auf der Platine um solche Probleme auszuschliessen.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.