Flashprobleme AT644

Das Forum für die Software der FPGA-Basisplatine
Antworten
joedawson
kann c't-Lab-Bausätze bestellen
kann c't-Lab-Bausätze bestellen
Beiträge: 24
Registriert: 25.11.2009, 13:38

Flashprobleme AT644

Beitrag von joedawson »

Howdy!

wie in einem anderen Thread ja bereits besprochen, hab ich mir ne Parallelportkarte zugelegt um eben den 644er auf dem FPGA-Board flashen zu können. Nun hat sich allerdings Ponyprog standhaft geweigert, diesen Port zu erkennen. Avrdude hingegen war freudig dabei und meldete sofort Kommunikation zum MC. Also flugs versucht zu programmieren mit der Beispielzeile die im Beispiel für den ct-bot gegeben ist:
avrdude -c stk200 -P /dev/parport0) -p m32 -U flash:w:"FPGA.hex":i - da hat er über die falsche ID gemeckert. also -p m644 gesetzt, schon lief er klaglos fast durch: am Ende behauptete er, irgendwelche Fuses hätten siche geändert und ob ich sie zurücksetzten will. Antwort y - und seitdem macht das Ding keinen Mucks mehr.
Wie krieg ich das nun wieder zurück unter die Lebenden? Oder einfach den uC runterklopfen und mit nem neuen probieren? Und falls es nur so geht, was muss ich dann das nächste mal anders machen? Kriegt man das mit dem BlueMP3-Adapter überhaupt gebacken, oder ist spätestens jetzt ein STK500 als Investition fällig?

Vielen Dank für die Tips,
Greetz Joe
HSiebrecht
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 116
Registriert: 30.11.2007, 23:50
Wohnort: Westfalen

Re: Flashprobleme AT644

Beitrag von HSiebrecht »

Hallo Joe,

benutze PonyProg, eventuell hilft Dir die Anleitung aus dem "neuen WIKI", da gibt es Beispiele für Avrdude, allerdings kein direktes Beispiel für den AT644 mit den richtigen Fusebits. Siehe :

http://thoralt.ehecht.com/wiki/index.ph ... re_flashen
Viele Grüße

Helmut

Die meisten Desaster in der IT Welt haben eine gemeinsame Ursache: Wir machen mal eben.
VGOE
kann c't-Lab-Bausätze löten
kann c't-Lab-Bausätze löten
Beiträge: 45
Registriert: 26.10.2009, 10:56

Re: Flashprobleme AT644

Beitrag von VGOE »

Hiho,
die Fuses sind bei der Auslieferung anders gesetzt, als für den Betrieb notwendig.

(siehe https://www.heise.de/ct/projekte/machmi ... areFlashen)

Dort findest Du auch einen Hinweis, wie man evtl. den Mega reaktivieren kann, ohne gelich eine Lötorgie zu starten.

CU
Volker
joedawson
kann c't-Lab-Bausätze bestellen
kann c't-Lab-Bausätze bestellen
Beiträge: 24
Registriert: 25.11.2009, 13:38

Re: Flashprobleme AT644

Beitrag von joedawson »

Ich hätte ja liebend gerne Ponyprog benutzt, das wollte aber eben nicht. Vielleicht gehts ja über Umweg VMware, unter Linux scheint der Parallelport ja einwandfrei zu tun.

Den Artikel auf heise zum Thema Wiederbelebung hab ich schon gelesen, aber leider nicht ganz verstanden. Wie ist das gemeint mit dem "oszillatorsignal an xtal1 anlegen"? Von einem anderen, laufenden Board den Quarz rüberbrücken, oder wie? Deswegen auch die Frage nach dem STK500, das wird ja da erwähnt dass es damit gehen könnte - ich hab aber keines und auch kein anderes ATmega-Board hier.

Greetz Joe
VGOE
kann c't-Lab-Bausätze löten
kann c't-Lab-Bausätze löten
Beiträge: 45
Registriert: 26.10.2009, 10:56

Re: Flashprobleme AT644

Beitrag von VGOE »

Hiho,
einfach ein 1 - 16MHz Signal (TTL) an den Pin Xtal1 legen. Dies kann z.B. von einem Oszillator Baustein stammen (so einer, wie auf dem FPGA Board) der von einem alten Main-Board stammt. Oder einfach selber einen Schwinger aufbauen.
PatHoff
kann c't-Lab-Bausätze löten
kann c't-Lab-Bausätze löten
Beiträge: 34
Registriert: 02.10.2009, 23:47

Re: Flashprobleme AT644

Beitrag von PatHoff »

Hallo Joe,
joedawson hat geschrieben:Ich hätte ja liebend gerne Ponyprog benutzt, das wollte aber eben nicht.
Hast Du noch einen seriellen Port am PC ? Ich hatte zwar keinen Parallel-Port, dafür aber noch einen seriellen. Dafür habe ich dann den auf der PonyProg-Seite beschriebenen passiven SIprog-Adapter zusammen gebastelt (ein paar Widerstände und Transistoren). Mit dem läuft PonyProg klaglos und ich habe auch den Mega644 auf der FPGA-Platine damit programmieren können.

Mit Parallel-Ports auf Zusatzkarten (PCI oder PCIe) habe ich auch schlechte Erfahrungen gemacht: PonyProg erkennt sie alle nicht. Jedenfalls alle bei Conrad angebotenen Karten mit MosChip-Chipsatz.
Ich habe seit gestern den USBprog. Den unterstütz das AVRStudio direkt (als AVR ISP-II Clone). Ich kann damit ja mal die Fuses auslesen und dann posten.

Gruß !
Patrick
joedawson
kann c't-Lab-Bausätze bestellen
kann c't-Lab-Bausätze bestellen
Beiträge: 24
Registriert: 25.11.2009, 13:38

Re: Flashprobleme AT644

Beitrag von joedawson »

Hi Patrick,

leider hab ich nicht mal nen seriellen (legacy free) :-( Aber ich hab extra schon drauf geachtet, dass es eben nicht der MosChip-Satz ist, sondern Oxford Semi. Hat nur leider offensichtlich nix gebracht. Blöderweise ist meine Sammlung an Bauteilen hier im Moment sehr beschränkt, ich muss das ganze wohl vertagen bis ich nächste Woche wieder im Büro bin.

Greetz Joe
VGOE
kann c't-Lab-Bausätze löten
kann c't-Lab-Bausätze löten
Beiträge: 45
Registriert: 26.10.2009, 10:56

Re: Flashprobleme AT644

Beitrag von VGOE »

Du brauchst keine speziellen Bauteile. Ein 7400 (NAND) reicht völlig aus. Dazu einen Widerstand und einen Kondensator, fertig ist der Schwinger. Die Frequenz kann man näherungsweise bestimmen mit:

f = 1 / (2 * R * C)

Für 5Mhz benötigst Du demnach: Widerstand: 100R Kondensator: 1NF

Schaltung: Pin1 und Pin2 zusammen schalten
Widerstand von Pin3 nach Pin1/2
Kondensator von Pin 1/2 nach Masse
fertig
für eine sauberes Signal kannst Du noch pin 4 und 5 an Pin 3 Schalten und dann an Pin 6 Deinen Takt abnhemen.

OK, die Frequenz ist UNGEFÄHR 5MHz, aber es kommt auf ein paar mehr oder weniger sowiso nicht an.
CU
Volker
joedawson
kann c't-Lab-Bausätze bestellen
kann c't-Lab-Bausätze bestellen
Beiträge: 24
Registriert: 25.11.2009, 13:38

Re: Flashprobleme AT644

Beitrag von joedawson »

An dieser Stelle mal vielen Dank für die vielen Tips, aber im Moment ist das wohl alles nicht umsetzbar hier - mein Bastelmaterial ist wirklich eingeschränkt (ich glaub, Lötzinn und ein paar Stiftleisten sind noch da), weil ich zuhause deutlich mehr code als löte. Die einzige Lösung die mir gerade eingefallen ist, wäre mit nem uC der gerade hier rumschwirrt eine Schwingung zu erzeugen... nach nem ersten Test komm ich da auf etwa 1,2MHz. Blöderweise läuft der mit 3,3V, also ist auch der Schwingungspegel entsprechend nur ca. 3V. Der 644er kann auch 3,3V, aber vmtl. nicht auf dem FPGA-Board, oder? Ansonsten könnte man da ja evtl. tricksen?

Greetz Joe
Benutzeravatar
ompf
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 168
Registriert: 19.01.2008, 13:03
Wohnort: Dortmund

Re: Flashprobleme AT644

Beitrag von ompf »

Ausprobieren, 3,3V könnten reichen.

Sonst musst Du mal Deine alten Mainboards durchsehen, ob da irgendwo noch ein Quarzoszillator drauf ist. An Pin 8 (unten rechts) kommt der Takt raus. Massen verbinden, Kabel dran und einspeisen.


Gruß
Patrick
joedawson
kann c't-Lab-Bausätze bestellen
kann c't-Lab-Bausätze bestellen
Beiträge: 24
Registriert: 25.11.2009, 13:38

Re: Flashprobleme AT644

Beitrag von joedawson »

Bin jetzt grade am Testen. Also: Mit nem kleinen ARM erzeuge ich ~1.27MHz Takt mit 3Vpp (mehr gibt das bisschen Ausgangstreiber anscheinend nicht her). Das geht auf XTAL1 (Pin 8) am 644er, GNDs der beiden Boards sind verbunden. Sollte laut Beschreibung eigentlich reichen, aber avrdude meldet immer noch "AVR device not responding" Hab ich vielleicht da was übersehen?

Greetz Joe
PatHoff
kann c't-Lab-Bausätze löten
kann c't-Lab-Bausätze löten
Beiträge: 34
Registriert: 02.10.2009, 23:47

Re: Flashprobleme AT644

Beitrag von PatHoff »

Hallo Joe,

Ich habe mal die ATmega644-Fuse-Bits meines funktionierenden FPGA-Moduls mit AVRStudio 4.16 und einem AVRISP-mkII (eigentlich der USBprog mit AVRISP-mkII-Clone-Firmware) ausgelesen :
Fusebits_Mega644.jpg
Die dort angegebenen Fuse-Bits in Hex-Schreibweise müsste man auch bei avrdude angeben.
Möglicher weise hilft Dir das jetzt nicht mit dem ATmega644 weiter, der schon "ver-fused" ist. Aber vielleicht später, wenn er mal wieder geht und Du die Fuses neu setzen musst.
joedawson hat geschrieben:... aber avrdude meldet immer noch "AVR device not responding" Hab ich vielleicht da was übersehen?
Auf der Seite http://www.mikrocontroller.net/articles/AVR_Fuses unter der Überschrift "Taktquellen Fuse Einstellung" steht etwas mehr zur Wiederbelebungs-Methode bei fehlendem Takt. Vielleicht hilft Dir das noch etwas weiter ? ...

Gruß !
Patrick
joedawson
kann c't-Lab-Bausätze bestellen
kann c't-Lab-Bausätze bestellen
Beiträge: 24
Registriert: 25.11.2009, 13:38

Re: Flashprobleme AT644

Beitrag von joedawson »

Also der 644er nervt mich langsam echt :-(

Ich hab mir jetzt aus dem Labor nen Frequenzgenerator mitgenommen und ne 5Vpp Schwingung über XTAL1-GND eingekoppelt, mit Offset 2,5V dass ein schönes TTL-Signal draus wird. Trotzdem weigert sich das Teil standhaft, irgendwas rauszurücken oder entgegenzunehmen, seien es nun Fusebits oder Flashinhalt.

Hat noch jemand vielleicht kurzfristig ne Idee, oder kann ich damit anfangen, den Prozessor runterzulöten?

Greetz Joe
amd-65
kann c't-Lab-Module konstruieren
kann c't-Lab-Module konstruieren
Beiträge: 130
Registriert: 29.11.2007, 16:28

Re: Flashprobleme AT644

Beitrag von amd-65 »

joedawson hat geschrieben:Hat noch jemand vielleicht kurzfristig ne Idee, oder kann ich damit anfangen, den Prozessor runterzulöten?
Möglicherweise hast Du den Clock auf den internen 128kHz RC-Oszillator und Clock/8 per Fuse programmiert. Dann mußt Du mit dem Clock vom Programmer weit runter.

Gruß
amd-65
Antworten