Tabla de contenido:

Reloj Sprite de 8 bits: 10 pasos
Reloj Sprite de 8 bits: 10 pasos

Video: Reloj Sprite de 8 bits: 10 pasos

Video: Reloj Sprite de 8 bits: 10 pasos
Video: Que curiosa es la mente 2024, Noviembre
Anonim

Por khinds10www.kevinhinds.com Siga más por el autor:

¡Sofá indestructible para niños!
¡Sofá indestructible para niños!
¡Sofá indestructible para niños!
¡Sofá indestructible para niños!
PC de montaje en pared rápido y sencillo
PC de montaje en pared rápido y sencillo
PC de montaje en pared rápido y sencillo
PC de montaje en pared rápido y sencillo
Pantalla de chimenea digital
Pantalla de chimenea digital
Pantalla de chimenea digital
Pantalla de chimenea digital

Acerca de: Impresión 3D y diseño de proyectos RaspberryPI desde hace algunos años Más acerca de khinds10 »

Game Room Nintendo Time con Sprites amistosos para saludarte

Paso 1: flashear el disco duro RaspberriPi / instalar el software requerido (usando Ubuntu Linux)

Cree su nuevo disco duro para DashboardPI

Inserte la microSD en su computadora a través del adaptador USB y cree la imagen del disco usando el comando dd

Localice su tarjeta microSD insertada a través del comando df -h, desmóntela y cree la imagen del disco con el comando disk copy dd

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

$ umount / dev / sdb1

Precaución: asegúrese de que el comando sea completamente preciso, puede dañar otros discos con este comando

if = ubicación del archivo de imagen RASPBIAN JESSIE LITE de = ubicación de su tarjeta microSD

$ sudo dd bs = 4M if = / path / to / raspbian-jessie-lite.img of = / dev / sdb (nota: en este caso, es / dev / sdb, / dev / sdb1 era una partición de fábrica existente en el microSD)

Configuración de su RaspberriPi

Inserte su nueva tarjeta microSD en el raspberrypi y enciéndalo con un monitor conectado al puerto HDMI

Acceso

usuario: pi pass: frambuesa

Cambie la contraseña de su cuenta por seguridad

sudo passwd pi

Habilitar las opciones avanzadas de RaspberriPi

sudo raspi-config

Elija: 1 Expandir sistema de archivos

9 Opciones avanzadas

A2 Nombre de host cámbielo a "SpriteClock"

A4 SSH Habilitar servidor SSH

A7 I2C Habilitar interfaz i2c

Habilitar el teclado inglés / estadounidense

sudo nano / etc / default / keyboard

Cambie la siguiente línea: XKBLAYOUT = "us"

Reinicie PI para que los cambios en la distribución del teclado o el cambio de tamaño del sistema de archivos surtan efecto

$ sudo shutdown -r ahora

Conéctese automáticamente a su WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Agregue las siguientes líneas para que su raspberrypi se conecte automáticamente al WiFi de su hogar (si su red inalámbrica se llama "linksys", por ejemplo, en el siguiente ejemplo)

network = {ssid = "linksys" psk = "CONTRASEÑA INALÁMBRICA AQUÍ"} Reinicie PI para conectarse a la red WiFi

$ sudo shutdown -r ahora

Ahora que su PI finalmente está en la red local, puede iniciar sesión de forma remota a través de SSH. Pero primero debe obtener la dirección IP que tiene actualmente.

$ ifconfig Busque "inet addr: 192.168. XXX. XXX" en la siguiente salida del comando para la dirección IP de su PI

Vaya a otra máquina e inicie sesión en su raspberrypi a través de ssh

$ ssh [email protected]. XXX. XXX

Paso 2: Comience a instalar los paquetes necesarios

Comience a instalar los paquetes requeridos

$ sudo apt-get update

$ sudo apt-get upgrade

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

Actualizar la configuración de la zona horaria local

$ sudo dpkg-reconfigure tzdata

seleccione su zona horaria usando la interfaz

Configure el comando l del directorio simple [opcional]

vi ~ /.bashrc

agregue la siguiente línea:

alias l = 'ls -lh'

fuente ~ /.bashrc

Corregir el resaltado de sintaxis predeterminado de VIM [opcional]

sudo vi / etc / vim / vimrc

descomente la siguiente línea:

sintaxis activada

Instalar los controladores Python de i2c Backpack

$ cd ~

$ git clon

$ cd Adafruit_Python_LED_Backpack /

$ sudo python setup.py instalar

Instale los controladores i2c Python

Instale el controlador NeoPixel de la siguiente manera

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

sudo pip3 install --upgrade setuptools

sudo pip3 instalar rpi_ws281x

cd rpi_ws281x

scons

cd python

sudo python setup.py instalar

ejemplos de cd /

sudo python strandtest.py

Clona el repositorio en tu directorio de inicio para que funcione el reloj

cd ~

clon de git

Paso 3: Suministros necesarios

Suministros necesarios
Suministros necesarios
Suministros necesarios
Suministros necesarios
Suministros necesarios
Suministros necesarios

Pi Zero W / 1.3 / 1.2Wifi USB (si Pi Zero 1.3 / 1.2) Keyestudio I2C 8x8 LED Matrix HT16K33 (x7) 16x16 RGB LED Flexible WS2812B MatrixFrosted Paint12x12 Picture Frame Lámina fina de plexiglás cortable Lámina de plexiglás de espejo bidireccional de 12x12 teñida hoja de plexiglás

Paso 4: construcción del reloj Sprite

Construyendo el Reloj Sprite
Construyendo el Reloj Sprite

Prepare las unidades de matriz HT16K33

Suelde los pines en la parte posterior para asignarles a cada uno una dirección i2c única. Hay 3 puentes para soldar o no soldar en 8 combinaciones. He soldado todas las combinaciones para asignar a cada unidad una dirección diferente a la que se accede mediante el código Python para mostrar la hora del reloj.

Paso 5: Imprima el anexo del proyecto

Imprima el anexo del proyecto
Imprima el anexo del proyecto

En la carpeta de impresión 3D, busque el modelo de impresión "defuser-grid-final.stl" como un defusor de píxeles de trabajo para enfocar la luz de cada LED a una forma cuadrada para mejorar la salida de los sprites en el reloj.

Paso 6: pegue con cinta adhesiva el defusor de píxeles impresos a la matriz de LED, rocíe pintura blanca esmerilada y corte un trozo de plexiglás fino para luego colocar cinta adhesiva sobre la parte superior del defusor

Pegue con cinta adhesiva el Defusor de píxeles impresos a la matriz de LED, rocíe pintura blanca esmerilada y corte un trozo de plexiglás fino para luego colocar cinta adhesiva sobre la parte superior del defusor
Pegue con cinta adhesiva el Defusor de píxeles impresos a la matriz de LED, rocíe pintura blanca esmerilada y corte un trozo de plexiglás fino para luego colocar cinta adhesiva sobre la parte superior del defusor
Pegue con cinta adhesiva el Defusor de píxeles impresos a la matriz de LED, rocíe pintura blanca esmerilada y corte un trozo de plexiglás fino para luego colocar cinta adhesiva sobre la parte superior del defusor
Pegue con cinta adhesiva el Defusor de píxeles impresos a la matriz de LED, rocíe pintura blanca esmerilada y corte un trozo de plexiglás fino para luego colocar cinta adhesiva sobre la parte superior del defusor

Esto continuará dispersando la luz aún más para mejorar la claridad del sprite.

Paso 7: comience a cablear los dispositivos

Comience a cablear los dispositivos
Comience a cablear los dispositivos

Unidades de matriz HT16K33

GND -> GND

DATOS -> SDA

CLK -> SCL

VCC -> 5 V

Unidad RGB 16x16

GND -> GND

DATOS -> GPIO 18

VCC -> 5 V

Paso 8: Montaje final

Montaje final
Montaje final

En lugar del vidrio normal para marcos de fotos, reemplácelo con el espejo de 2 vías (hoja de 12x12 ") y vidrio de plástico tintado gris (hoja de 12x12")

Esto ocultará los componentes dentro del marco, por lo que solo podrá ver la salida de luz de píxeles.

Pegue las unidades HT16K33 en una fila sólida

Asegúrese de que cada unidad esté direccionada de / 0x70 a / 0x76 en una fila para que el código funcione (puede ajustar el código si están fuera de servicio más adelante)

Coloque los componentes en el lado nivelado del marco con el espejo y el vidrio tintado instalados

Ahora puede colocar la parte posterior del marco para mantener los componentes en su lugar. Esta será la parte más difícil, tuve la suerte de tener un marco con un respaldo lo suficientemente flexible. Conseguí todo nivelado y se veía genial.

Paso 9: Scripts de inicio

Establecer crontab del usuario pi

Ingrese la siguiente línea para crontab minuto a minuto

$ crontab -e

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

Establecer crontab de usuario raíz (la biblioteca RGB Sprite Panel requiere acceso de raíz) Establecer "al reiniciar" para ejecutar el script de python de vela para siempre

$ sudo su

$ crontab -e

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

Recomendado: