Hallo Ich wollte gerade "mal eben" meinen ATmega32 durch einen ATmega644 ersetzen. Und mal abgesehen davon, dass der Code natürlich angepasst werden muss, suche ich jetzt ein passendes ISP Programm, denn yaap und PonyProg erkennen den µC anscheinend nicht :-( Was benutzt ihr?
Hallo, Pony in der Version 2.07a kennt den Mega664. Gruß aus Berlin Michael
es sollte mittlerweile auch genug DIY programmer geben die STK500 kompatibel sind damit lässt es sich sehr bequem aus dem AVR studio flashen zB : http://www.ullihome.de/index.php/Hauptseite#USB_AVR-ISP diesen verwende ich auch
>Das was der Hersteller der Controller anbietet: AVR-Studio Leider habe ich nur ganz einfache ISP Adapter (http://rumil.de/hardware/avrisp.html) Parallel und Seriell. Die gehen AFAIK doch nicht mir AVR Studio oder? >Pony in der Version 2.07a kennt den Mega664. Leider klappt's nicht. Den 32er erkennt Pony, den 644er nicht.
zieh dir die bascom-demo runter, damit kannste dann deine bin, hex usw laden, ohne auch bascom benutzen zu müssen.
Hi, Ron wrote: >>Pony in der Version 2.07a kennt den Mega664. > > Leider klappt's nicht. Den 32er erkennt Pony, den 644er nicht. Also zu Ponyprog: Version 2.07a kennt den Mega664 laut Deviceliste, meldet jedoch Fehler bei Programmierversuch des Mega664. (Bug in der Mega664-Erkennung) Möglichkeit 1: Versuche bei Auftreten der Fehlermeldung über den Button "Ignorieren" trotzdem den Atmega664 zu beschreiben. Möglichkeit 2: Es giebt für Ponyprog V2.07a ein Patch im Ponyprog-Forum des Anbieters der den Mega664-Fehler überschreibt. (Neue EXE-Datei) Suche hierzu im dortigen Forum nach dem Mega664, da solltest Du fündig werden. MfG Metty
Danke schon mal. Habe jetzt mit Bascom probiert und das scheint schon mal so halbwegs zu klappen. Er erkennt immerhin den Chip und kann die Fusebits setzen.
>Nochmal der Hinweis auf avrdude. ;-) Danke, aber ich finde das Ding sehr schelcht dokumentiert. Ich habe einfach keine Lust, mich durch das gewurschtel von fehlenden ANleitungen durchzuwühlen, weil es zwar toller Programmierer gibt, aber weniger, die Ihr Ding auch anderen erklären können. Auf der Sourceforge Seite ist ja nicht mal klar zu erkennen, worum es geht und was das Teil unter welchem System wie macht. Ich installiere mir kein Unix nur dafür und wie ich das dann in WinAVR einbinde, erschließt sich mir nicht. Aber vielleicht hast Du eine tolle Seite, wo das verständlich steht? Bis dahin: Bascom ist keine Lösung, sondern wirklich erst PonyProg mit Patch (http://ponyprog.sourceforge.net/phorum/read.php?2,380). Siehe auch mein Problem hier: Beitrag "ATmega32 -> 644". Kann einen zur Verzweifelung bringen so was. Und ich hasse wirklich PonyProg. Das braucht ewig und nervt mit Fragen. Aber ich hasse noch mehr schlechte Dokus (also kein AVRDude ohne brauchbare Instruction)...
ich habe den 644 immer mit avrdude programmiert... u. so schlecht ist das ganicht dokumentiert. man muss lediglich den programmieradaptertyp u. den controllertyp angeben u. sagen dass man programmieren (schreiben) will, die datei angeben u. sagen dass es intelhex format ist. u. schon wird der 644 problemlos programmiert
Ron wrote: >Nochmal der Hinweis auf avrdude. ;-) > Danke, aber ich finde das Ding sehr schelcht dokumentiert. Ach, hast du die Doku denn gelesen? > Auf der Sourceforge Seite ist ja > nicht mal klar zu erkennen, worum es geht und was das Teil unter welchem > System wie macht. Sourceforge? Dass du dort keine Doku zu avrdude findest, wundert mich nicht. Avrdude ist hier zu Hause: https://savannah.nongnu.org/projects/avrdude/ OK, die Doku könnte man mal separat bauen und ins Download legen. ... Habe ich gleich mal mit gemacht. ;-) Die wäre aber auch bei WinAVR mit dabei, und irgendwoher musst du ja dein Binary ohnehin bekommen. > Ich installiere mir kein Unix nur dafür und wie ich > das dann in WinAVR einbinde, erschließt sich mir nicht. Das WinAVR-Makefile-Template hat sogar schon Beispiele, da musst du nur noch in zwei Make-Variablen den Namen und Port deines Programmers hinterlassen...
Freut mich, daß ihr mich gleich so ernst nehmt und Euch Gedanken macht. Ist Recht: nicht Sourceforge. Hatte ich verwechselt, da ich es schon einige Zeit nicht mehr betrachtet hatte und die Seite http://savannah.nongnu.org/projects/avrdude mich ein wenig daran wohl erinnerte - zumindest, was das Chaos angeht. Sorry, aber ich find's blöd. Mag ja ganz toll Projektbezogen sein, aber mich als (durchaus fähiger) Anwender überzeugt's nicht. Vielleicht gehe ich bei der Suche nach Infos aber auch anders vor als andere? Ich habe es jetzt noch mal versucht, und siehe, es läuft aber dabei hat mir die Homepage vom Projekt gar nicht helfen können, sondern ich habe alles einzeln zusammensuchen müssen. Zum Beispiel was soll man mit einem tar.gz machen? Klar, ich kann auch Unix und bei meinem Web Server weiß ich, was das ist aber der durchschnittliche Windows Nutzer? Und waozu auch? Wie sich dann zeigte, ist avrdude bei WinAVR dabei, aber das erfährt man auch nur nebenbei beim Suchen nach Infos. Und dann fehlte da die Datei libusb0.dll (warum auch immer), also die auftreiben. Und dann muß man install_giveio.bat ausführen und so weiter und so fort. Das ist nicht Windows-Consumer-Freundlich. Bis man das alles zusammen hat. Und dann will ich einfach keine Fuse-Bits auf Kommandoebene setzen. Die Zeiten sind vorbei! Ich will ein GUI also auch da wieder das Spiel der Doku... Aber ich kapier ja auch nicht, warum es noch Leute gibt, die meinen, man muß Bits per Assembler schubsen... Nun, es scheint erst mal zu laufen. Und die wichtigste Erkenntnis dabei war, daß es ja gar nicht an meinem Code lag, sondern daran, daß die andere Programmersoftware Mist baute. Vielleicht lernt ja jemand mal aus meinem Rätselraten...
Ron wrote: > http://savannah.nongnu.org/projects/avrdude mich ein wenig daran wohl > erinnerte - zumindest, was das Chaos angeht. Sorry, aber ich find's > blöd. Mag ja ganz toll Projektbezogen sein, aber mich als (durchaus > fähiger) Anwender überzeugt's nicht. Naja, es ist halt eine Projektseite, die hat ein vorgefertigtes Layout, dass man nicht für jedes Projekt ändern kann. Aber von dort zur "Homepage" zu finden, sollte doch nicht wirklich schwer sein, oder? > Zum Beispiel was soll man mit einem > tar.gz machen? Wenn man nicht auf Unix ist und einen tar besitzt, vielleicht einfach mal durch Winzip schicken? > Wie sich dann zeigte, ist avrdude bei WinAVR dabei, aber das > erfährt man auch nur nebenbei beim Suchen nach Infos. Ach? Das steht doch aber bei WinAVR ziemlich in jedem Announcement. Wo willst du es denn sonst gern noch haben? > Und dann fehlte da > die Datei libusb0.dll (warum auch immer), also die auftreiben. Warum fehlt die? Das wäre ein WinAVR-Bug. > Und dann > muß man install_giveio.bat ausführen und so weiter und so fort. Auch hier hätte ich erwartet, dass WinAVR das von allein tut. Aber ich hab' kein Windows. giveio braucht aber andererseits auch nicht jeder, sondern nur die, die einen billigen Parallelport-Bitbang- Dongle benutzen. (Das werden wahrscheinlich im Zeitalter von USB-only-Computern mit der Zeit immer weniger.) > Und > dann will ich einfach keine Fuse-Bits auf Kommandoebene setzen. Die > Zeiten sind vorbei! So? Die Zeiten von bunten Bildchen sind bei mir seit dem Kindergarten vorbei... Mittlerweile kann ich nämlich lesen und schreiben. ;-) Es gab mal einen Versuch für ein GUI, aber dafür haben sich nicht wirklich nennenswert Entwickler interessiert. Der Original-Entwickler hat neben Familie und Beruf keine Zeit mehr dafür, schade. Mittlerweile gäbe die interne avrdude-Struktur relativ einfache Möglichkeiten, ein GUI an Stelle der Kommandozeile drüberzulegen. Es muss aber halt jemand machen. Ist leider ein wenig aufwändiger, als sich über das fehlende GUI zu beklagen...
libusb0.dll fehlte. Ich hatte gerade erst eine frische WinAVR Install gezogen. Aber wer weiß, vielleicht muß man da wieder was für lesen - irgendwo? Na ich hab's ja rausgekriegt. Bunte Bilder sind schick, ich tippe schon beruflich genug. Parallelports sind nur bei Laptops out, aber sonst zum Glück noch nicht. Aber ein nettes GUI ist auf den ersten Blick http://avr8-burn-o-mat.aaabbb.de/
> libusb0.dll fehlte. Das wäre ernsthaft ein WinAVR-Bug. Die sollte dabei sein (wenngleich sie auch wohl nicht richtig funktionert, weil Eric da was anderes vergurkt hat). > Bunte Bilder sind schick Naja, Ansichtssache. ;-) Gerade bei Ponyprog sind sie ja ziemlich berüchtigt dafür, dass die Leute sich ihre AVRs zerfuset haben. Da denke ich lieber einmal mehr über die Hexwerte meiner Fuses nach.
Hallo, mein WINAVR (Version 20070525) bringt wenn ich den Atmel programmieren will auch die Fehlermeldung "libusb0.dll nicht gefunden". Sie ist aber im Verzeichnis winavr\utils\libusb\bin. Beim suchen im Internet habe ich diese Seite gefunden. Leider steht hier aber nicht die Lösung! Kann mir bitte einer helfen. Gruß Gerhard
gerhard99 wrote: > diese Seite gefunden. Leider steht hier aber nicht die Lösung! Gehe zu: http://sourceforge.net/projects/libusb-win32/ und installiere dir libusb-win32 über den Installer.
@Ron Ich verstehe dein problem wirklich nicht so ganz wenn man eine Suchmaschiene benutzen kann findet man auch recht schnell die gesuchten infos, + eine java oberfläche für avrdude in der man die fuses schön per häkchen zusammenklicken kann. Weiterhin würde ich dir mal ans herz legen dir nen etwas besseren Programmer zu baun, wie schon gesagt gibts einiges was STK500v2 kompatibel ist damit hast du nie wieder das problem nen neuen Controller nicht flashen zu können und weiterhin ist das um einiges schneller als Bitbaning wenn du ewig nur n paar LED´s ansteuern willst und deine Programme nicht über 2K hinauskommen ist das sicherlich egal aber wenn man beim debuggen alle 2 min n Programm in den Controller schiesst udn das dann 3 min dauert ist das schon nervig... >Die Zeiten von bunten Bildchen sind bei mir seit dem Kindergarten >vorbei... Mittlerweile kann ich nämlich lesen und schreiben. ;-) Naja Jörg, ich bin auch Kommandozeilenfan aber deswegen gibt es doch einige klickie buntie Sachen die das Leben erheblich einfacher machen. Und du willst mir doch nicht erzählen das du kein X hast oder ? Nacher hast noch n KDE was ;)
Christian Ulrich wrote: >>Die Zeiten von bunten Bildchen sind bei mir seit dem Kindergarten >>vorbei... Mittlerweile kann ich nämlich lesen und schreiben. ;-) > > Naja Jörg, ich bin auch Kommandozeilenfan aber deswegen gibt es doch > einige klickie buntie Sachen die das Leben erheblich einfacher machen. Das habe ich ja nicht abgestritten. > Und du willst mir doch nicht erzählen das du kein X hast oder? Ich habe nirgends behauptet, noch wie vor 17 Jahren an einem VT320 zu sitzen. ;-) Was ich aber bei den X11-Applikationen sofort und als erstes abschalte sind all diese Leisten mit den bunten Kindergartenbildchen. Die nehmen bloß Platz weg, und ab 100 Bildern in den Leisten kann man sich sowieso nicht mehr merken, welches Bild wofür da sein soll. Da kann ich mir gleich lieber die Tastenkürzel merken, und wenn ich die vergessen habe, gibt's noch Menüs. > Nacher > hast noch n KDE was ;) Kommt mir nicht ins Haus. Zu groß, zu langsam, zu viel Platz auf dem Bildschirm. Kein virtueller Desktop, sondern nur unabhängige workspaces. Das heißt nicht, dass ich nicht auch 'ne KDE-Applikation benutzen würde, wenn sie das tut, was ich gerade brauche, aber für eine Flasche Milch muss man sich ja nicht gleich eine Kuh kaufen. ;-)
Da Ponyprog den 644 nur nach einem Patch programmieren kann, habe ich auf AVRDUDE umgestellt. Dazu habe ich das neueste WINAVR vom 25.05.2007 installiert und die Einstellungen für AVRDUDE vorgenommen. Mein Programmierer (serieller Ponyprogprogrammierer 'siprog') sollte nach Mitteilungen im Forum funktionieren, ist aber in der AVRDUDE-Anleitung (vom 21.12.06) nicht verzeichnet. Nach einigem Suchen habe ich in der Konfigurationsdatei den Eintrag siprog gefunden. Die Aufstellung der Programmierer in der AVRDUDE-Anleitung ist unvollständig. Nach den Start meldete AVRDUDE die fehlende libusb0.dll. Das lies sich dank der Anleitung in diesem thread einfach beheben. Zur Zeit verhält sich mein ATmega32 nach dem Programmieren merkwürdig. Ich vermute ein Problem mit den Fuses. Hier verhält sich AVRDUDE abweichend von der Anleitung. Die Meldung: avrdude: safemode: Fuses OK erscheint nicht so wie in 2.2 der Anleitung gezeigt. Den Parameter -u habe ich nicht gesetzt. Hat schon einmal jemand dieses Problem gehabt? Kann mir jemand schreiben, wie ich unter Windows evtl. mit dem Programmers Notepad? in den Terminalmode des AVRDUDE komme? Gruß Joachim
Joachim Börke wrote: > Die Aufstellung der Programmierer in der > AVRDUDE-Anleitung ist unvollständig. Bitte schreibe hier einen Bugreport: https://savannah.nongnu.org/bugs/?group=avrdude > Zur Zeit verhält sich mein ATmega32 nach dem Programmieren > merkwürdig. Ich vermute ein Problem mit den Fuses. Kannst du das näher erläutern? (Da das subject einen ATmega644 nennt, vielleicht besser in einem neuen Thread.) > Die Meldung: > avrdude: safemode: Fuses OK > erscheint nicht so wie in 2.2 der Anleitung gezeigt. Wie sieht sie denn aus? > Kann mir jemand schreiben, wie ich unter Windows evtl. mit dem > Programmers Notepad? in den Terminalmode des AVRDUDE komme? Naja, PN ist ja eher eine Art GUI, während der Terminalmode Interaktion braucht. Ich denke, den musst du wirklich direkt von der Kommandozeile (also aus dem cmd.exe heraus) starten.
Hallo Jörg, danke für die schnelle Antwort. Bevor ich auf den 644 umsteige, wollte ich das neue WINAVR mit dem AVRDUDE erst einmal auf dem ATmega32 probieren. Damit habe ich nur zwei Unbekannte (WINAVR und AVRDUDE), andernfalls käme der 644 als dritte Unbekannte hinzu. Die WINAVR-Neuerungen (_spawnv-Problem) habe ich bereits gelöst. Der Controller arbeitet meine uip-Anwendung ungewöhnlich langsam ab. Deshalb wollte ich die Fuses zur Taktgenerierung prüfen. Die Meldung: avrdude: safemode: Fuses OK ist in der Anleitung vermerkt, fehlt jedoch in meiner Ausgabe. Ich habe inzwischen festgestellt, dass der Parameter -p partno in meinem makefile mit "atmega32" besetzt wird. Die Anleitung fordert jedoch das Kürzel "m32". Das Makefile ist dagegen so ausgelegt, dass GCC und AVRDUDE mit dem gleichen Parameter arbeiten. Als MCU-Typ wird im Handbuch "ATmega32" genannt. Im Konfigurationsfile steht dagegen "ATMEGA32". Ich werde mal probieren, ob das relevant ist. Gruß Joachim
Joachim Börke wrote: > Die Meldung: > avrdude: safemode: Fuses OK > ist in der Anleitung vermerkt, fehlt jedoch in meiner Ausgabe. Hmm, kann sein, dass die mittlerweile entfernt worden ist. Ich habe gerade keinen AVR eingeschaltet und will dann auch ins Bett gehen... > Ich habe inzwischen festgestellt, dass der Parameter -p partno in > meinem makefile mit "atmega32" besetzt wird. Die Anleitung fordert > jedoch das Kürzel "m32". Das ist egal. Der volle Name wird akzeptiert (ohne Rücksicht auf Groß-/Kleinschreibung), damit ist avrdude immer kompatibel mit den restlichen Tools (avr-gcc, avr-as). Der Kurzname (m32) ist eher für diejenigen gedacht, die das Kommando mit der Hand eintippen und daher nicht immer den langen Namen schreiben wollen. Wenn der mit -p genannte Prozessor nicht mit der Chip-ID übereinstimmt, würde avrdude dir das schon sagen. ;-)
Hallo, ich wollte mal den Ponyprog mit dem o.a. Patch ausprobieren. Dabei ist mir folgendes aufgefallen, die Größe des Ursprungsprogramms liegt bei 556kB und mit dem Patch bei 1204kB. Ist das richtig das nur für die fehlerfreie Unterstützung des AtMega664 mehr als das doppelte Programmcode notwendig ist? Gruß Gerhard
Bist du dir sicher, dass das Programmcode ist? Oder rechnest du die ganze Symboltabelle mit rein?
Hallo Jörg, in der Anleitung stand man sollte die Ponyprog2000.exe austauschen. Bei diesen beiden Dateien besteht der Unterschied. Dies erscheint mir etwas merkwürdig. Gruß Gerhard
> Kann mir jemand schreiben, wie ich unter Windows evtl. mit dem > Programmers Notepad? in den Terminalmode des AVRDUDE komme? Du musst das makefile ändern, und zwar bei den Parametern des avrdude einfach ein -t dazuschreiben. Wenn Du im Terminalmode bist, kannst Du ihn mit q beenden. n.b. Der Parameter -Enoreset bewirkt, dass nach dem Programmieren der Prozessor losläuft.
gerhard99 wrote: > in der Anleitung stand man sollte die Ponyprog2000.exe austauschen. Bei > diesen beiden Dateien besteht der Unterschied. Das heißt, du hast nur die Dateigröße angeguckt? Das ist Schall und Rauch. Da steht u. U. alles mögliche mit drin, was später nicht geladen wird (letzlich Debuginformationen). Wenn das ponyprog2000.exe mit dem GCC compiliert worden ist, gibt's beim entsprechenden GCC ein Kommando namens "size". Wenn man das auf das .exe anwendet, bekommt man gesagt, wie viele Bytes aus dieser Datei tatsächlich im RAM landen. (Falls DLLs geladen werden, sind diese in der Angabe aber nicht enthalten.) Wenn es mit einem anderen Compiler generiert worden ist, wird er vermutlich eine ähnliche Möglichkeit haben, die wahre Codegröße herauszufinden.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.