Avrdude-Fehler - stk500_getsync(): nicht synchron: resp=0xff

Ich benutze meinen Arduino Uno als Programmierer, um meinen ATtiny85 zu programmieren. Ich habe die ArduinoISP-Skizze auf mein Uno hochgeladen. Ich habe meine Verkabelung überprüft, etwas gegoogelt, aber ich kann immer noch nicht herausfinden, warum ich diesen Fehler bekomme:

avrdude: stk500_getsync(): not in sync: resp=0xff

wenn ich diesen Befehl ausführe:

sudo avrdude -p t85 -c avrisp -P /dev/ttyACM0 -b 9600 -U flash:w:src.hex

Irgendwelche Vorschläge? Danke!

Beginnen Sie mit dem Wechsel avrispzu arduino.
@jippie das habe ich schon probiert, es ist nichts anderes passiert...

Antworten (2)

Sie haben eine serielle Kommunikation mit 9600 Baud angefordert, was für Ihre ISP-Skizze wahrscheinlich nicht korrekt ist.

Ich glaube standardmäßig, dass es jetzt 19200 ist, aber Sie können es sicher feststellen, indem Sie die Initialisierungszeile in Ihrer ISP-Skizze finden, z

void setup() {
  Serial.begin(19200);

Der Parameter -b von avrdude gibt die Baudrate für die Kommunikation mit dem Programmiergerät an.

Im Gegensatz dazu gibt -B Parameter die Geschwindigkeit der eigentlichen Programmierung an, obwohl ich nicht ganz davon überzeugt bin, dass dies bei Verwendung des ISP-Sketch berücksichtigt wird.

Standardmäßig setzt sich ein Arduino Uno automatisch zurück, wenn der Host-Computer seine serielle Schnittstelle öffnet. Danach wartet der Bootloader einige Sekunden, um zu sehen, ob für ihn beabsichtigter serieller Datenverkehr vorhanden ist, und das stört die von avrdude gesendete Kommunikation.

Sie müssen diesen Auto-Reset deaktivieren, indem Sie einen 10-µF-Kondensator zwischen den RESET- und GND-Pins anschließen ( -natürlich auf GND).

Ich hatte bereits einen 10-µF-Kondensator zwischen den RESET- und GND-Pins, aber danke ...