So es ist wieder soweit, ich bekomms nicht hin ein Programm auf meinen
mc zu laden. Folgendes Szenario. Ich habe einen Atmega32, einen USBasp
und möchte die Arduino IDE nutzen. Zuerst habe ich mir das Boardpaket
MightyCore installiert. Dann entsprechend alles ausgewählt:
Board: ATmega32
Clock: external 8Mhz
Programmer: USBasp (MightyCore) , wobei es auch noch enínen USBasp slow
(mightycore) gibt.
Ich habe meinen mc auf die Platine gesteckt und versucht ein
Testprogramm hochzuladen. Dann der typische Fehler:
avrdude: warning: cannot set sck period. please check for usbasp
firmware update.
avrdude: error: program enable: target doesn't answer. 0
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
Der ausgewählte serielle Port
ist nicht vorhanden oder das Board ist nicht angeschlossen
So, dann hab ich natürlich alle Verbindungen gecheckt. Also mim
Durchgangsprüfer und geschaut ob die direkte Verbindung zwischen den 6
Ausgängen des USBasps mit den dazugehörigen 6 am mc besteht. Das tuen
sie. Dann hab ich gedacht, villeicht hab ich mich ja verlötet oder
irgendwas. Also mc rausgezogen und aufs Steckbrett. Alles verbunden,
gleicher Fehler. Jetzt bin ich fraglos und weiß nicht was machen.
Markus schrieb:> avrdude: warning: cannot set sck period. please check for usbasp> firmware update.
USBasp-Clone aus China? Mit Uralt-Firmware-Version, aber dafür Jumper um
zwischen Schnell/Langsam umzuschalten? Updaten oder auf "Langsam"
stellen.
> avrdude: error: program enable: target doesn't answer. 0> avrdude: initialization failed, rc=-1> Double check connections and try again, or use -F to override> this check.
Genau das machen, Verbindungen prüfen.
Ja, also USBasp war sehr billig, vermutlich China. Hab mir den libus
Treiber draufgeladen. Für meine Atmega 8 funktioniert das auch ganz
zuverlässig. Verbindungen habe ich schon mehrmals durchgecheckt :/
Markus schrieb:> Für meine Atmega 8 funktioniert das auch ganz> zuverlässig
Auch für "Frisch aus der Packung"? Ohne den Jumper auf "Langsam" kommt
der USBasp mit 1MHz-Targets nicht klar.
Markus schrieb:> Clock: external 8Mhz
Sind die fuses dafür schon geschrieben, oder ist das deine
Wunsch-Einstellung, die du erst noch per USBasp vornehmen willst.
Du musst den Programmieradapter langsamer machen, weil AVR standardmäßig
mit 1MHz getaktet sind. Bei USBASP gibt es drei Varianten:
a) Sie machen das automatisch (hast du offenbar nicht)
b) Sie lassen sich durch den avrdude Parameter -B16 steuern
c) Sie haben dafür den Jumper JP3 (der oft nicht bestückt ist)
Also der Atmega8 war der erste mc den ich programmiert hatte. Habe dafür
auch ewig gebraucht und über meinen Arduino eine Datei namens Optiloader
draufgemacht.
Die Clock sollte von der Arduino IDE über den USBasp auf den mc
festgelegt werden. Man kann im Menü genau wie man die Porgrammer und das
Board auswählt die Clock auswählen.
Mit den Jumpern sieht es bei mir folgendermaßen aus. Habe 5 männlich
Pins, unterteilt in eine zweier und eine Dreier Grppe. In der Dreier
Grupee kann ich anscheinen zwischen 5 und 3.3 V umschalten. Wenn ich die
Zweier Gruppe verbinde, liegt keine Spannung mehr zwischen GND und VCC
an.
Stefan ⛄ F. schrieb:> a) Sie machen das automatisch (hast du offenbar nicht)> b) Sie lassen sich durch den avrdude Parameter -B16 steuern> c) Sie haben dafür den Jumper JP3 (der oft nicht bestückt ist)
OK also a geht nicht, b ungern, da ich es mit der arduino ide und nicht
mit der Kommandozeile machen möchte. Und zu c: Es gibt auf der Paltine
des USBasp tatsächlich JP3, da fehlen aber die männlich pins.
Markus schrieb:> kann ich die Übertragungsrate
Du kannst vieles hinzufügen.
Aber offensichtlich sagt dir AVRDude, dass der Programmer darauf nicht
reagiert.
Ich schließe daraus:
1. Hinzufügen geht
2. bleibt aber wirkungslos
Was hindert dich den "Slow Speed" Jumper zu bestücken?
Oder den Programmer mit eine modernen Software zu bespielen?
Das sind die beiden Möglichkeiten, die dir offensichtlich zur Verfügung
stehen.
avrdude: set SCK frequency to 16000 Hz
avrdude: warning: cannot set sck period. please check for usbasp
firmware update.
avrdude: error: program enable: target doesn't answer. 1
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
Der ausgewählte serielle Port
ist nicht vorhanden oder das Board ist nicht angeschlossen
hat nicht viel gebracht :/
Kann es sein, dass der mc kaputt ist, weil ich ihn mal falschrum
angeschlossen habe oder etwas ähnliches?
Markus schrieb:> Der ausgewählte serielle Port> ist nicht vorhanden oder das Board ist nicht angeschlossen
Und du meinst nicht zumindest mal das offensichtliche zu beantworten?
Erste Frage schrieb:> Hast auch einen Bootloader drauf?
OK, ich erziele Teilerfolge: Heute Nacht kam anscheined ein Windos
update. Danach musste ich den USBasp Treiber neu installieren. Wie fr
mich bekannt, habe ich den libusb0 driver drauf gemacht. Mit dem ging es
nicht. Warum auch immer. Jetzt habe ich den libusk drauf gemacht. Mit
ihm kommt folgendes:
Hochladen Abgeschlossen
Der Sketch verwendet 1042 Bytes (3%) des Programmspeicherplatzes. Das
Maximum sind 32256 Bytes.
Globale Variablen verwenden 9 Bytes (0%) des dynamischen Speichers, 2039
Bytes für lokale Variablen verbleiben. Das Maximum sind 2048 Bytes.
avrdude: set SCK frequency to 16000 Hz
avrdude: warning: cannot set sck period. please check for usbasp
firmware update.
avrdude: set SCK frequency to 16000 Hz
avrdude: warning: cannot set sck period. please check for usbasp
firmware update.
Also meckert der immer noch irgendwie mit der Frequenz aber das Programm
ist drauf. Bei meinem Atmega 8 am LED Würfel funktionierts auch wieder
und das Testprogramm fpr den Atmega32 geht anscheinend auch.
Die Meldung kommt bei meinen zwei USBASP auch dauernd. Das liegt daran,
dass der avrdude dem USBASP ein Kommando schickt, was dieser nicht
ausführen will.
Da das aber trotzdem funktioniert, kann man die Meldung getrost
ignorieren.
Ist bei mir mit Windows und Linux das Selbe, ist ja auch die selbe
Hardware und der selber avrdude ;)
Markus schrieb:> In der Dreier Gruppe kann ich anscheinen zwischen 5 und 3.3 V umschalten.
Ja, aber schrägerweise bestimmst du damit nur die Spannung am VCC Pin
der Stiftleiste. Die Signale haben trotzdem 5V - deswegen sind die 3,3V
hier sinnlos.
> Also meckert der immer noch irgendwie mit der Frequenz
Weil dein USBASP (wie fast alle) das entsprechende Kommando nicht
unterstützt. Das ist nur eine Warnung, kein Fehler.
Wie gesagt schalten manche automatisch auf den "Slow" Modus um und
manche brauchen dafür den Jumper JP3.
> aber das Programm ist drauf.
Also hast dein USBASP erfolgreich auf "Slow" umgeschaltet.
Ich bin neugierig: War das jetzt mit JP3 oder ohne?