Inhaltsverzeichnis:

8-Bit-Sprite-Uhr - Gunook
8-Bit-Sprite-Uhr - Gunook

Video: 8-Bit-Sprite-Uhr - Gunook

Video: 8-Bit-Sprite-Uhr - Gunook
Video: 8 NES Games That Had Character Sprites Swapped (Nintendo Entertainment System) 2024, November
Anonim

Von khinds10www.kevinhinds.comFolgen Sie mehr vom Autor:

Unzerstörbare Kindercouch!
Unzerstörbare Kindercouch!
Unzerstörbare Kindercouch!
Unzerstörbare Kindercouch!
Schnelle und einfache PCs zur Wandmontage
Schnelle und einfache PCs zur Wandmontage
Schnelle und einfache PCs zur Wandmontage
Schnelle und einfache PCs zur Wandmontage
Digitaler Kaminbildschirm
Digitaler Kaminbildschirm
Digitaler Kaminbildschirm
Digitaler Kaminbildschirm

About: 3D-Druck und Design von RaspberryPI-Projekten seit einigen Jahren Mehr über khinds10 »

Game Room Nintendo Time mit freundlichen Sprites zur Begrüßung

Schritt 1: Flashen der RaspberriPi-Festplatte / Installieren der erforderlichen Software (unter Verwendung von Ubuntu Linux)

Erstellen Sie Ihre neue Festplatte für DashboardPI

Legen Sie die microSD über einen USB-Adapter in Ihren Computer ein und erstellen Sie das Disk-Image mit dem Befehl dd

Suchen Sie Ihre eingelegte microSD-Karte über den Befehl df -h, unmounten Sie sie und erstellen Sie das Disk-Image mit dem Befehl disk copy dd

$ df -h /dev/sdb1 7,4G 32K 7,4G 1 % /media/XXX/1234-5678

$ umount /dev/sdb1

Achtung: Stellen Sie sicher, dass der Befehl absolut korrekt ist, Sie können mit diesem Befehl andere Festplatten beschädigen

if=Speicherort der RASPBIAN JESSIE LITE-Bilddatei of=Speicherort Ihrer microSD-Karte

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (Hinweis: in diesem Fall ist es /dev/sdb, /dev/sdb1 war eine vorhandene Werkspartition auf dem microSD)

Einrichten Ihres RaspberriPi

Legen Sie Ihre neue microSD-Karte in das Raspberrypi ein und schalten Sie es mit einem Monitor ein, der an den HDMI-Anschluss angeschlossen ist

Anmeldung

Benutzer: Pi-Pass: Himbeere

Ändern Sie aus Sicherheitsgründen Ihr Kontopasswort

sudo passwd pi

Aktivieren Sie die erweiterten RaspberriPi-Optionen

sudo raspi-config

Wählen Sie: 1 Dateisystem erweitern

9 Erweiterte Optionen

A2 Hostname ändern in "SpriteClock"

A4 SSH SSH-Server aktivieren

A7 I2C i2c-Schnittstelle aktivieren

Aktivieren Sie die englische/US-Tastatur

sudo nano /etc/default/tastatur

Ändern Sie die folgende Zeile: XKBLAYOUT="us"

Starten Sie PI neu, damit Änderungen am Tastaturlayout/Größe des Dateisystems wirksam werden

$ sudo shutdown -r now

Automatische Verbindung zu Ihrem WLAN

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Fügen Sie die folgenden Zeilen hinzu, damit sich Ihr Himbeerpi automatisch mit Ihrem Heim-WLAN verbindet (wenn Ihr drahtloses Netzwerk im folgenden Beispiel beispielsweise "linksys" heißt)

network={ ssid="linksys" psk="WIRELESS PASSWORD HERE" } Starten Sie PI neu, um eine Verbindung zum WLAN-Netzwerk herzustellen

$ sudo shutdown -r now

Nachdem sich Ihr PI nun endlich im lokalen Netzwerk befindet, können Sie sich per SSH remote bei ihm anmelden. Aber zuerst müssen Sie die IP-Adresse abrufen, die es derzeit hat.

$ ifconfig Suchen Sie in der Ausgabe des folgenden Befehls nach "inet addr: 192.168. XXX. XXX" für die IP-Adresse Ihres PI

Gehen Sie zu einem anderen Computer und melden Sie sich über ssh. an Ihrem Raspberrypi an

$ ssh [email protected]. XXX. XXX

Schritt 2: Beginnen Sie mit der Installation der erforderlichen Pakete

Beginnen Sie mit der Installation der erforderlichen Pakete

$ sudo apt-get update

$ sudo apt-get upgrade

$ sudo apt-get install vim git python-smbus i2c-tools python-imaging python-smbus build-essential python-dev rpi.gpio python3 python3-pip python-numpy

Lokale Zeitzoneneinstellungen aktualisieren

$ sudo dpkg-reconfigure tzdata

Wählen Sie Ihre Zeitzone über die Benutzeroberfläche aus

Richten Sie den einfachen Befehl für das Verzeichnis l ein [optional]

vi ~/.bashrc

füge die folgende Zeile hinzu:

Alias l='ls -lh'

Quelle ~/.bashrc

Hervorhebung der VIM-Standardsyntax behoben [optional]

sudo vi /etc/vim/vimrc

Entkommentieren Sie die folgende Zeile:

Syntax an

i2c Backpack Python-Treiber installieren

$ cd ~

$ git clone

$ cd Adafruit_Python_LED_Rucksack/

$ sudo python setup.py install

i2c Python-Treiber installieren

Installieren Sie den NeoPixel-Treiber wie folgt

sudo apt-get install build-essential python-dev git scons swig

sudo pip3 install --upgrade setuptools

sudo pip3 installieren rpi_ws281x

cd rpi_ws281x

scons

cd python

sudo python setup.py installieren

CD-Beispiele/

sudo python strandtest.py

Klonen Sie das Repository in Ihrem Home-Verzeichnis, damit die Uhr funktioniert

cd ~

git-Klon

Schritt 3: Benötigtes Zubehör

Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht
Vorräte werden gebraucht

Pi Zero W/1.3/1.2Wifi USB (wenn Pi Zero 1.3/1.2)Keyestudio I2C 8x8 LED Matrix HT16K33 (x7)16x16 RGB LED Flexible WS2812B MatrixFrosted Paint12x12 BilderrahmenSchneidbare dünne Plexiglasplatte12x12" 2-Wege-Spiegel-Plexiglasplatte12x12" getönt Plexiglasscheibe

Schritt 4: Aufbau der Sprite-Uhr

Bau der Sprite-Uhr
Bau der Sprite-Uhr

Bereiten Sie die HT16K33-Matrixeinheiten vor

Löten Sie die Pins auf der Rückseite, um ihnen jeweils eine eindeutige i2c-Adresse zuzuweisen. Es gibt 3 Jumper zum Löten oder Nichtlöten in 8 Kombinationen. Ich habe alle Kombinationen gelötet, um jeder Einheit eine andere Adresse zuzuweisen, auf die der Python-Code zugreifen kann, um die Uhrzeit anzuzeigen.

Schritt 5: Drucken Sie die Projektbeilage

Drucken Sie die Projektbeilage
Drucken Sie die Projektbeilage

Suchen Sie im 3D-Druckordner das Druckmodell "defuser-grid-final.stl" als funktionierenden Pixel-Defuser, um das Licht von jeder LED auf eine quadratische Form zu fokussieren, um die Ausgabe der Sprites auf der Uhr zu verbessern.

Schritt 6: Kleben Sie den gedruckten Pixel-Entschärfer auf die LED-Matrix, sprühen Sie mattweiße Farbe und schneiden Sie ein Stück dünnes Plexiglas, um es dann über die Oberseite des Entschärfers zu kleben

Kleben Sie den gedruckten Pixel-Entschärfer auf die LED-Matrix, sprühen Sie mattweiße Farbe und schneiden Sie ein Stück dünnes Plexiglas, um es dann über die Oberseite des Entschärfers zu kleben
Kleben Sie den gedruckten Pixel-Entschärfer auf die LED-Matrix, sprühen Sie mattweiße Farbe und schneiden Sie ein Stück dünnes Plexiglas, um es dann über die Oberseite des Entschärfers zu kleben
Kleben Sie den gedruckten Pixel-Entschärfer auf die LED-Matrix, sprühen Sie mattweiße Farbe und schneiden Sie ein Stück dünnes Plexiglas, um es dann über die Oberseite des Entschärfers zu kleben
Kleben Sie den gedruckten Pixel-Entschärfer auf die LED-Matrix, sprühen Sie mattweiße Farbe und schneiden Sie ein Stück dünnes Plexiglas, um es dann über die Oberseite des Entschärfers zu kleben

Dadurch wird das Licht weiter gestreut, um die Sprite-Klarheit zu verbessern.

Schritt 7: Beginnen Sie mit der Verkabelung der Geräte

Beginnen Sie mit der Verkabelung der Geräte
Beginnen Sie mit der Verkabelung der Geräte

HT16K33 Matrixeinheiten

GND -> GND

DATEN -> SDA

CLK -> SCL

VCC -> 5V

RGB 16x16-Einheit

GND -> GND

DATEN -> GPIO 18

VCC -> 5V

Schritt 8: Endmontage

Endmontage
Endmontage

Anstelle des normalen Bilderrahmenglases ersetzen Sie es durch den 2-Wege-Spiegel (12x12"-Blatt) und grau getöntes Kunststoffglas (12x12"-Blatt)

Dadurch werden die Komponenten innerhalb des Rahmens verdeckt, sodass Sie nur die Pixellichtausgabe sehen können.

Kleben Sie die HT16K33-Einheiten in einer festen Reihe zusammen

Stellen Sie sicher, dass jede Einheit von \0x70 bis \0x76 in einer Reihe adressiert ist, damit der Code funktioniert (Sie können den Code später anpassen, wenn sie nicht in Ordnung sind).

Platzieren Sie die Komponenten waagerecht neben dem Rahmen mit installiertem Spiegel und getöntem Glas

Jetzt können Sie die Rückseite des Rahmens aufsetzen, um die Komponenten in Position zu halten. Dies wird der schwierigste Teil sein, ich hatte das Glück, einen Rahmen mit einer ausreichend flexiblen Rückseite zu haben. Ich habe alles in Ordnung gebracht und es sah toll aus.

Schritt 9: Startskripte

Pi-Benutzer-Crontab einstellen

Geben Sie die folgende Zeile ein für eine Minute für Minute crontab

$ crontab -e

@reboot nohup python /home/pi/NESClock/MatrixClock.py > /dev/null 2>&1

Setzen Sie den Root-Benutzer crontab (die RGB-Sprite-Panel-Bibliothek erfordert Root-Zugriff) Stellen Sie "beim Neustart" ein, um das Candle-Python-Skript für immer auszuführen

$ sudo su

$ crontab -e

@reboot nohup python /home/pi/NESClock/SpritePanel.py > /dev/null 2>&1