İçindekiler:

8 Bit Sprite Clock: 10 Adım
8 Bit Sprite Clock: 10 Adım

Video: 8 Bit Sprite Clock: 10 Adım

Video: 8 Bit Sprite Clock: 10 Adım
Video: 35 lik viski tek dikiş 2024, Temmuz
Anonim

Yazan khinds10www.kevinhinds.comYazarın daha fazlasını izleyin:

Yıkılmaz Çocuk Kanepesi!
Yıkılmaz Çocuk Kanepesi!
Yıkılmaz Çocuk Kanepesi!
Yıkılmaz Çocuk Kanepesi!
Hızlı ve Kolay Duvar Tipi Bilgisayarlar
Hızlı ve Kolay Duvar Tipi Bilgisayarlar
Hızlı ve Kolay Duvar Tipi Bilgisayarlar
Hızlı ve Kolay Duvar Tipi Bilgisayarlar
Dijital Şömine Ekranı
Dijital Şömine Ekranı
Dijital Şömine Ekranı
Dijital Şömine Ekranı

Hakkında: Birkaç yıldır 3D baskı ve RaspberryPI projeleri tasarlama Daha fazla khinds10 hakkında »

Oyun Odası Nintendo Time w / Dostu Sprites sizi selamlamak için

Adım 1: RaspberriPi Sabit Diskin Yanıp Sönmesi / Gerekli Yazılımın Yüklenmesi (Ubuntu Linux Kullanılarak)

DashboardPI için yeni sabit diskinizi oluşturun

MicroSD'yi USB adaptörü aracılığıyla bilgisayarınıza takın ve dd komutunu kullanarak disk görüntüsünü oluşturun

Takılı microSD kartınızı df -h komutuyla bulun, bağlantısını kesin ve disk copy dd komutuyla disk görüntüsünü oluşturun

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

$ umount /dev/sdb1

Dikkat: komutun tamamen doğru olduğundan emin olun, bu komutla diğer disklere zarar verebilirsiniz.

if=RASPBIAN JESSIE LITE görüntü dosyasının konumu=microSD kartınızın konumu

$ sudo dd bs=4M if=/path/to/raspbian-jessie-lite.img of=/dev/sdb (not: bu durumda /dev/sdb'dir, /dev/sdb1, mikroSD)

RaspberriPi'nizi kurma

Yeni microSD kartınızı raspberrypi'ye takın ve HDMI bağlantı noktasına bağlı bir monitörle açın

Giriş yapmak

kullanıcı: pi pass: ahududu

Güvenlik için hesap şifrenizi değiştirin

sudo şifresi

RaspberriPi Gelişmiş Seçeneklerini Etkinleştir

sudo raspi yapılandırması

Seçin: 1 Dosya Sistemini Genişlet

9 Gelişmiş Seçenek

A2 Ana Bilgisayar Adı, "SpriteClock" olarak değiştirin

A4 SSH SSH Sunucusunu Etkinleştir

A7 I2C i2c arayüzünü etkinleştir

İngilizce/ABD Klavyesini Etkinleştir

sudo nano /etc/varsayılan/klavye

Aşağıdaki satırı değiştirin: XKBLAYOUT="us"

Klavye düzeni değişiklikleri / dosya sisteminin etkili olması için yeniden boyutlandırılması için PI'yi yeniden başlatın

$ sudo kapatma -r şimdi

WiFi'nize Otomatik Bağlanın

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Raspberrypi'nizin otomatik olarak ev WiFi'nize bağlanması için aşağıdaki satırları ekleyin (örneğin aşağıdaki örnekte kablosuz ağınız "linksys" olarak adlandırılmışsa)

network={ ssid="linksys" psk="KABLOSUZ ŞİFRE BURADA" } WiFi ağına bağlanmak için PI'yi yeniden başlatın

$ sudo kapatma -r şimdi

Artık PI'niz nihayet yerel ağda olduğuna göre, SSH aracılığıyla uzaktan oturum açabilirsiniz. Ancak önce şu anda sahip olduğu IP adresini almanız gerekir.

$ ifconfig PI'nizin IP Adresi için aşağıdaki komutun çıktısında "inet addr: 192.168. XXX. XXX" ifadesini arayın

Başka bir makineye gidin ve raspberrypi'nize ssh ile giriş yapın

$ ssh [email protected]. XXX. XXX

Adım 2: Gerekli Paketleri Kurmaya Başlayın

Gerekli paketleri yüklemeye başlayın

$ sudo apt-get güncellemesi

$ sudo apt-get yükseltme

$ sudo apt-get install vim git python-smbus i2c-tools python-görüntüleme python-smbus inşa-temel python-dev rpi.gpio python3 python3-pip python-numpy

Yerel saat dilimi ayarlarını güncelleyin

$ sudo dpkg-tzdata'yı yeniden yapılandır

arayüzü kullanarak saat diliminizi seçin

Basit dizin l komutunu kurun [isteğe bağlı]

vi ~/.bashrc

aşağıdaki satırı ekleyin:

takma ad l='ls -lh'

kaynak ~/.bashrc

VIM varsayılan sözdizimi vurgulamasını düzeltin [isteğe bağlı]

sudo vi /etc/vim/vimrc

aşağıdaki satırın yorumunu kaldırın:

sözdizimi açık

i2c Sırt Çantası Python Sürücülerini Kurun

$ cd ~

$ git klonu

$ cd Adafruit_Python_LED_Backpack/

$ sudo python setup.py kurulumu

i2c Python Sürücülerini yükleyin

NeoPixel Sürücüsünü aşağıdaki gibi kurun

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

sudo pip3 install --upgrade kurulum araçları

sudo pip3 kurulumu rpi_ws281x

cd rpi_ws281x

çömlekler

cd pitonu

sudo python setup.py kurulumu

cd örnekleri/

sudo python strandtest.py

Saatin çalışması için depoyu ana dizininizde klonlayın

cd ~

git klonu

3. Adım: Gerekli Malzemeler

Ihtiyaç duyulan malzemeler
Ihtiyaç duyulan malzemeler
Ihtiyaç duyulan malzemeler
Ihtiyaç duyulan malzemeler
Ihtiyaç duyulan malzemeler
Ihtiyaç duyulan malzemeler

Pi Zero W/1.3/1.2Wifi USB (Pi Zero 1.3/1.2 ise)Keyestudio I2C 8x8 LED Matrix HT16K33 (x7)16x16 RGB LED Esnek WS2812B MatrixFrosted Paint12x12 Resim Çerçevesi Kesilebilir ince pleksiglas levha12x12" 2 yönlü ayna pleksi cam levha12x12" renkli pleksi cam levha

Adım 4: Sprite Saatini Oluşturma

Sprite Saatini Oluşturma
Sprite Saatini Oluşturma

HT16K33 matris birimlerini hazırlayın

Her birine benzersiz bir i2c adresi atamak için arkadaki pimleri lehimleyin. 8 kombinasyonda lehimlemek veya lehimlememek için 3 jumper vardır. Her birime, saat zamanını göstermek için python koduyla erişilecek farklı bir adres atamak için tüm kombinasyonları lehimledim.

Adım 5: Proje Ekini yazdırın

Proje Ekini Yazdır
Proje Ekini Yazdır

3D baskı klasöründe, "defuser-grid-final.stl" baskı modelini, her bir LED'den gelen ışığı kare bir şekle odaklamak için çalışan bir piksel defuser olarak bulun ve saat üzerindeki sprite çıkışını iyileştirin.

Adım 6: Basılı Piksel Durdurucuyu LED Matrise Bantlayın, Buzlu Beyaz Boya Püskürtün ve Bir Parça İnce Plexi-glass Kesip Daha Sonra Defer'ın Üstüne Bantlayın

Basılı Piksel Durdurucuyu LED Matrisine Bantlayın, Buzlu Beyaz Boya Püskürtün ve Bir Parça İnce Plexi-glass Kesip Sonra Defer'ın Üstüne Bantlayın
Basılı Piksel Durdurucuyu LED Matrisine Bantlayın, Buzlu Beyaz Boya Püskürtün ve Bir Parça İnce Plexi-glass Kesip Sonra Defer'ın Üstüne Bantlayın
Basılı Piksel Durdurucuyu LED Matrise Bantlayın, Buzlu Beyaz Boya Püskürtün ve Bir Parça İnce Plexi-glass Kesip Sonra Defer'ın Üstüne Bantlayın
Basılı Piksel Durdurucuyu LED Matrise Bantlayın, Buzlu Beyaz Boya Püskürtün ve Bir Parça İnce Plexi-glass Kesip Sonra Defer'ın Üstüne Bantlayın

Bu, hareketli grafiğin netliğini artırmak için ışığı daha da fazla dağıtmaya devam edecektir.

7. Adım: Cihazları Kablolamaya Başlayın

Cihazları Kablolamaya Başlayın
Cihazları Kablolamaya Başlayın

HT16K33 Matris Birimleri

GND -> GND

VERİ -> SDA

CLK -> SCL

VCC -> 5V

RGB 16x16 Birimi

GND -> GND

VERİ -> GPIO 18

VCC -> 5V

Adım 8: Son Montaj

Son montaj
Son montaj

Normal resim çerçevesi camının yerine 2 yönlü ayna (12x12" sac) ve gri renkli plastik cam (12x12" sac) ile değiştirin

Bu, çerçevenin içindeki bileşenleri gizler, böylece yalnızca piksel ışık çıkışını görebilirsiniz.

HT16K33 birimlerini düz bir sıra halinde bantlayın

Kodun çalışması için her birimin art arda \0x70 ile \0x76 arasında adreslendiğinden emin olun (daha sonra bozulurlarsa kodu ayarlayabilirsiniz)

Bileşenleri, ayna ve renkli cam takılıyken çerçevenin düz tarafına yerleştirin

Artık bileşenleri yerinde tutmak için çerçevenin arkasını yerleştirebilirsiniz. Bu en zor kısım olacak, yeterince esnek bir çerçeveye sahip olduğum için şanslıydım. Her şeyi düz aldım ve harika görünüyordu.

9. Adım: Başlangıç Komut Dosyaları

pi kullanıcı crontab'ı ayarla

Dakika dakika crontab için aşağıdaki satırı girin

$ crontab -e

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

Kök kullanıcı crontab'ı ayarla (RGB Sprite Panel kitaplığı kök erişimi gerektirir) Mum python betiğini sonsuza kadar çalıştırmak için "yeniden başlatmada" ayarla

$ sudo su

$ crontab -e

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

Önerilen: