Съдържание:

8 битов спрайт часовник: 10 стъпки
8 битов спрайт часовник: 10 стъпки

Видео: 8 битов спрайт часовник: 10 стъпки

Видео: 8 битов спрайт часовник: 10 стъпки
Видео: CS50 2013 - Week 1, continued 2024, Юли
Anonim

От khinds10www.kevinhinds.com Следвайте още от автора:

Неразрушим детски диван!
Неразрушим детски диван!
Неразрушим детски диван!
Неразрушим детски диван!
Бързи и лесни компютри за стенен монтаж
Бързи и лесни компютри за стенен монтаж
Бързи и лесни компютри за стенен монтаж
Бързи и лесни компютри за стенен монтаж
Цифров екран за камина
Цифров екран за камина
Цифров екран за камина
Цифров екран за камина

За: 3D печат и проектиране на проекти на RaspberryPI от няколко години Повече за khinds10 »

Игрална стая Nintendo Time w/ Friendly Sprites да ви поздрави

Стъпка 1: Мигащ твърд диск RaspberriPi / Инсталирайте необходимия софтуер (Използване на Ubuntu Linux)

Създайте своя нов твърд диск за DashboardPI

Поставете microSD в компютъра си чрез USB адаптер и създайте образа на диска, като използвате командата dd

Намерете вмъкнатата си microSD карта чрез командата df -h, демонтирайте я и създайте образа на диска с командата dd copy copy

$ df -h/dev/sdb1 7.4G 32K 7.4G 1%/медия/XXX/1234-5678

$ umount /dev /sdb1

Внимание: уверете се, че командата е напълно точна, можете да повредите други дискове с тази команда

if = местоположението на файла с изображение на RASPBIAN JESSIE LITE на = местоположението на вашата microSD карта

$ sudo dd bs = 4M if =/path/to/raspbian-jessie-lite.img на =/dev/sdb (забележка: в този случай това е/dev/sdb,/dev/sdb1 е съществуващ фабричен дял на microSD)

Настройване на вашия RaspberriPi

Поставете новата си microSD карта в raspberrypi и я включете с монитор, свързан към HDMI порта

Влизам

потребител: pi pass: малина

Променете паролата на акаунта си за сигурност

sudo passwd pi

Активирайте разширените опции на RaspberriPi

sudo raspi-config

Изберете: 1 Разгънете файлова система

9 Разширени опции

A2 Hostname го променете на "SpriteClock"

A4 SSH Активиране на SSH сървър

A7 I2C Активиране на i2c интерфейс

Активирайте английската/американската клавиатура

sudo nano/etc/default/keyboard

Променете следния ред: XKBLAYOUT = "нас"

Рестартирайте PI за промени в оформлението на клавиатурата / преоразмеряване на файловата система, за да влезе в сила

$ sudo shutdown -r сега

Автоматично свързване към вашата WiFi

sudo nano /etc/wpa_supplicant/wpa_supplicant.conf

Добавете следните редове, за да може вашият raspberrypi автоматично да се свърже с домашния ви WiFi (ако вашата безжична мрежа е наречена "linksys" например, в следния пример)

network = {ssid = "linksys" psk = "WIRELESS PASSWORD HERE"} Рестартирайте PI, за да се свържете с WiFi мрежа

$ sudo shutdown -r сега

Сега, когато вашият PI най -накрая е в локалната мрежа, можете да влезете дистанционно в него чрез SSH. Но първо трябва да получите IP адреса, който има в момента.

$ ifconfig Потърсете „inet addr: 192.168. XXX. XXX“в изхода на следната команда за IP адреса на вашия PI

Отидете на друга машина и влезте във вашия raspberrypi чрез ssh

$ ssh [email protected]. XXX. XXX

Стъпка 2: Започнете да инсталирате необходимите пакети

Започнете да инсталирате необходимите пакети

$ sudo apt-get update

$ sudo apt-get надстройка

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

Актуализирайте локалните настройки на часовата зона

$ sudo dpkg-преконфигурирайте tzdata

изберете вашата часова зона с помощта на интерфейса

Настройка на простата команда l от директорията [по избор]

vi ~/.bashrc

добавете следния ред:

псевдоним l = 'ls -lh'

източник ~/.bashrc

Поправете подчертаването на синтаксиса по подразбиране на VIM [по избор]

sudo vi/etc/vim/vimrc

разкомментирайте следния ред:

синтаксисът е включен

Инсталирайте i2c Backpack Python драйвери

$ cd ~

$ git клонинг

$ cd Adafruit_Python_LED_Backpack/

$ sudo python setup.py install

Инсталирайте i2c Python драйвери

Инсталирайте драйвера NeoPixel, както следва

sudo apt-get install build-съществен python-dev git scons swig

sudo pip3 install -надстройка инструменти за настройка

sudo pip3 инсталирайте rpi_ws281x

cd rpi_ws281x

scons

cd питон

sudo python setup.py install

cd примери/

sudo python strandtest.py

Клонирайте хранилището във вашата домашна директория, за да работи часовникът

cd ~

git clone

Стъпка 3: Необходими консумативи

Необходими консумативи
Необходими консумативи
Необходими консумативи
Необходими консумативи
Необходими консумативи
Необходими консумативи

Pi Zero W/1.3/1.2Wifi USB (ако Pi Zero 1.3/1.2) Keyestudio I2C 8x8 LED матрица HT16K33 (x7) 16x16 RGB LED гъвкав WS2812B MatrixFrosted Paint12x12 рамка за картина Изрязващ се тънък лист от плекси-стъкло12x12 "двупосочно огледало плекси-стъкло лист 12x12" тонирано плекси-стъклен лист

Стъпка 4: Изграждане на часовника Sprite

Изграждане на часовника за спрайт
Изграждане на часовника за спрайт

Подгответе матричните единици HT16K33

Запоявайте щифтовете на гърба, за да им присвоите уникален i2c адрес. Има 3 джъмпера за запояване или не запояване в 8 комбинации. Запоял съм всички комбинации, за да присвоя на всяка единица различен адрес, до който да има достъп чрез кода на python, за да покаже часовника.

Стъпка 5: Отпечатайте корпуса на проекта

Отпечатайте корпуса на проекта
Отпечатайте корпуса на проекта

В папката за 3D печат намерете модела за отпечатване „defuser-grid-final.stl“, който да бъде работещ пикселен разсейвател, който да фокусира светлината от всеки светодиод в квадратна форма, за да подобри изхода на спрайтовете на часовника.

Стъпка 6: Залепете разпечатващия обект на разпечатан пиксел към LED матрицата, напръскайте бяла боя с матово покритие и изрежете парче тънко плекси-стъкло, за да го залепите върху горната част на обезмаслителя

Залепете разпечатващия обект на разпечатан пиксел към светодиодната матрица, напръскайте бяла боя с матово покритие и изрежете парче тънко плекси-стъкло, след което залепете отгоре на обезвредителя
Залепете разпечатващия обект на разпечатан пиксел към светодиодната матрица, напръскайте бяла боя с матово покритие и изрежете парче тънко плекси-стъкло, след което залепете отгоре на обезвредителя
Залепете разпечатващия обект на разпечатан пиксел към светодиодната матрица, напръскайте бяла боя с матово покритие и изрежете парче тънко плекси-стъкло, след което залепете отгоре на обезвредителя
Залепете разпечатващия обект на разпечатан пиксел към светодиодната матрица, напръскайте бяла боя с матово покритие и изрежете парче тънко плекси-стъкло, след което залепете отгоре на обезвредителя

Това ще продължи да разсейва светлината още повече, за да подобри яснотата на спрайта.

Стъпка 7: Започнете окабеляването на устройствата

Започнете окабеляването на устройствата
Започнете окабеляването на устройствата

Матрични единици HT16K33

GND -> GND

ДАННИ -> SDA

CLK -> SCL

VCC -> 5V

RGB 16x16 единица

GND -> GND

ДАННИ -> GPIO 18

VCC -> 5V

Стъпка 8: Окончателно сглобяване

Окончателно сглобяване
Окончателно сглобяване

На мястото на нормалното стъкло на рамката за картини го сменете с двупосочното огледало (лист 12x12 ") и сивото оцветено пластмасово стъкло (лист 12x12")

Това ще скрие компонентите в рамката, така че можете да видите само излъчването на пикселна светлина.

Залепете заедно модулите HT16K33 в плътен ред

Уверете се, че всяко устройство е адресирано от / 0x70 до / 0x76 подред, за да работи кодът (можете да регулирате кода, ако по -късно не са в ред)

Поставете компонентите на равна страна на рамката с монтирано огледало и затъмнено стъкло

Сега можете да поставите задната част на рамката, за да държите компонентите на място. Това ще бъде най -трудната част, имах късмета да имам рамка с достатъчно гъвкав гръб. Направих всичко на ниво и изглеждаше страхотно.

Стъпка 9: Скриптове за стартиране

Задайте на потребителя pi crontab

Въведете следния ред за минута по минута crontab

$ crontab -e

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

Задайте root потребител на root (библиотеката на RGB Sprite Panel изисква root достъп) Задайте „при рестартиране“, за да стартирате скрипта на свещта python завинаги

$ sudo su

$ crontab -e

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

Препоръчано: