Innholdsfortegnelse:
2025 Forfatter: John Day | [email protected]. Sist endret: 2025-01-13 06:58
Mål
Jeg lagde denne klokken fordi jeg har en adresserbar LED -stripe som ligger rundt og jeg vil bruke den. Da så jeg at rommet mitt ikke har en god klokke som matcher veggene. Så jeg bestemte meg for å lage en klokke som kan endre fargene i henhold til brukernes humør eller veggfarge.
Trinn 1: YouTube -video
Se denne YouTube -videoen for fullstendige instruksjoner
Trinn 2: Fremgangsmåte
Jeg tok for det første et 24 x 15 tommers kryssfinerbrett.
Skjær LED -stripen i biter og lim dem på brettet. Etter at jeg har loddet dekker jeg hele med et svart kartongpapir. Lim deretter et termokullark på toppen av det og skjær termokolen med en skarp kutter i form av 4 syv segmentdisplayer sammen med to hull i midten. Deretter gjorde jeg kretsen min klar ved hjelp av kretsdiagrammet gitt nedenfor
og limte dette inn bak tavlen. Jeg bestilte også en egendefinert PCB for det samme fra https://jlcpcb.com de gir de beste PCB -prototypene til laveste pris fra Kina og sender over hele verden raskt og sikkert. etter lodding av alle komponentene mine på brettet, fjernet jeg brødbrettet og fikset alt bak brettet og dekket forpartiet med et tynt, gjennomsiktig sporpapir. Klokken ser fantastisk ut og øker veggenes skjønnhet. tilpasningsfarger gjør den perfekt for enhver vegg.
Hvis du liker dette prosjektet vennligst Abonner på youtube eller besøk nettstedet vårt https://robocircuits.com Takk for at du leser!
Trinn 3: Kode
/* Koden er designet av RoboCircuits
* Besøk vårt nettsted https://robocircuits.com for å få hjelp med denne koden * Denne koden bruker DS3231.h -biblioteket, last den ned fra https://robocircuits.com * For full opplæring Se video på vår YouTube -kanal https:// youtube. com/robocircuits */
#include #include
int i = 0, j = 0, k = 150;
// Start DS3231 ved å bruke maskinvaregrensesnittet DS3231 rtc (SDA, SCL);
#ifdef _AVR_ #inkludere #endif
// Hvilken pin på Arduino er koblet til NeoPixels? // På en trinket eller Gemma foreslår vi at du endrer dette til 1 #define PIN 6
// Hvor mange NeoPixels er festet til Arduino? #define NUMPIXELS 45
// Når vi konfigurerer NeoPixel -biblioteket, forteller vi det hvor mange piksler, og hvilken pin som skal brukes for å sende signaler. // Vær oppmerksom på at for eldre NeoPixel-strimler kan det hende du må endre den tredje parameteren-se eksempel på strengtest // for mer informasjon om mulige verdier. Adafruit_NeoPixel piksler = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
int delayval = 500; // forsinkelse i et halvt sekund
void -oppsett () {// Dette er for Trinket 5V 16MHz, du kan fjerne disse tre linjene hvis du ikke bruker et Trinket #if definert (_AVR_ATtiny85_) if (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // Slutt på spesialpyntkode
pixels.begin (); // Dette initialiserer NeoPixel -biblioteket. // Oppsett Seriell tilkobling Serial.begin (115200); // Initialiser rtc -objektet rtc.begin (); // Følgende linjer kan ikke kommenteres for å angi dato og klokkeslett //rtc.setDOW(WEDNESDAY); // Sett ukedag til SØNDAG //rtc.setTime(12, 0, 0); // Still tiden til 12:00:00 (24 -timers format) //rtc.setDate(1, 1, 2014); // Angi datoen til 1. januar 2014}
void loop () {if (digitalRead (2) == HIGH) {int a = analogRead (A0); int b = analogRead (A1); int c = analogRead (A2); i = kart (a, 0, 1025, 0, 150); // Grønn farge j = kart (b, 0, 1025, 0, 150); // Blå farge k = kart (c, 0, 1025, 0, 150); // Rød farge} annet {i = 0; j = 0; k = 150; }
// Kode for bakgrunnsbelysning for (int x = 29; x <= 45; x ++) {pixels.setPixelColor (x, pixels. Color (i, j, k)); piksler.vis (); }
// Henter sanntid fra rtc String x = rtc.getTimeStr (); // Send tid Serial.println (rtc.getTimeStr ()); int time1 = x.charAt (0); int time2 = x.charAt (1); int min1 = x.charAt (3); int min2 = x.charAt (4); time1 = time1-48; time2 = time2-48; min1 = min1-48; min2 = min2-48;
// Viser tid på klokkebryteren (time1) {// case 0: zero (0); //gå i stykker; sak 1: en (0); gå i stykker; sak 2: to (0); gå i stykker; standard: nulll (0); gå i stykker; } bytte (time2) {case 0: null (7); gå i stykker; sak 1: en (7); gå i stykker; sak 2: to (7); gå i stykker; sak 3: tre (7); gå i stykker; sak 4: fire (7); gå i stykker; sak 5: fem (7); gå i stykker; sak 6: seks (7); gå i stykker; sak 7: syv (7); gå i stykker; sak 8: åtte (7); gå i stykker; sak 9: ni (7); gå i stykker; standard: nulll (7); gå i stykker; } bryter (min1) {sak 0: null (15); gå i stykker; sak 1: en (15); gå i stykker; sak 2: to (15); gå i stykker; sak 3: tre (15); gå i stykker; sak 4: fire (15); gå i stykker; sak 5: fem (15); gå i stykker; standard: nulll (15); gå i stykker; } bryter (min2) {sak 0: null (22); gå i stykker; sak 1: en (22); gå i stykker; sak 2: to (22); gå i stykker; sak 3: tre (22); gå i stykker; sak 4: fire (22); gå i stykker; sak 5: fem (22); gå i stykker; sak 6: seks (22); gå i stykker; sak 7: syv (22); gå i stykker; sak 8: åtte (22); gå i stykker; sak 9: ni (22); gå i stykker; standard: nulll (22); gå i stykker; } pixels.setPixelColor (14, pixels. Color (i, j, k)); piksler.vis (); forsinkelse (250); pixels.setPixelColor (14, pixels. Color (0, 0, 0)); piksler.vis (); forsinkelse (250); }
ugyldig null (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig en (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig to (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (0, 0, 0)); piksler.vis (); } ugyldig tre (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig fire (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig fem (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig seks (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig syv (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig åtte (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } ugyldig ni (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); piksler.vis (); } void nulll (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); piksler.vis (); pixels.setPixelColor (a+6, pixels. Color (0, 0, 0)); piksler.vis (); }
Trinn 4: Takk
besøk