Wie wechsele ich von der Verwendung der Arduino IDE zu einfachem avrdude/make?

Teil drei einer dreiteiligen Serie über den Übergang von Arduino zu einem einfachen AVR-Mikrocontroller und minimale unterstützende Komponenten ( Teil eins , Teil zwei )

Ich weiß bereits, wie man einen Arduino als Programmierer für einen ATmega verwendet, und ich weiß, wie man einen externen Programmierer für den ATmega/Arduino mit der Arduino IDE verwendet .

Was muss ich wissen, um mit der Programmierung eines ATmega 1 mit den Befehlszeilentools zu beginnen? Ein kurzer Überblick über die verschiedenen Sprachfunktionen und Schritte zum Erstellen/Hochladen wäre schön.

1. ATmega328 oder ein kleinerer/günstigerer AVR-Mikrocontroller, wenn möglich sogar ein ATTiny, auf dem die Anwendung weiterhin ausgeführt wird: In diesem Beitrag finden Sie einige Details zum Verkleinern auf einen ATTiny.

Antworten (1)

Das Tool, das ich in diesem Fall verwenden würde, ist Cduino . Cduino ist ein Tool, das entwickelt wurde, um eine bessere Kontrolle über die Aktionen des ATmega zu geben, und erfordert keinen Bootloader.

Das cduino-Projekt versucht, die Migration vom Arduino zu einfacheren Hardware-Setups zu vereinfachen, insbesondere zu solchen, denen eine serielle USB-Schnittstelle und ein Bootloader fehlen. Dies kann für Benutzer interessant sein, für die die Kosten definitiv ein Faktor sind.

Sie benötigen ein USB-Programmierkabel und ein Duemilanove oder ein Uno, da es den Mega328p-Chip verwendet. Natürlich scheinen Uno's und Duemilanove's die häufigsten zu sein, also sollte das kein Problem sein. Sie möchten auch einen ISP (Beispiele im ersten Teil der Frage) für die systeminterne Programmierung (dh um den Bootloader zu vermeiden).

Es ist dem hervorragenden Arduino-Projekt sehr ähnlich und verwendet die gleiche offene Hardware, vermeidet jedoch die neue Verdrahtungssprache, die C++-Zwischenschicht und die Java-basierte IDE.

Cduino selbst ist ein Befehlszeilentool, mit dem Sie direkt auf den Arduino schreiben können. Sie müssen einige Pakete installieren, darunter make, avrdudeund screen. Um es ohne den Bootloader laufen zu lassen, schließen Sie das Arduino an, wie ich es in der vorherigen Frage erklärt habe, und generic.mkändern Sie in der Datei UPLOAD_METHODvon arduino_blzu AVRISPmkII.

Das Hochladen der Datei selbst ist eine einfache Befehlszeilensequenz:

make -R -C <program_name> writeflash

Um dann seriell mit dem Board zu kommunizieren, verwenden Sie:

make -R -C term_io writeflash 
make -R -C term_io run_screen

Hier gibt es eine Reihe von 'Lektionen' zum Schreiben von Code für Cduino . Es ist im Grunde C, aber mit ein paar Bibliotheksfunktionen, die für den ATMega328p-Chip spezifisch sind - beachten Sie, dass es C ist, NICHT C++ .