Innholdsfortegnelse:

Ambient sanntidsklokke: 4 trinn
Ambient sanntidsklokke: 4 trinn

Video: Ambient sanntidsklokke: 4 trinn

Video: Ambient sanntidsklokke: 4 trinn
Video: Как использовать ESP32 WiFi и Bluetooth с Arduino IDE, полная информация с примерами и кодом. 2024, Juli
Anonim
Ambient sanntidsklokke
Ambient sanntidsklokke

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

Image
Image

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

Anbefalt: