Inhaltsverzeichnis:
- Schritt 1: Entfernen Sie das Netzkabel und entfernen Sie die 9-V-Batterie
- Schritt 2: Schließen Sie die Überbrückungsdrähte an
- Schritt 3: Schalten Sie das RPi ein
- Schritt 4: Installieren Sie Avrdude
- Schritt 5: Bearbeiten Sie die Avrdude-Konfigurationsdatei
- Schritt 6: Laden Sie die.hex Flash-Datei herunter oder kopieren Sie sie nach /home/pi
- Schritt 7: Überprüfen Sie, ob Avrdude mit dem ATMEGA48V-10PU kommunizieren kann
- Schritt 8: Flashen Sie die.hex-Datei auf den ATMEGA48V-10PU
- Schritt 9: Einfache Fehlerbehebung, wenn der Flash fehlgeschlagen ist
Video: So verwenden Sie die GPIO-Pins und Avrdude eines Raspberry Pi zum Bit-Bang-Programmieren von DIMP 2 oder DA PIMP 2: - Gunook
2024 Autor: John Day | [email protected]. Zuletzt bearbeitet: 2024-01-30 07:15
Dies ist eine Schritt-für-Schritt-Anleitung zur Verwendung eines Raspberry Pi und des kostenlosen Open-Source-Befehls avrdude zum Bit-Bang-Programmieren eines DIMP 2 oder DA PIMP 2. Ich gehe davon aus, dass Sie mit Ihrem Raspberry Pi und dem LINUX vertraut sind Befehlszeile. Sie müssen nicht mit der Programmierung von AVR-Chips vertraut sein, aber es hilft, wenn etwas schief geht, da Sie die Ausgabe von avrdude lesen können und eine Vorstellung davon haben, was zu tun ist.
Dieser Vorgang sollte beim ersten Mal etwa 1 Stunde und danach jedes Mal 5 bis 10 Minuten dauern.
Du wirst brauchen:
1) Ein Raspberry Pi mit GPIO-Pins und Netzteil. Ich verwende einen Raspberry Pi Zero W mit angelöteten GPIO-Pins. Das Betriebssystem sollte Raspberry Pi OS (ehemals Raspbian) sein. Ich verwende Raspbian Lite (Stretch), was schon etwas alt ist. Diese Befehle sollten noch auf der neuesten Version von Raspberry Pi OS funktionieren.
In Zukunft werde ich den Raspberry Pi als "RPi" bezeichnen.
2) Buchse-zu-Buchse-Überbrückungsdrähte. Holen Sie sich eine dieser Farben: Rot, Schwarz, Blau, Gelb, Grün, Lila. Ich verwende braun statt lila.
3) Ein DIMP 2 oder DA PIMP 2 mit dem optionalen 10-poligen ICSP-Header eingelötet. Ich verwende hier einen DIMP 2, aber die Anweisungen sind die gleichen für den DA PIMP 2.
4) Internetzugang für das RPi, damit Sie den kostenlosen Open-Source-Befehl avrdude installieren können.
5) Eine Kopie der.hex-Flash-Datei für Ihren DIMP 2 oder DA PIMP 2. Sie können die.hex-Datei selbst aus dem Rohquellcode erstellen, aber ich werde Ihnen hier nicht zeigen, wie das geht.
6) Irgendeine Möglichkeit, sich beim RPi anzumelden – verwenden Sie entweder eine Netzwerkverbindung oder einen direkten Konsolenzugriff. Sie müssen in der Lage sein, Befehle darauf auszuführen.
Schritt 1: Entfernen Sie das Netzkabel und entfernen Sie die 9-V-Batterie
Überprüfen Sie zunächst, ob das Netzkabel am DIMP 2 oder DA PIMP 2 angeschlossen und an das Stromnetz angeschlossen ist. Wenn ja, GEFAHR: LETHAL SCHOCKGEFAHR. Tragen Sie Gummihandschuhe und schalten Sie dann den Hauptwippschalter am DIMP 2 oder DA PIMP 2 aus. Ziehen Sie dann das Netzkabel aus der Netzsteckdose und ziehen Sie das Netzkabel vom DIMP 2 oder DA PIMP 2 ab Ziehen Sie die Gummihandschuhe aus, sobald das Netzkabel entfernt wurde.
Entfernen Sie dann die 9-V-Batterie. Der DIMP 2 wird vom RPi über die roten (Vcc) und schwarzen (GND) Drähte mit Strom versorgt. Schalten Sie den Schiebeschalter am DIMP 2 oder DA PIMP 2 für alle Fälle aus.
Schritt 2: Schließen Sie die Überbrückungsdrähte an
Beginnen Sie mit dem Anschließen der Jumper-Drähte, während das RPi nicht eingeschaltet ist. In Zukunft befinden sich die GPIO-Pins auf dem Raspberry Pi und die ICSP-Pins auf dem DIMP 2 (Header J3) oder DA PIMP 2 (Header J1).
Beziehen Sie sich auf das Diagramm, das ich zusammengeschustert habe, und die Fotos, wenn Sie sich verirren.
Der RPi-Teil des Diagramms stammt von pinout.xyz.
Der ATMEGA48V-10PU-Teil des Diagramms ist urheberrechtlich geschützt von 2016 Atmel Corp.
Ich beanspruche die faire Verwendung dieser Zeichnungen aufgrund der signifikanten, transformativen Ergänzungen.
Schwarz geht von GPIO-Pin 6 zu ICSP-Pin 10. Dies ist GND (Masse)
Gelb geht von GPIO-Pin 12 zu ICSP-Pin 9. Dies ist MISO.
Grün geht von GPIO-Pin 16 zu ICSP-Pin 1. Dies ist MOSI.
Blau geht von GPIO-Pin 18 zu ICSP-Pin 7. Dies ist SCK oder SCLK (SClock)
Lila (in meinen Fotos braun) geht von GPIO-Pin 32 zu ICSP-Pin 5. Dies ist RESET.
Rot geht von GPIO-Pin 4 zu ICSP-Pin 2. Dies ist Vcc (5V Power)
Schritt 3: Schalten Sie das RPi ein
Fahren Sie nun das RPi hoch. Der Voltmeter-Teil von DIMP 2 oder DA PIMP 2 sollte ebenfalls hochfahren, aber Sie werden es nicht erkennen, wenn Sie auf das Display schauen. Messen Sie im Zweifelsfall die Spannung mit dem roten Tastkopf an Pin 20 am ATMEGA48V-10PU und dem schwarzen Tastkopf an Pin 4, 6 oder 8 am ICSP-Header. Es sollte etwa 5 V DC betragen.
Schritt 4: Installieren Sie Avrdude
Meine Anweisungen zeigen nur Befehlszeilenbefehle. Wenn Sie eine GUI haben, sollten Sie ein Terminal öffnen, um diese Befehlszeilenbefehle auszuführen.
Melden Sie sich als Standardbenutzer pi an. Das Standardpasswort ist Himbeere
Installieren Sie den Befehl avrdude, indem Sie Folgendes an der Eingabeaufforderung des Terminals eingeben:
sudo apt-get install avrdude
Schritt 5: Bearbeiten Sie die Avrdude-Konfigurationsdatei
Bearbeiten Sie die avrdude-Konfigurationsdatei, indem Sie Folgendes eingeben:
sudo nano /etc/avrdude.conf
Fügen Sie diese Zeilen in der Mitte der Datei hinzu, wo sich die anderen Programmierdefinitionen befinden. Was ich getan habe, ist, den Programmierabschnitt direkt darüber für id = "linuxgpio" zu kopieren, ihn dann direkt darunter einzufügen (in Zeile 1274) und dann den neuen Abschnitt zu bearbeiten.
Programmierer
id = "pi_1"; desc = "Verwenden Sie die Linux-sysfs-Schnittstelle für Bitbang-GPIO-Leitungen"; type = "linuxgpio"; zurücksetzen = 12; sck = 24; mosis = 23; Miso = 18;;
Speichern Sie dann die Datei durch Drücken von: Strg-O
Und dann beenden Sie den Nano-Editor durch Drücken von: Strg-X
Schritt 6: Laden Sie die.hex Flash-Datei herunter oder kopieren Sie sie nach /home/pi
Kopieren Sie die.hex-Flash-Datei auf das RPi. Ich gehe davon aus, dass Sie wissen, wie das geht. HINWEIS: Verwenden Sie den Befehl wget, curl, git oder scp, um die Datei aus dem Web auf das RPi herunterzuladen.
Die.hex-Datei von DIMP 2 ist hier zusammen mit dem Quellcode:
github.com/dchang0/dimp2
Eine angepasste Version der.hex-Datei von DA PIMP 2 ist hier. Das habe ich nicht getestet!
github.com/jcwren/DaPimp2
Wenn die obige Version der.hex-Datei von DA PIMP 2 nicht funktioniert, ist der ursprüngliche Quellcode von Mikey Sklar hier. Sie müssen es selbst in eine funktionierende.hex-Datei kompilieren. Ich behandle das in dieser Anleitung nicht, da es sich um ein langes (aber nicht schwieriges) Tutorial handelt. Ich habe erfolgreich mehrere funktionierende DA PIMP 2-Einheiten mit diesem Quellcode programmiert:
drive.google.com/open?id=0Bx5Als-UeiZbSUdH…
Oder Sie gehen hier auf die Hauptseite von DA PIMP 2 und klicken auf den Link zum Quellcode.
mikeysklar.blogspot.com/p/da-pimp-battery-…
Legen Sie die.hex-Datei in diesem Pfad und Dateinamen auf dem RPi…
Für den DIMP 2:
/home/pi/dimp2.hex
Für den DA-PIMP 2:
/home/pi/da_pimp2.hex
Schritt 7: Überprüfen Sie, ob Avrdude mit dem ATMEGA48V-10PU kommunizieren kann
Führen Sie den Befehl avrdude aus, um sicherzustellen, dass er mit dem ATMEGA48V-10PU-Chip auf dem DIMP 2 oder DA PIMP 2 kommunizieren kann.
cd /home/pi
sudo avrdude -c pi_1 -p m48 -v
Sie erhalten eine Ausgabeseite. Schau dir das Ende an. Wenn Sie eine solche Antwort erhalten, können Sie fortfahren.
avrdude: AVR-Gerät initialisiert und bereit, Anweisungen anzunehmen
Lesen | ################################################ | 100 % 0,00 s
Wenn nicht, dann stimmt etwas nicht und Sie sollten es herausfinden. Höchstwahrscheinlich handelt es sich um eine Fehlverdrahtung, aber eine andere häufige Beschwerde, die ich gesehen habe, ist, dass der ATMEGA48V-10PU-Chip eine Fälschung ist. Es scheint, dass viele von ihnen, die auf Amazon oder ebay verkauft werden, Fälschungen sind. Die von Mouser oder Digikey und anderen autorisierten Distributoren verkauften sind echt.
Schritt 8: Flashen Sie die.hex-Datei auf den ATMEGA48V-10PU
Führen Sie diesen Befehl aus, um die Programmierung des Chips durchzuführen…
Für den DIMP 2:
cd /home/pi
sudo avrdude -c pi_1 -p m48 -U flash:w:dimp2.hex
Für den DA-PIMP 2:
cd /home/pi
sudo avrdude -c pi_1 -p m48 -U flash:w:da_pimp2.hex
Sie erhalten ungefähr eine Seite der Ausgabe. Suchen Sie nach diesen Zeilen:
avrdude: Flash schreiben (1528 Byte):
Schreiben | ################################################ | 100 % 0,79 s
avrdude: verifizieren …
avrdude: 1528 Byte Flash verifiziert avrdude: abgesicherter Modus: Sicherungen OK (E:FF, H:DF, L:62)
Wenn Sie so weit gekommen sind, sollten Sie die LED-Anzeige mit Nullen für die Spannung sehen. Wenn Sie die Nullen sehen, sind Sie fertig! Wenn nicht, fahren Sie mit dem nächsten Schritt fort.
Wenn Sie die Nullen sehen, fahren Sie Ihr RPi mit diesem Befehl ordnungsgemäß herunter:
sudo shutdown -h jetzt
Wenn die Betriebsanzeige am RPi erlischt (der DIMP 2 oder DA PIMP 2 brennt immer noch), können Sie das Netzteil vom RPi trennen. Ziehen Sie dann die Überbrückungsdrähte zwischen dem RPi und dem DIMP 2 oder DA PIMP 2 ab.
Schritt 9: Einfache Fehlerbehebung, wenn der Flash fehlgeschlagen ist
Wenn auf dem Display Ihres DIMP 2 oder DA PIMP 2 keine Nullen angezeigt werden, ist es an der Zeit, Fehler zu beheben.
Überprüfen Sie auch hier zuerst Ihre Verkabelung.
Überprüfen Sie dann die von avrdude angezeigten Sicherungszustände. Es ist möglich, dass bei Ihrem Chip die Sicherungen auf andere Werte als die Werkseinstellungen eingestellt waren. Möglicherweise müssen die Sicherungen des Chips zurückgesetzt werden, was ein völlig anderes Hardwaregerät erfordert. Dies ist ein Problem bei vielen der gefälschten ATMEGA48V-10PU-Chips, die bei ebay verkauft werden - es handelt sich um alte Chips, die aus ausrangierter Hardware gezogen wurden, und die Sicherungen wurden eingestellt, und der Verkäufer hat sich nicht die Mühe gemacht, die Sicherungen zurückzusetzen.
Manchmal ist der Chip nicht einmal ein ATMEGA48V-10PU. Es könnte ein anderer Chip sein, der umbenannt wurde. Normalerweise können Sie diese Fälschungen erkennen, indem Sie sich die Markierungen auf der Ober- und Unterseite des Chips genau ansehen. Es ist klüger, Ihren ATMEGA48V-10PU über einen vertrauenswürdigen Lieferanten wie Mouser oder Digikey zu beziehen.
Empfohlen:
Die Kurzanleitung zum Erstellen eines Videos mit Ihrem IPhone und Hochladen auf Facebook oder YouTube: 9 Schritte
Die Kurzanleitung zum Erstellen eines Videos mit Ihrem IPhone und Hochladen auf Facebook oder YouTube: Verwenden Sie diesen einfachen 5-Schritte-Prozess (Instructables lässt es wie mehr Schritte aussehen, als es tatsächlich ist), um Ihr erstes YouTube- oder Facebook-Video zu erstellen und hochzuladen - mit nur dein iPhone
So verwenden Sie Tinkercad zum Testen und Implementieren Ihrer Hardware – wikiHow
So verwenden Sie Tinkercad zum Testen und Implementieren Ihrer Hardware: Die Schaltungssimulation ist eine Technik, bei der Computersoftware das Verhalten einer elektronischen Schaltung oder eines Systems simuliert. Neue Designs können getestet, bewertet und diagnostiziert werden, ohne die Schaltung oder das System tatsächlich aufzubauen. Schaltungssimulation kann ein
So verstecken Sie Dateien, die andere nicht sehen oder lesen sollen.: 7 Schritte
So verstecken Sie Dateien, die andere nicht sehen und oder lesen möchten.: Dieses Instructable zeigt Ihnen, wie Sie das Format einer Datei ändern, um sie nutzlos zu machen, es sei denn, Sie wissen, welcher Dateityp es ursprünglich war. Zum Beispiel ein mpeg (Filmdatei) in ein txt/doc (Text/Dokument) ändern, damit Sie es nicht abspielen können, geschweige denn die Informationen sehen
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Hinzugefügte Informationen: 4 Schritte
So erhalten Sie Musik von fast jeder (Haha) Website (solange Sie sie hören können, können Sie sie bekommen … Okay, wenn sie in Flash eingebettet ist, können Sie es möglicherweise nicht) BEARBEITET!!!!! Zusätzliche Informationen: Wenn Sie jemals auf eine Website gehen und ein Lied abspielen, das Sie mögen und es wollen, dann ist hier das anweisbare für Sie, nicht meine Schuld, wenn Sie etwas durcheinander bringen (nur so wird es passieren, wenn Sie ohne Grund anfangen, Dinge zu löschen) ) Ich konnte Musik für
So bauen Sie eine Uhr, die die Zeit an die Wand projiziert – wikiHow
So bauen Sie eine Uhr, die Zeit an die Wand projiziert: Dieses Instructable zeigt Ihnen, wie Sie eine Projektoruhr bauen. Mit diesem Gerät können Sie die Zeit an die Wand projizieren. Basierend auf einem kleinen LCD-Wecker (nicht zu klein, sondern kann nicht projiziert und bearbeitet werden) ist dies eine gute Möglichkeit