mittlerweile habe ich diverse Bauteile aus China bekommen und diese auch zum laufen bekommen. yeah!!!!
Im Moment werkel ich an einer kleinen Wetterstation.
Mehrere Barebone Arduino sollen diverse Wetterdaten per 434Mhz Bausteine an eine Zentrale senden, die wiederum zum Anzeigen mit einem 2004 LCD verbunden ist.
Im Moment funktioniert schon mal das Auslesen und Anzeigen der verschiedenen Sensoren über meinen UNO Rev.3.
So weit, so gut.
Da ich ja damit schon mal klar komme, wollte ich alles auf einen Barebone Arduino mit ATMEGA328P-PU Controller portieren.
Wenn ich das bisher richtig verstanden habe, kann ich mit einem "USBtiny AVR ISP Programmer" den Bootloader auf einen blanko ATMEGA Chip brennen, ist das soweit richtig?
Diesen habe ich mir auch schon bestellt und liegt bereits vor mir.
Du kannst mit dem programmer den bootloader auf den mega laden, und dann mit einem FTDI das programm mittels des bootloaders draufladen, aber:
das ist ziemlich sinnfrei. mit dem programmer brauchst Du den bootloader nicht mehr, da Du die programme damit direkt raufladen kannst.
entwickle Deine programme mithilfe eines arduino, und wenn alles funktioniert, nimmst Du einen barebone, wie Du ihn nennst, und lädst das programm mit "upload mit programmer" direkt drauf.
Wenn ich das jetzt richtig verstanden habe, kann ich mit dem "USBtiny AVR ISP Programmer" sowohl den bootloader als auch die Sketche auf einen Standalone brennen bzw. laden?
als ich das damals aufgeschrieben hab', war ich auch noch begeistert. alles hat super funktioniert. ein paar tage später dann plötzlich probleme. manchmal ging es, dann wieder dauernd checksum errors beim programmieren.
ewig nach lösungen gesucht, der eine empfielt da einen kondensator, der andere dort einen widerstand. irgendwann hab' ich drauf gepfiffen und einen original atmel ISP MkII gekauft, seitdem nie wieder probleme.
das heißt nicht, daß es bei Dir auch so ist, die dinger sind sicher nicht alle gleich, aber falls es auf
Dich zukommt...
vor ein paar tagen hatten wir hier eine diskussion um original-arduinos und fernost-klone. ist dasselbe, kann, aber muß nicht.
Die LED an PIN 19 leuchtet auch wenn ich den AVR mit dem ATMEGA verbinde.
Kurz nachgemessen, 5,12V kommen an ICSP an. Also ist schon mal alles richtig verbunden.
Dann habe ich die Arduino IDE gestartet und folgendes getan:
• Tools---Board---den Arduino UNO ausgewählt
• Tools---Programmer---USBtinyISP ausgewählt
• Dann habe ich den Blink Sketch geladen
• Und dann per Datei---Upload mit Programmer den Sketch hochgeladen
Dann kommt allerdings folgener Text:
avr dude: initialisation failed, rc=-1
Double check connections and try again, or use -F to override this check.
nimm vorsichtshalber die led weg, ich weiß nicht, ob die sck stört...
wenn Du blink gleich ausprobieren willst, ändere den sketch auf LEDPIN = 9 und häng' die led an pin 15.
sonst find' ich keinen fehler.
Ich habe heraus gefunden wo der Fehler liegt.
Wenn ich den AVR per USB anschließe, erscheint er in der Systemsteuerung unter libusb-win32 devices, sollte er nicht eigentlich auch unter (COM & LPT) stehen?
Denn wenn ich am gleichen USB Port den UNO anschließe, hat dieser automatisch COM Port 7, wenn ich den AVR anschließe passiert nichts. Er weiß anscheinend also nicht wie er eine Verbindung bekommt.
wenn Du keinen programmer dran hast, kommt beim upload:
Binäre Sketchgröße: 1.084 Bytes (von einem Maximum von 32.256 Bytes)
avrdude: Error: Could not find USBtiny device (0x1781/0xc9f)
wenn kein microcontroller am tiny hängt, kommt:
Binäre Sketchgröße: 1.084 Bytes (von einem Maximum von 32.256 Bytes)
avrdude: initialization failed, rc=-1
Double check connections and try again, or use -F to override
this check.
da hängt also irgendwas falsch. oder Du stehst vor demselben problem wie ich damals.
Ok, die IDE braucht also keinen COM-Port für den USBtiny!
Dann habe ich allerdings keine Ahnung was ich noch tun könnte.
Bin mittlerweile echt am verzweifeln.
Ich habe den Aufbau nun schon zum 5. mal versucht.
fehler seh ich keinen. das bild vom stecker in meinem post von gestern ist eine abbildung von Deinem stecker im breadboard von oben.
Bei der buchse vom attiny kommt das kabel von links, wenn Du es richtig draufsteckst.
mich wundert, daß er gar keinen chip erkennt, das hatte ich nie.
Wie groß ist denn die wahrscheinlichkeit, das der ATMEGA defekt ist?
Ich habe nun noch eine LED mit Wiederstand eingesetzt um sicherzustellen, das der Programmer richtig herum eingesteckt ist.
Da ich ja das Breadbord mit den 5 V vom Programmer speise leuchtet die LED auf.
Das funktioniert auch alles.
lerion:
Dann habe ich die Arduino IDE gestartet und folgendes getan:
• Tools---Board---den Arduino UNO ausgewählt
• Tools---Programmer---USBtinyISP ausgewählt
• Dann habe ich den Blink Sketch geladen
• Und dann per Datei---Upload mit Programmer den Sketch hochgeladen
Dann kommt allerdings folgener Text:
avr dude: initialisation failed, rc=-1
Double check connections and try again, or use -F to override this check.
Habe ich hierbei schon einen Fehler gemacht?
Ich bin ganz gewiss nicht der große Programmer-Bediener und lade zu 99,9% alles mit Bootloader hoch, aber wenn Du
die Arduino-Software
mit einem Programmer
auf einen jungfräulichen Chip
ansetzt, dann ist die erste Aktion, die Du ausführen solltest, immer "Tools-Bootloader installieren".
Und zwar auch dann, wenn Du den Bootloader beim Sketch-Upload sowieso plattmachen möchtest oder Du sogar eine Board-Definition für einen Chip aber gar keinen passenden Bootloader hast.
Grund dafür sind die "Fuses" Definitionen in der Boards.txt Datei, und mit der Arduino-Software werden diese Fuses nur mit der Funktion "Bootloader installieren" gesetzt. Erst wenn die Fuses in einem speziellen Modus gesetzt wurden, kann meines Erachtens der Sketch-Upload mit der Arduino-Software und den Boards.txt Einstellungen funktionieren.
Also als erste Funktion immer "Bootloader installieren" mit dem Programmer testen.
Das muss nur einmalig gemacht werden, die Fuses-Einstellungen verändern sich danach nicht.
Und erst wenn "Bootloader installieren" einmal erfolgreich funktioniert hat, dann danach immer wieder "Upload mit Programmer" verwenden. So mache ich das mit neuen Chips jedenfalls, ich habe allerdings nicht denselben Programmer wie Du.