Teil zwei einer dreiteiligen Serie über den Übergang von Arduino zu einem einfachen AVR-Mikrocontroller und minimalen unterstützenden Komponenten ( Teil eins , Teil drei )
Ich habe eine Menge Leute gesehen, die das im Internet gefragt haben.
Ich weiß bereits, wie man ein Barebones ATmega328 mit einem Arduino als Programmierer programmiert und verwendet . Ich möchte jetzt einen externen Programmierer mit der Arduino IDE verwenden.
Wie soll ich bei diesem Übergang vorgehen? Was soll ich lernen (Es wäre schön, wenn ein Mini-Tutorial für einige der Teile als Teil der Antwort zur Verfügung gestellt würde.)
Antworten:
Hinweis: Dieses Mini-Tutorial basiert auf den offiziellen Informationen hier auf der Arduino-Website. Es beinhaltet auch die Verwendung der offiziellen Arduino IDE.
Hinweis 2: Die zu Produkten bereitgestellten Links können entweder Farnell- Links (da sie Datenblätter enthalten) oder die tatsächlichen Produktseiten auf der Website des Herstellers sein.
Schritt 1: Besorgen Sie sich einen externen Programmierer
Das erste, was Sie beachten müssen, ist, dass Sie einen externen Programmierer benötigen, um den Bootloader zu umgehen und die 1K- oder 2K-Speicherkapazität zurückzugewinnen, die er belegt (12,5% der Speicherkapazität) gesamten Speichers) zurückzugewinnen. Sie könnten einen verwenden AVR-ISP , ein STK-500 , oder einen Parallelport - Programmierer - die offizielle Arduino Website Anleitungen dafür hier . Beachten Sie, dass Sie nicht über den Parallelprogrammierer mit der Karte kommunizieren können - es wird empfohlen, dafür ein serielles Kabel zu verwenden. Der Hauptvorteil eines Parallelprogrammiergeräts besteht darin, dass es viel billiger ist als die anderen, wenn Sie etwas löten möchten. Sie benötigen nur ein paar (3) Widerstände und ein paar Anschlüsse, während Sie von einem ISP gesichert werden können zu £ 30 / $ 50 (Umrechnungskurs ist ungefähr).
Schritt 2: Bearbeiten Sie die Arduino-Voreinstellungsdatei
Als Nächstes müssen Sie die Arduino-IDE konfigurieren, damit Sie den Bootloader umgehen können. Stellen Sie sicher, dass Sie die Arduino IDE NICHT geöffnet haben! Die Einstellungsdatei
preferences.txt
befindet sich abhängig von Ihrem Betriebssystem an den folgenden Speicherorten:C:\Documents and Settings\<Username>\Application Data\Arduino\preferences.txt
(Windows)/Users/<Username>/Library/Arduino/preferences.txt
(Mac)~/.arduino/preferences.txt
(Linux)Um in Windows zur Einstellungsdatei zu gelangen, gehen Sie zum Startmenü und dann zu
%appdata%
(Hinweis: Ich verwende Windows nicht regelmäßig, zögern Sie nicht, mich zu korrigieren). Navigieren Sie dann zu Arduino und dann zupreferences.txt
Verwenden Sie auf einem Mac entweder Terminal und gehen Sie wie folgt vor:
Oder verwenden Sie im Finder Springen (Cmd-Shift-G) und geben Sie ein
~/Library/Arduino
. Beide führen Sie zu einem Finder-Fenster mitpreferences.txt
in.Auf Unix-Systemen beginnen Ordner mit einem '.' (wie
.cache
,.git
) sind standardmäßig ausgeblendet, daher müssen Sie unter Linux das Terminal verwenden und Folgendes eingeben:Hinweis: Sie können Nautilus bei Bedarf durch ersetzen
gnome-open
. Ich weiß, dass beide auf den gängigen Linux-Varianten funktionieren, aber Sie haben möglicherweise Probleme mit einigen der eher "exotischen" Varianten.Wenn Sie die
preferences.txt
Datei gefunden haben, öffnen Sie sie und ändern Sie den Namenupload.using
vonbootloader
in den Namen eines der Programmierer im./hardware/programmers.txt
Unterverzeichnis. Wenn Sie den Bootloader nur von einer Karte entfernen möchten,./hardware/boards.txt
können Sie den<board>.upload.using
Parameter in ändern , und alle anderen Karten verwenden den Bootloader weiterhin. Speichern Sie dann einfach die relevante Datei und schließen Sie sie (mein Arduino ist gerade abgestürzt und ich habe fast die Antwort verloren, möglicherweise, weil ich das vergessen habe).Schritt 3: Laden Sie die Skizze hoch
Sobald Sie die relevante Datei bearbeitet haben, öffnen Sie die Arduino IDE erneut und laden Sie die Skizze wie gewohnt hoch. Wenn Sie gerade bearbeitet haben
./hardware/boards.txt
, verfügt nur diese bestimmte Karte nicht über den Bootloader. Wenn Sie jedoch bearbeitetpreferences.txt
haben, verfügen nicht alle Karten über den Bootloader.Schritt 4: Ersetzen Sie den Bootloader
Wenn Sie den Bootloader (aus welchem Grund auch immer) wieder auf Ihren Boards haben möchten, entfernen Sie zuerst entweder den
<board>.upload.using
Parameter oder setzen Sie ihnupload.using
zurück aufbootloader
. Dann müssen Sie den Bootloader wieder auf die betroffenen Boards brennen - diese Antwort erklärt einigermaßen gut eine Methode, dies zu tun, und es gibt eine einfachere Methode, den Arduino-Bootloader nur mit nur einem ISP hochzuladen (den Sie von früher haben sollten). auf der offiziellen Seite hier .quelle