Mit Pololu Programmer programmieren

Moin, ich muss mal wieder stören. Wie kann ich mit o.g. Programmer einen ATmega 328 programmieren? Ich hab in der IDE den richtigen Programmer (STK 500) & Port ausgewählt, als Board "ATmega on a breadboard (internal clock)". Direkt in der der IDE kann ich den Chip nicht programmieren, hab jedoch mal aus Verzweifelung mal das HEX-File exportiert, und mit Atmel-Studio programmiert. Hat mit dem Pololu auf Anhieb funktioniert, ist aber irgendwie nur die 1b-Lösung. Wo ist hier der Hund begraben?

Dann zeige uns mal welchen Programmer du hast. Poste einen Link.
Und ein Schaltbild wie du alles angeschlossen hast.
Auch ein Foto deines Aufbaus ist hilfreich.

Ist dieser hier:

Wird auch in der Systemsteuerung angezeigt, mit Atmel-Studio kann ich auslesen & programmieren. Nur mit der Arduino-IDE nichts. Angeschlossen wie immer halt; MISO, MOSI, CLK, RST usw

Mit welchen Einstellungen wolltest du denn den Atmega328 flashen ?
Ich habe bisher festgestellt, dass man neue Atmegas nur mit angeschlossenem Quarz aus der IDE flashen kann.
Evtl. liegt es auch bei dir daran.

Zeig doch mal eine Schaltung deines Atmega328 - Aufbaus.

HotSystems:
Mit welchen Einstellungen wolltest du denn den Atmega328 flashen ?
Ich habe bisher festgestellt, dass man neue Atmegas nur mit angeschlossenem Quarz aus der IDE flashen kann.
Evtl. liegt es auch bei dir daran.

Zeig doch mal eine Schaltung deines Atmega328 - Aufbaus.

Na ja, ISP-Stecker wie üblich; RST-Widerstand; Kerko; 2 * Stromversorgung und sonst nichts. Oszi steht ja auf intern (8 MHz). Zeigt mir AtmelStudio auch so an, also drauf zugreifen kann ich, von daher dürfte die Verdrahtung auch in Ordnung sein.

Ich sehe kein Schaltbild und keine Einstellungen.

Bitte schön...

Vielleicht hilfts:

Ok, probier mal beim ersten Flashen einen Quarz und Kondensatoren mit anzuschließen.
Bei mir war das immer notwendig, keine Ahnung warum, aber danach funktionierte es.

Ist vielleicht untergegangen:

  1. Kompilierte Binärdatei exportieren
  2. Mit AtmelStudio 'brennen'
  3. macht was er soll

Mit Arduino:

  1. kompiliert
  2. zeigt 'Hochladen...' an
  3. dabei bleibt er stehen
  4. irgendwann kommt diese Fehlermeldung:
    avrdude: stk500_recv(): programmer is not responding
    avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x5f

@ HotSystems:
danke für den Tip, aber laut AS ist intern 8 MHz schon eingestellt

taximan:
Ist vielleicht untergegangen:

  1. Kompilierte Binärdatei exportieren
  2. Mit AtmelStudio 'brennen'
  3. macht was er soll

ja.
Weil das AS weiss, wie das Board angesprochen wird.

  1. kompiliert
  2. zeigt 'Hochladen...' an
  3. dabei bleibt er stehen

Stimmen die übergegebenen Parameter?
Wie sieht denn die Ausgabe aus - DATEI - VOREINSTELLUNGEN - Ausführliche Ausgaben bei Hochladen.
CompilerWarnungen Alle

Was ist dort anders als im AS? Fuses?

Und mit Programmer hochladen ausgewählt?

"avrdude: Version 6.3-20190619
Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/
Copyright (c) 2007-2014 Joerg Wunsch

System wide configuration file is "C:\Users\TG\AppData\Local\Arduino15\packages\arduino\tools\avrdude\6.3.0-arduino17/etc/avrdude.conf"

Using Port : COM11
Using Programmer : arduino
Overriding Baud Rate : 57600
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x89
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x89

avrdude done. Thank you.

Problem beim Hochladen auf das Board. Hilfestellung dazu unter http://www.arduino.cc/en/Guide/Troubleshooting#upload."

Im Prinzip die selbe Meldung. Kann ich sonst in Arduino irgendwas großartig einstellen? Wäre mir neu.

taximan:
@ HotSystems:
danke für den Tip, aber laut AS ist intern 8 MHz schon eingestellt

Ja, ich weiß das. Nur habe ich das bei meinen Projekten und einem neuen Atmega328 nur mit einem Quarz zur Funktion gebracht. Daher mein Tipp, mach mit Quarz und es wird vermutlich funktionieren.

"Und mit Programmer hochladen ausgewählt?" DAS war der entscheidene Hinweis. 'Sketch -> Hochladen mit Programmer.
Warum ist das so? Ich hab immer den Pfeil nach rechts aus der Oberfläche genommen. Damit kamen die Fehlermeldungen. Könnte es sein, dass damit nur der Programmer auf dem ArduinoBoard angesprochen wird? Auf so was muss man erstmal kommen.
Danke soweit erstmal.

taximan:
** Using Programmer : arduino**
Kann ich sonst in Arduino irgendwas großartig einstellen? Wäre mir neu.

Ja.
schrub ich!

Meine Ausgabe: Using Programmer : stk500v2

taximan:
Könnte es sein, dass damit nur der Programmer auf dem ArduinoBoard angesprochen wird?

Du hast das Prinzip nicht verstanden. aber egal.
Ich habe gerne geholfen.

... und HotSystems erlöst :wink:

Ich habe doch den STK-Programmer und Port ausgewählt. Ich hab noch nichts gefunden, wo ich das sonst einstellen könnte. Ich lass mich da gerne belehren.

taximan:
Ich habe doch den STK-Programmer und Port ausgewählt. Ich hab noch nichts gefunden, wo ich das sonst einstellen könnte. Ich lass mich da gerne belehren.

Der Arduino hat einen BOOTLOADER.
Die IDE nimmt via USB/RS232 - Serieller Schnittstelle Kontakt zum Arduino-Board auf.
Mit der Herstellung des Kontaktes wird DTR und damit ein RESET ausgelöst.
Dann startet der Arduino und der BOOTLOADER fragt nach, ob er etwas über die serielle Schnittstelle bekommt. Wenn nicht, startet er das Binaere, was er bereits Intus hat.

Wenn Du mit einem ISP-Adapter programmierst, startet der Chip nicht in den BOOTLOADER sondern in den DirektProgrammierModus.
Der BOOTLOADER bleibt am Ende erhalten, solange Dein HEX nicht so gross ist, das es den BL überschreibt.

Das ist der springende Punkt! Auf dem UNO-Board wird dann auch 'nur' seriell programmiert. Das war mir bis jetzt nicht klar, danke für die Erläuterung.