Bit Bang ATmega328 mit Arduino Bootloader mit AVRDUDE

Ich habe ein Arduino Uno-Entwicklungsboard mit einem leeren ATmega328-Chip (kein Arduino-Bootloader. Der mit dem Gerät gelieferte Chip ist in einem separaten eigenständigen Projekt eingelötet, sodass ich das Arduino-Board für mehr als eine Instanz verwenden kann :))

Wenn Sie also hier schauen , kann der Uno den Chip nicht programmieren, da er (noch?) Nicht als ISP verwendet werden kann.

Wäre ich in der Lage, AVRDUDE in einem Bit-Bang-Programmierermodus zu verwenden und die SPI-Leitungen des ATmega an meine serielle Schnittstelle anzuschließen (offensichtlich mit den richtigen Leitungen) und den Bootloader zu programmieren? Ich habe Themen im Internet gesehen, die besagen, dass dies mit anderen AVR-Chips möglich ist, aber ich bin hier nur wirklich ein Noob, der versucht, durchzukommen. Ich verstehe, dass ich dafür einen AVR-ISP für ca. 20 US-Dollar kaufen kann, aber ich hatte gehofft, morgen/heute Abend mit einem Projekt beginnen zu können, und möchte nicht, dass dieses Wochenende verschwendet wird (während ich darauf warte, dass es ankommt ...).

Hat jemand einen guten Hinweis zur Vorgehensweise?

Um einige Verwirrung zu beseitigen, versuche ich, einen ATmega328 mit einem Arduino-Bootloader zu programmieren. Ich habe nur das Uno-Entwicklungsboard und einen leeren ATmega328. Ich habe einen seriellen Anschluss und möchte wirklich nicht warten, bis ein AVRISP eintrifft, da ich lieber früher als später anfangen möchte. Geht das mit dem ATmega328? Wie würde ich vorgehen?

Wie wäre es, wenn Sie einen der unzähligen seriellen AVR-Programmierer bauen und damit die Arduino-Firmware schreiben? Dieser hat bei mir funktioniert, aber ich habe einen USB-zu-Seriell-Konverter, also funktioniert er mit erstaunlichen 3 B/s. Wenn die Programmierzeilen in Ihrem anderen Projekt verfügbar sind, können Sie die Firmware mit AVRdude sichern. Du könntest es wahrscheinlich auch aus dem Internet bekommen, aber ich weiß nicht, wo ich suchen soll.
@AndrejaKo, diesen ersten Link habe ich gesucht. Wenn Sie das als Antwort angeben würden, wäre ich bereit, es richtig zu markieren. Ich bin ziemlich neu in der Embedded-Welt und ein einfaches, aber effektives Tutorial wie dieser Link ist genau das, wonach ich gesucht habe.
Nur zu Ihrer Information, Tonnen von AVR-ISP-Klonen werden für ~ $ 2- $ 5 auf e-bay und ähnlichen Websites verkauft.

Antworten (3)

Wie wäre es, wenn Sie einen der unzähligen seriellen AVR-Programmierer bauen und damit die Arduino-Firmware schreiben? Dieser hat bei mir funktioniert, aber ich habe einen USB-zu-Seriell-Konverter, also funktioniert er mit erstaunlichen 3 B/s. Wenn die Programmierzeilen in Ihrem anderen Projekt verfügbar sind, können Sie die Firmware mit AVRdude sichern. Du könntest es wahrscheinlich auch aus dem Internet bekommen, aber ich weiß nicht, wo ich suchen soll

3 B/s? Das ist erstaunlich!
@reemrevnivek♦ Ja, besonders wenn ich ein 10K-Programm hochladen möchte. Rückblickend hat mich das dazu gebracht, viel mehr zu debuggen, bevor ich Programme in das EEPROM brenne.

Mit Arduino Uno ist das nicht möglich.

Versuchen Sie es mit Arduino Duemilanove. Ich nutze sie und verknüpfe Prozess und Arbeit. http://arduino.cc/en/Tutorial/ArduinoToBreadboard

Tatsächlich ist dies Berichten zufolge durch eine Vielzahl von Mitteln möglich, beispielsweise durch einen 120-Ohm-Widerstand zwischen der Rücksetzleitung und der Logikversorgung. Es gibt auch eine Skizze, in der die Bootloader-Nutzlast integriert ist, sodass keine Kommunikation erforderlich ist, wodurch das Problem beim Zurücksetzen vermieden wird. Es ist eine Schande, dass Arduino diese jetzt übermäßig pessimistische Seite nicht aktualisiert hat.

AVR-Chips können nur einmal aufgezeichnet werden, einmal aufgezeichnet müssen Sie sie löschen, indem Sie die Sicherung löschen, dies kann nur mit HV-Programmierern durchgeführt werden. Einmal gelöscht, können Sie jeden AVR neu programmieren.