Guten Tag, ich habe ein Problem mit meinem Compiler. Ich benutze das AVR Studio zum programmieren. Den fertigen Code flashe ich für gewöhnlich mit dem AVR Prog Tool auf mein Programmiergerät. Natürlich benutze ich erst die Build Funktion, um den veränderten Code zu compelieren und die dazugehörige hex-Datei zu erstellen. Ich habe auch schon mehere COM-Ports mit meinen beiden Programmiergeräten ausprobiert, aber dennoch keinen gewünschten Effekt erzielt. Ebenso habe ich vor dem flashen erneut die gewünschte hex-Datei ausgewählt. Liegt der Fehler jetzt bei mir habe ich etwas falsch gemacht beim flashen? Mir wird immer angezeigt, dass das AVR Prog den Code erfolgreich übertragen hat. Ist es denn auch möglich, dass die Controller die ich benutze defekt sind? Richtig herum eingesetzt sind sie auf jedenfalls. Ich hoffe ihr könnt mir vielleicht weiter helfen. Vielleicht habe ich etwas übersehen. Vielen Dank
Hallo, hat jemand zufällig rauslesen können, was er eigentlich für ein Problem womit hat??? Gruß aus Berlin Michael
Nö, @ epiphone: Bitte breschreib doch mal genauer. Du erstellts also hex files und schreibst die deiner Meinung nach auf den AVR, aber der AVR tut nicht was du möchtest? http://www.mikrocontroller.net/articles/AVR_Checkliste
Ok hier ist eine genauere Beschreibung. Ich denke mal das es weiter helfen wird. Ich habe ein Programm geschrieben das mehrere Ports einschaltet. Ein paar Pins von PortB, PortC und PortD des Atmega8. Das war erstmal um ein paar LEDs anzusteuern. Dieses Programm befindet sich immernoch auf dem Controller. Ich habe dies festgestellt als ich nur den PortB angeschaltet haben wollte. Deshalb bin ich der Annahme, dass der Controller nicht richtig geflashed wurde. Das war zumindest für mich das naheliegenste. Daher auch mein Beitrag. Die Schaltung ist korrekt aufgebaut daran hat sich seit demher nichts geändert. Kondensator ok, Spannungsversorgung richtig eingestellt. Ich arbeit mit dem internen Takt. Hier ist das Programm welches ich auf den Controller speichern will.
1 | #include <avr/io.h> |
2 | |
3 | int main(void) |
4 | {
|
5 | DDRB = 0xFF; |
6 | while(1) |
7 | {
|
8 | PORTB = 0xFF; |
9 | }
|
10 | }
|
Alles weitere was ich noch dazu sagen kann. Ist das ich einmal mit einer Testplatine arbeite. Dort stecke ich immer die Bauteile zusammen. Ich habe mir noch ein myAvr Board ausgeliehen mit dem es ebenfalls nicht funktioniert. Ich hoffe das war ausführlich genug. Vielen Dank soweit.
Gut da ich wohl mein Problem zu schlecht geschilder habe hier noch ein Versuch. Mein Problem ist das ich den Mikrocontroller nicht mit einem neuen Programm flashen kann. Es ist immer noch das alte Programm drauf. Was muss ich machen, um dies zu ändern.
Hi >Gut da ich wohl mein Problem zu schlecht geschilder habe hier noch ein >Versuch. Mein Problem ist das ich den Mikrocontroller nicht mit einem >neuen Programm flashen kann. Es ist immer noch das alte Programm drauf. >Was muss ich machen, um dies zu ändern. Hast du auch das richtige Hex-File eingestellt? MfG Spess
Ich hatte mal mit avrdude unter Linux und dem AVR ISP Mk II das Problem, daß mein Shellskript den Rückgabewert von avrdude nicht ausgewertet hat. Durch die vielen Ausgaben des Build-Skriptes war die Fehlermeldung von avrdude immer schon weg-gescrollt, wenn das Programmieren abgeschlossen war. In diesem Fall hatte ein Hänger im USB-Treiber des Kernels dafür gesorgt, daß das Programmieren trotz grüner LEDs am AVR ISP Mk II nicht funktionierte. Hat eine Weile gedauert, bis ich darauf kam. Am nächsten Tag (reboot) lief alles wie gehabt. In deinem Fall würde ich also die gesamte Kette mal peinlich genau untersuchen. (Compiliert der Compiler wirklich? Wo schreibt er das Hex-File? Hex-File anschauen! Wird diese Datei vom Programmer wirklich übertragen oder eine andere? Erzeugt der Programmer wirklich keine Fehlermeldung? Klappt das Auslesen und Vergleichen mit dem Hexfile?)
> Deshalb bin ich der Annahme, dass der
Controller nicht richtig geflashed wurde. Das war zumindest für mich das
naheliegenste.
Für mich wäre das die allerletzte Annahme....
Falls der Programmer die richtigen Schritte gemacht hat, also
erase-program-verify, dann hat er das auch gemacht. Meine Annahme also,
dein Hex-File ist immer noch der alte.
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.