İçindekiler:

Led Matrisli Arduino Telesketch: 6 Adım (Resimli)
Led Matrisli Arduino Telesketch: 6 Adım (Resimli)

Video: Led Matrisli Arduino Telesketch: 6 Adım (Resimli)

Video: Led Matrisli Arduino Telesketch: 6 Adım (Resimli)
Video: Diyot Matrisli Kodlayıcı (Encoder) // 6.deney 2024, Kasım
Anonim
Led Matrix ile Arduino Telesketch
Led Matrix ile Arduino Telesketch
Led Matrix ile Arduino Telesketch
Led Matrix ile Arduino Telesketch
Led Matrix ile Arduino Telesketch
Led Matrix ile Arduino Telesketch

Arduino kullanarak bir telesketch oluşturmak için basit bir kılavuz. Bu tasarım bir Arduino, iki adet 8x32 led matrisi, bir Buzzer, iki döner kodlayıcı ve bazı düğmeler kullanır. Döner kodlayıcıları ve led matrisi kullanmayı öğreneceğinizi umuyoruz. Ayrıca adımları takip ederek ve kendi retro telesketinizi oluştururken eğleneceğinizi umuyor!!

Adım 1: Bileşenleri Seçme

Bileşenleri Seçme
Bileşenleri Seçme

Gerekli malzemeler:

kutu için:

  1. DM 2 mm
  2. Akrilik cam (beyaz)
  3. Boya (istediğiniz renk)
  4. Döner kodlayıcı için 3D baskılı kapak (belge ekli)

Elektronik için:

  1. Led matrix 8x32 (2 adet)
  2. Döner kodlayıcı (2 adet)
  3. Basma düğmesi (3 adet)
  4. zil
  5. 220 ohm Dirençler (2 adet)
  6. Atlama telleri (28 adet)
  7. 9V pil

Adım 2: Kutuyu Yapmak

Kutuyu Yapmak
Kutuyu Yapmak
Kutuyu Yapmak
Kutuyu Yapmak
Kutuyu Yapmak
Kutuyu Yapmak

Kutuyu yapmak için bir lazer kesiciye erişiminiz olabilir.

Kutuyu, köşeleri olmayan, retro bir görünüme ve çekici bir şekle sahip olacak şekilde tasarladık. Kutu, lazer kesim için daha ucuz ve mükemmel bir tür ahşaptan DM'den yapılmıştır.

Kutuyu kesmek için ekli belgeyi indirmeniz gerekiyor, lazerle kesilmeye hazır tüm şekilleri içeriyor.

Parçaları birleştirmek için sıcakta eriyen yapıştırıcı kullanmanızı tavsiye ederiz, bu güçlü ve hızlıdır.

  1. İlk önce 1 tane daha güçlü yapmak için 2 kaburgayı birleştirmelisin, sonunda her biri 2 kaburgadan oluşan 2 kaburga olacak.
  2. Ardından duvarı kaburgalara birleştirin.
  3. Ön kapağı alın ve ekran çerçevesini arkadan asın.
  4. Tüm ahşap parçaları daha çok sevdiğiniz renge boyayın!! (elektrik mavisini seçtik)
  5. Akrilik cam ekranı yerleştirin.
  6. Ön kapağı ve duvarı kaburgalarla birleştirin.
  7. Elektronikler yerine oturana kadar arka kapağı birleştirmeyin.

Adım 3: Elektroniklerin Montajı

Montaj Elektroniği
Montaj Elektroniği

Yukarıdaki fotoğraf projenin kurulumunu göstermektedir. Devre aşağıdaki gibi kurulmalıdır:

  • Arduino'daki 5V pininden kırmızı bir kabloyu breadboard'un pozitif kanalına bağlayın.
  • Arduino'daki GND pininden siyah bir kabloyu breadboard'un negatif kanalına bağlayın
  • Zil = pin 8
  • Led matris

    • VCC
    • GND
    • DIN = pin 12
    • CS = pin 11
    • CLK = pin 10
  • Döner kodlayıcı (1)

    • VCC
    • GND
    • DT = pin 3
    • CLK = pin 4
  • Döner kodlayıcı (2)

    • VCC
    • GND
    • CS = pin 5
    • CLK = pin 6
  • Basma düğmesi (sıfırlama) = pin 1
  • Basma düğmesi (oynat) = pin 2

Adım 4: Kod

Kurulumu tamamladığınıza göre artık kodlama zamanı. Telesketch'i yükseltmek için aşağıdaki kodu kopyalayabilir ve değiştirebilirsiniz.

//Her zaman kütüphaneleri dahil etmeliyiz

#include "LedControl.h" #include "pitch.h" LedControl lc = LedControl(12, 11, 10, 8); int değeri; int kodlayıcı0PinA = 3; int kodlayıcı0PinB = 4; int kodlayıcı0Pos = 0; int kodlayıcı0PinALast = DÜŞÜK; int n = DÜŞÜK; int valo; int kodlayıcı1PinA = 5; int kodlayıcı1PinB = 6; int kodlayıcı1Pos = 0; int kodlayıcı1PinALast = DÜŞÜK; int o = DÜŞÜK; int adresi = 3; int cihazlar = lc.getDeviceCount(); int melodi = NOTE_D5; int melodi1 = NOT_C5; int süre = 50; boolean oyun = yanlış; boole menüsü = yanlış; imzasız uzun gecikme süresi = 500; geçersiz kurulum() { pinMode(2, INPUT); pinMode(1, GİRİŞ); pinMode(7, GİRİŞ); pinMode (encoder0PinA, INPUT); pinMode (encoder0PinB, INPUT); pinMode (enkoder1PinA, INPUT); pinMode (kodlayıcı1PinB, GİRİŞ); Serial.başlangıç (9600); int cihazlar = lc.getDeviceCount(); for (int adres = 0; adres = 0) { if (encoder1Pos 4) { if (encoder1Pos > 7) { adres--; kodlayıcı1Pos = 0; } } if (adres < 3) { if (encoder1Pos 3 && adress < 7) { if (encoder1Pos 7) { adres += 4; kodlayıcı0Pos = 0; } if (encoder0Pos < 0) { adres -= 4; kodlayıcı0Pos = 7; } } void Hareket(){ n = digitalRead(encoder0PinA); if ((encoder0PinALast == DÜŞÜK) && (n == YÜKSEK)) { if (digitalRead(encoder0PinB) == DÜŞÜK) { encoder0Pos--; ton(8, melodi1, 50); } başka { kodlayıcı0Pos++; ton(8, melodi, 50); } } kodlayıcı0PinALast = n; o = digitalRead(encoder1PinA); if ((encoder1PinALast == DÜŞÜK) && (o == YÜKSEK)) { if (digitalRead(encoder1PinB) == DÜŞÜK) { encoder1Pos--; ton(8, melodi1, 50); } başka { kodlayıcı1Pos++; ton(8, melodi, 50); } } kodlayıcı1PinALast = o; int cihazlar = lc.getDeviceCount(); } void omple() { int cihazlar = lc.getDeviceCount(); for (int satır = 0; satır < 8; satır++) { for (int adres = 0; adres < aygıtlar; adres++) { lc.setLed(adres, satır, 7, doğru); lc.setLed(adres, satır, 6, doğru); lc.setLed(adres, satır, 5, doğru); lc.setLed(adres, satır, 4, doğru); lc.setLed(adres, satır, 3, doğru); lc.setLed(adres, satır, 2, doğru); lc.setLed(adres, satır, 1, doğru); lc.setLed(adres, satır, 0, doğru); gecikme(50); } } } geçersiz neteja() { int cihazlar = lc.getDeviceCount(); for (int satır = 0; satır < 8; satır++) { for (int adres = 0; adres < aygıtlar; adres++) { lc.setLed(adres, satır, 7, yanlış); lc.setLed(adres, satır, 6, yanlış); lc.setLed(adres, satır, 5, yanlış); lc.setLed(adres, satır, 4, yanlış); lc.setLed(adres, satır, 3, yanlış); lc.setLed(adres, satır, 2, yanlış); lc.setLed(adres, satır, 1, yanlış); lc.setLed(adres, satır, 0, yanlış); } } oynat = !oynat; }

Adım 5: Son Dokunuş

Bitirici dokunuş
Bitirici dokunuş

Bu noktada, döner kodlayıcılar için bazı viniller ve 3D baskılı parçalar ekleyerek kasanın tasarımını yükseltebilirsiniz.

3D model dosyası, stil formatında belgenin sonundadır.

6. Adım: Oynayın ve Keyfini Çıkarın

Oyna ve Keyfini Çıkar
Oyna ve Keyfini Çıkar
Oyna ve Keyfini Çıkar
Oyna ve Keyfini Çıkar

Bu gerçekten eğlenceli bir proje, biz onu yaratırken çok eğlendik. Şimdi oyun oynama ve çocukluk anılarını canlandırma zamanı!!

Denemeniz için size birkaç çizim bırakıyoruz!!

Önerilen: