ich bitte um Hilfe bei der Programmierung eines Standalone ATMEGA328 mittels einem CP2102 USB-Serial Converter.
Ich weiß nicht mehr, woher ich die Annahme habe, das dies funktionieren soll. Doch offenbar gibt es Personen, die das so hingekriegt haben.
Ich habe alles genauso gemacht wie hier beschrieben, doch die Fehlermeldung ist genau die Beschriebene:
"avrdude: stk500_getsync(): not in sync: resp=0x00" in mehrfacher Ausführung.
Desweiteren habe ich mir noch dieses Youtube- Tutorial zu Gemüte geführt, da, wie ich denke, der dort eingesetzte Mini Pro doch so viel mehr nicht ist als ein Standalone- 328. Doch auch das hat die Lage nicht verändert.
Ich habe ebenfalls schon die RX/ TX- Verbindungen getauscht, weil man wohl der Beschriftung nicht trauen kann. JETZT bin ich "at finem Latinum", wobei ich nie Latein- Unterricht hatte.
Der Atmega328 funktioniert, wenn ich ihn mit dem Programmer des Arduino-Uno- Boardes bespiele, mit dem ich auch den Bootloader brenne.
Ich verwende genau diesen CP2102- Konverter, Windows 10 und die neueste Arduino- IDE. Über die Erkennung des Konverters gibt es keine aktive Meldung, aber seine LED leuchtet. Den wohl passenden Treiber direkt von Silabs.com habe ich manuell installiert, dies jedoch erfolgreich.
Wer hat Erfahrungen damit, gibt es abweichend von dem erwähnten Forumsthread noch etwas zu verändern, vll. wegen neuerer IDE- Version?
Board: Arduino Pro/ Pro Mini 328, Programmer: Arduino as ISP.
Bilder folgen in Kürze, die Kamera muss grad laden.
Ich habe die Verkabelung aber genau wie im Thread beschrieben vorgenommen:
USB-Converter Pin Atmega328
RX Pin 3
TX Pin 2
DTR Pin 1 via 100nf Capacitor (auch ohne Kondensator probiert)
5V Pins 7, 20, 21 (auch via 100nF nach Pin20 probiert)
Gnd Pins 8, 22
Atmega328 mit 16Mhz Crystal/ zwei 18pf Kerkos, der ja auch funktioniert.
Habe kein Win7, daher wurde das noch nicht probiert. Über die Erkennung des Konverters gabs keine Windows- Meldung. Sollte das nicht eigentlich so sein? Kann der Konverter defekt sein? Seine LED leuchtet.
Da machst du bei den Einstellungen schon was falsch. Mache die Einstellungen als ob du einen Uno programmieren möchtest.
Was wird denn in windows in der Systemsteuerung angezeigt?
Gerätemanager meine ich.
Probiere mal zuerst, ob dein 2102 geht. Verbinde dazu den RX und TX Pin am 2102 und schicke was raus, das muss als echo sofort zurückkommen. In der IDE die richtige Com Schnittstelle auswählen und CRLF unten rechts neben der Baurate aktivieren.
Dank an ElEspanol, das ist doch mal ein hilfreicher Tipp. Beim Verbinden von RX und TX und einer Ausgabe über den seriellen Monitor der IDE kommt die ausgegebene Zeichenfolge sofort zurück (<1s). Ich konnte allerdings nur "Zeilenumbruch (CR)" einstellen, "CRLF" war nicht im Angebot. Aber der CP2102 scheint dann wohl zu funktionieren?!
10k von 5V gegen Reset ist natürlich vorhanden, halt die ganze standalone- Schaltung wie hier gezeigt. Der 328 funktioniert mit 2x 18pf am Quarz. Beizeiten versuche ich's auch noch mit 22ern, aber das scheint mir kein naheliegender Grund.
Der Gerätemanager zeigte kein zusätzliches Gerät beim Einstecken des Konverters, nach entspr. Treiberinstallation aber schon.
Nun, ich werd's erst noch mit UNO- Einstellungen und 22ern versuchen, aber ich bin pessimistisch, dass es daran liegen soll.
Moritz_uno:
Der Gerätemanager zeigte kein zusätzliches Gerät beim Einstecken des Konverters, nach entspr. Treiberinstallation aber schon.
Nun, ich werd's erst noch mit UNO- Einstellungen und 22ern versuchen, aber ich bin pessimistisch, dass es daran liegen soll
Der Gerätemanager sollte zumindest eine weitere USB Schnittstelle anzeigen.
Das mit den UNO Einstellungen hat bei mir allerdings immer geholfen. Einen Standalone konnte ich nur so richtig programmieren, und diese Einstellung ist doch einfach zu prüfen.
Evtl. habe ich mich auch nicht richtig ausgedrückt.
Um einen Standalone ATMEGA328 mit einen USB/Serial-Adapter (CP2102 oder FTDI232) zu programmieren, musste ich die IDE immer unter "Werkzeuge" auf Platine: "Arduino Uno" stellen.
Bei allen anderen Einstellmöglichkeiten an dieser Stelle hat es nicht funktioniert, mit der Sketchübertragung.