Innehållsförteckning:
2025 Författare: John Day | [email protected]. Senast ändrad: 2025-01-13 06:58
Här är bara en enkel guide för att skapa en telesketch med en Arduino. Denna design använder en Arduino, två ledmatris på 8x32, en summer, två roterande kodare och några knappar. Vi hoppas att du kommer att lära dig hur du använder roterande kodare och ledmatris. Han hoppas också att du kommer att ha roligt att följa stegen och bygga din egen retro telesketch !!
Steg 1: Välja komponenter
Material som krävs:
För lådan:
- DM 2 mm
- Akrylglas (vitt)
- Måla (den färg du vill ha)
- 3D -tryckt omslag för roterande kodare (dokument bifogas)
För elektroniken:
- LED -matris 8 x 32 (2 enheter)
- Roterande pulsgivare (2 enheter)
- Tryckknapp (3 enheter)
- Summer
- 220 ohm motstånd (2 enheter)
- Hopptrådar (28 enheter)
- 9V batteri
Steg 2: Gör lådan
För att göra lådan kan du ha tillgång till en lasersötare.
Vi konstruerade lådan för att ha ett retro -utseende och en attraktiv form utan hörn. Lådan är gjord av DM, ett slags trä som är billigare och perfekt för laserskärning.
För att klippa rutan måste du ladda ner det bifogade dokumentet, det innehåller alla former som är redo att klippas på laser.
För att montera delarna rekommenderar vi att du använder smältlim, det är starkt och snabbt.
- Firar du måste foga 2 revben för att göra 1 mer stark, i slutet kommer du att ha 2 revben vardera gjorda av 2 revben.
- Montera sedan väggen mot revbenen.
- Ta det främre locket och haka fast skärmramen bakifrån.
- Måla alla trädelar med den färg du gillar mer !! (vi valde elektrisk blå)
- Placera akrylglasskärmen.
- Anslut det främre locket och väggen med revbenen.
- Anslut inte den bakre luckan förrän elektroniken är på plats.
Steg 3: Montering av elektronik
Bilden ovan visar upplägget av projektet. Kretsen bör konfigureras enligt följande:
- Anslut en röd tråd från 5V -stiftet på Arduino till den positiva kanalen på brödbrädet.
- Anslut en svart kabel från GND -stiftet på arduino till den negativa kanalen på brödbrädan
- Summer = stift 8
-
Led matris
- VCC
- GND
- DIn = stift 12
- CS = stift 11
- CLK = stift 10
-
Roterande pulsgivare (1)
- VCC
- GND
- DT = stift 3
- CLK = stift 4
-
Roterande pulsgivare (2)
- VCC
- GND
- CS = stift 5
- CLK = stift 6
- Tryckknapp (återställning) = stift 1
- Tryckknapp (play) = stift 2
Steg 4: Koden
Nu när du är klar med installationen är det dags att koda. Du kan kopiera följande kod och ändra den för att uppgradera teleskivan.
// Vi måste alltid inkludera biblioteken
#include "LedControl.h" #include "pitches.h" LedControl lc = LedControl (12, 11, 10, 8); int val; int encoder0PinA = 3; int encoder0PinB = 4; int encoder0Pos = 0; int encoder0PinALast = LÅG; int n = LÅG; int valo; int encoder1PinA = 5; int encoder1PinB = 6; int encoder1Pos = 0; int encoder1PinALast = LÅG; int o = LÅG; int adress = 3; int -enheter = lc.getDeviceCount (); int melodi = NOTE_D5; int melodi1 = NOTE_C5; int varaktighet = 50; booleskt spel = falskt; booleskt meny = falskt; osignerad lång fördröjning = 500; void setup () {pinMode (2, INPUT); pinMode (1, INPUT); pinMode (7, INPUT); pinMode (encoder0PinA, INPUT); pinMode (encoder0PinB, INPUT); pinMode (encoder1PinA, INPUT); pinMode (encoder1PinB, INPUT); Serial.begin (9600); int -enheter = lc.getDeviceCount (); för (int adress = 0; adress = 0) {if (encoder1Pos 4) {if (encoder1Pos> 7) {adress--; encoder1Pos = 0; }} if (adress <3) {if (encoder1Pos 3 && adress <7) {if (encoder1Pos 7) {adress += 4; encoder0Pos = 0; } if (encoder0Pos <0) {adress -= 4; encoder0Pos = 7; }} void Movement () {n = digitalRead (encoder0PinA); if ((encoder0PinALast == LOW) && (n == HIGH)) {if (digitalRead (encoder0PinB) == LOW) {encoder0Pos--; ton (8, melodi1, 50); } annat {encoder0Pos ++; ton (8, melodi, 50); }} encoder0PinALast = n; o = digitalRead (encoder1PinA); if ((encoder1PinALast == LOW) && (o == HIGH)) {if (digitalRead (encoder1PinB) == LOW) {encoder1Pos--; ton (8, melodi1, 50); } annat {encoder1Pos ++; ton (8, melodi, 50); }} encoder1PinALast = o; int -enheter = lc.getDeviceCount (); } void omple () {int devices = lc.getDeviceCount (); för (int rad = 0; rad <8; rad ++) {för (int adress = 0; adress <enheter; adress ++) {lc.setLed (adress, rad, 7, true); lc.setLed (adress, rad, 6, true); lc.setLed (adress, rad, 5, true); lc.setLed (adress, rad, 4, true); lc.setLed (adress, rad, 3, true); lc.setLed (adress, rad, 2, true); lc.setLed (adress, rad, 1, true); lc.setLed (adress, rad, 0, true); fördröjning (50); }}} void neteja () {int devices = lc.getDeviceCount (); för (int rad = 0; rad <8; rad ++) {för (int adress = 0; adress <enheter; adress ++) {lc.setLed (adress, rad, 7, falsk); lc.setLed (adress, rad, 6, falskt); lc.setLed (adress, rad, 5, falsk); lc.setLed (adress, rad, 4, falskt); lc.setLed (adress, rad, 3, falskt); lc.setLed (adress, rad, 2, falskt); lc.setLed (adress, rad, 1, falsk); lc.setLed (adress, rad, 0, falskt); }} spela =! spela; }
Steg 5: Finish Touch
Vid denna tidpunkt kan du uppgradera fodralets design genom att lägga till några vinyler och 3D -tryckta delar för de roterande kodarna.
Filen för 3D -modellen finns i slutet av dokumentet i stilformat.
Steg 6: Spela och njut
Det här är ett riktigt roligt projekt, vi hade väldigt roligt att skapa det. Nu är det dags att leka och återuppliva barndomsminnen !!
Vi lämnar ett par teckningar för dig att prova!