Inhaltsverzeichnis:
- Schritt 1: Stückliste und Werkzeuge
- Schritt 2: Schaltplan/Layout
- Schritt 3: Löten
- Schritt 4: Bootloading
- Schritt 5: Hochladen
- Schritt 6: Zukünftige Arbeit
Video: Atmega328p Companion - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:21
ATMEGA328P Companion: Das Bootloader- und Programmiermodul
Wenn Sie wie ich sind, sind Sie süchtig nach Projekten und Arduino. Wenn Sie jedoch eine Reihe von Projekten mit einem Arduino als Gehirn durchgeführt haben, haben Sie es wahrscheinlich satt, das Arduino-Board als Ganzes zu betrachten, Ihr Projekt zu überladen und insgesamt nur schlecht auszusehen. Daher entschied ich, dass ich von den Arduino-Boards auf die Verwendung nur des ICs umsteigen wollte.
Geben Sie atmega328p ein.
Der atmega328p ist wahrscheinlich der produktivste Arduino-kompatible IC auf dem Markt. Es ist keineswegs das billigste oder leistungsstärkste, aber wenn man beides berücksichtigt, ist es meiner Meinung nach die beste Leistung pro Dollar. Sind Sie also bereit, Ihre Projekte viel professioneller und weniger wie ein Konglomerat von Standardmodulen aussehen zu lassen? Wenn ja, lesen Sie diese Anleitung durch und Sie erhalten die notwendigen Informationen, um Ihr eigenes Modul zu erstellen, mit dem Sie einen Bootloader auf Ihr Ziel atmega328p flashen, die Blinkskizze hochladen, um sicherzustellen, dass die Dinge funktionieren, und schließlich Ihre eigenen Skizzen hochladen für Ihre individuellen Projekte.
Schritt 1: Stückliste und Werkzeuge
Das Wichtigste zuerst, dieses instructable wird nicht Schritt für Schritt sein, wie man ein Handbuch baut, aber ich gehe davon aus, dass Sie wissen, wie man einen Schaltplan liest und das auf ein Board übersetzen kann. In diesem Sinne sind hier die notwendigen Materialien und Werkzeuge:
Materialien:
- 1x 40x60mm Protoboard oder PCB
- 1x 6-poliger Stecker (ich habe rechtwinklige Stecker verwendet)
- 2x 14pin Buchsenleiste
- 1x 6-Pin-Buchsenleiste
- 1x 2pin Buchsenleiste
- 2x 22pF Kondensator (22)
- 1x 0,1uF Kondensator (104)
- 1x 10kOhm Widerstand
- 2x 330 Ohm Widerstand
- 1x LED (beliebige Farbe für Betriebsanzeige - 3mm für PCB-Design)
- 1x LED (beliebige Farbe für digitalen Pin 13 für Blinkskizze - 3mm für PCB-Design)
- 1x 16MHz Quarz
- 1x Schiebeschalter
- 1x Druckknopf
Werkzeuge:
- Arduino Uno
- Lötkolben
- 6x M-M-Jumper
- FTDI-Programmierer
- USB-Kabel, das zu Ihrem FTDI-Programmierer passt
- Arduino-IDE
Schritt 2: Schaltplan/Layout
An diesen Schritt angehängt sind die Eagle-Dateien, die ich verwendet habe. Es steht Ihnen frei, sie zu ändern und nach Belieben zu ändern. Ich habe die Platine jedoch so entworfen, dass sich alle Spuren auf der unteren Schicht befinden, sodass sie leicht auf einer Leiterplattenfräse (wenn Sie Zugang zu einer haben) mit einer einseitigen Platine hergestellt werden können. Es ist auch auf der Unterseite, so dass es einfach ist, die Komponenten zusammenzulöten.
Wenn Sie jedoch die Leiterplatte haben möchten, führen Sie einfach die CAM aus, um die erforderlichen Gerber-Dateien für Ihren bevorzugten Hersteller zu erhalten. Ich mag OSH Park, weil Sie ihnen einfach die Board-Datei geben und sie die notwendigen CAMs ausführen, um die benötigten Dateien zu erhalten.
Schritt 3: Löten
Es gibt also drei Möglichkeiten, dieses Board zu erstellen:
- Bestücken einer Leiterplatte
- Bestücken einer gefrästen Platine
- Bestücken eines Protoboards
Das Bestücken der Platine ist recht einfach und sollte Ihnen keine Probleme bereiten, da alles beschriftet ist.
Das Bestücken einer gefrästen Platine sollte auch nicht allzu schwierig sein, da sie genau so modelliert ist wie die Platine, außer dass Sie keine Markierungen haben. Folgen Sie also der Platinendatei in Eagle, um sicherzustellen, dass Sie die Dinge einfügen an der richtigen Stelle (insbesondere die Polarität der LEDs).
Schließlich ist das Bestücken eines Protoboards am intensivsten, jedoch nicht allzu schwierig. Ich habe ein paar Bilder zu diesem Schritt, die meine Protoboard-Version zeigen und wie ich alles einpasse. Beachten Sie, dass sich der LM7805, die beiden 4,7uF-Kondensatoren und die Schraubklemmen nicht auf Ihrem Board befinden. Ich spielte mit der Idee herum, dass dies die Möglichkeit hat, extern mit Strom versorgt zu werden, aber als ich anfing, darüber nachzudenken, entschied ich, dass es letztendlich eine Verschwendung von Platz auf dem Board war.
Schritt 4: Bootloading
Einrichten des Bootloading-Arduino:
Hier brauchen Sie also Ihr anderes Arduino. Gehen Sie zuerst hierher und laden Sie die Dateien von diesem Typen herunter. Zu diesem Zeitpunkt sind die Dateien ein paar Jahre alt, aber sie funktionieren immer noch hervorragend. Sobald Sie sie heruntergeladen haben, öffnen Sie optiLoader.ino und Ihre Arduino-IDE sollte Sie auffordern, sie in einen Ordner zu legen. Tun Sie dies und legen Sie dann die Datei optiLoader.h in den Ordner mit der.ino. Jetzt sind Sie bereit, diese Skizze auf Ihr Arduino-Bootloading hochzuladen. Ich habe ein Arduino Uno verwendet, also weiß ich, dass es damit funktioniert, aber ich bin mir sicher, dass es auch mit anderen Boards funktioniert.
Sobald Sie die optiLoader.ino auf Ihren Arduino hochgeladen haben, ist alles eingerichtet, um viele verschiedene Arduino-Chips zu booten. Ich habe es nur mit dem atmega328p gemacht, aber der Code ist so eingerichtet, dass er die Ziel-MCU erkennt und den richtigen Bootloader flasht, was ziemlich nett ist. Wenn Sie dieses Arduino jetzt mit einem installierten Chip an das Atmega Companion-Board anschließen und einschalten, erkennt es automatisch, dass das Ziel ein atmega328p ist, und blinkt automatisch den entsprechenden Bootloader. Kein Reset-Springen, kein seltsames Zeug; einfach Plug-and-Play.
Verkabelung des Bootloaders mit dem Companion Board:
[Bootloader Arduino] [Atmega328p Companion Board]
- D10 Reset / Pin 1
- D11 MOSI / Stift 17
- D12 MISO / Stift 18
- D13 SCK / Stift 19
- 5V Vcc / Pin 20 oder 21
- GND Masse / Stift 22
Die Pins beziehen sich auf die Beine des ICs selbst. Wenn dies verwirrend ist, sehen Sie sich das Platinenbild aus dem Schaltplan / Layout-Schritt an, da die Pins auf der Begleitplatine beschriftet sind.
Flashen des Bootloaders:
Nachdem Sie nun das Bootloader-Arduino-Setup mit der optiLoader.ino-Skizze erhalten haben und es jetzt auch mit Ihrem Companion Board verdrahtet ist, stellen Sie sicher, dass der Companion Board-Schalter auf "Bootload" anstelle von "Upload" eingestellt ist, und stecken Sie dann Ihr Arduino zu einem Computer. Sie sollten die Lichter auf Ihrem Arduino und Ihrem Companion Board mehrmals blinken sehen. Nach ein paar Sekunden sollten beide dunkel werden und nicht mehr blinken. Dies bedeutet wahrscheinlich, dass Ihr atmega328p-IC erfolgreich mit dem Bootloader geflasht wurde. Um sicherzustellen, dass alles gut gelaufen ist, schließen Sie es an Ihren Computer an und öffnen Sie die Arduino IDE und dann den seriellen Monitor. Ändern Sie die Baudrate auf 19200. Wenn es dann nicht automatisch neu startet, drücken Sie die Reset-Taste auf Ihrem Arduino. Sie sollten eine Reihe von Text sehen, der beschreibt, was das Skript tut. Am Ende sollte es keine Fehlermeldungen enthalten und Sie darüber informieren, dass der Vorgang abgeschlossen ist.
Wenn Sie einen Fehler erhalten, überprüfen Sie Ihren Switch und stellen Sie sicher, dass Sie sich auf "Bootload" befinden. Wenn Sie zu diesem Zeitpunkt immer noch Fehler erhalten, überprüfen Sie Ihre gesamte Verkabelung und stellen Sie sicher, dass sie korrekt ist.
Schritt 5: Hochladen
Dies ist der einfache Schritt.
Trennen Sie alle Drähte aus dem vorherigen Schritt und schalten Sie den Schalter von "Bootload" auf "Upload". Stecken Sie Ihr FTDI-Modul ein. Ich mag den Adafruit CP2104 und den SparkFun CH340G hauptsächlich, weil sie relativ günstig sind und die Pinbelegung zu den FTDI-Pins passt, die von der Begleitplatine kommen.
Sobald Sie Ihr FTDI an Ihr Companion-Board angeschlossen haben, fahren Sie fort und schließen Sie es an Ihren Computer an. Laden Sie von dort eine Blink-Beispielskizze hoch, um sicherzustellen, dass der Bootloader korrekt geflasht wurde. Wählen Sie Arduino/Genuino Uno aus dem Board-Menü. Sobald die Blink-Skizze hochgeladen wurde, sollte die Blink-LED wie erwartet blinken. Wenn das funktioniert, können Sie Ihre eigenen benutzerdefinierten Skizzen auf den IC hochladen, genau wie bei jedem anderen Arduino.
Schritt 6: Zukünftige Arbeit
In Zukunft plane ich, dies zu einem Arduino Uno-Schild zu machen. Es sollte nicht lange dauern, und wenn die Leute wollen, kann ich die Eagle-Dateien dafür auch hier hochladen. Dies würde den Bootloading-Schritt vereinfachen, da Sie sich keine Sorgen über eine falsche Verdrahtung machen müssen. Ich bin auch für andere Verbesserungsvorschläge offen, aber ich vermute nicht, dass ich damit noch viel mehr machen werde, da es nur ein notwendiger Schritt war, um meine zukünftigen Projekte vorzubereiten.
Wenn Sie mehr von meinen zukünftigen Projekten sehen möchten, lassen Sie es mich wissen, und ich werde versuchen, die Community auf dem Laufenden zu halten.
Empfohlen:
Bootloader auf Atmega328p-AU (SMD) brennen – wikiHow
So brennen Sie Bootloader auf Atmega328p-AU (SMD): Hallo an alle !! In diesem Instructables zeige ich Ihnen, wie man Bootloader auf Atmega328p-AU (SMD) brennt und wie man einen Arduino NANO von Anfang bis Ende macht. Das Verfahren geschrieben in Diese instructables können verwendet werden, um alle Arduino-Boards für Sie zu machen
So laden Sie Skizzen auf ATMEGA328P-PU hoch – wikiHow
So laden Sie Skizzen auf ATMEGA328P-PU hoch: In diesem Artikel können Sie eine Skizze in einen ATMEGA328P-PU hochladen, die mit dem Bootloader und dem Preinserito (die Prozedur für die Bootloader-Vorgehensweise) hochgeladen wird. In diesem Artikel besprechen wir, wie man eine Skizze an einen Geldautomaten hochlädt