Sadržaj:
Video: Ambijentalni sat u stvarnom vremenu: 4 koraka
2024 Autor: John Day | [email protected]. Zadnja promjena: 2024-01-30 09:35
Cilj
Ovaj sat sam napravio zato što oko mene leži adresabilna LED traka i želim ga koristiti. Tada sam vidio da moja soba nema dobar sat koji odgovara zidovima. Stoga sam odlučio napraviti sat koji može mijenjati boje prema raspoloženju korisnika ili boji zida.
1. korak: YouTube video
Za potpune upute pogledajte ovaj video na YouTubeu
Korak 2: Postupak
Prvo sam uzeo ploču od šperploče 24 x 15 inča.
Izrežite LED traku na komade i zalijepite ih na ploču. Nakon lemljenja prekrivam ih cijelim crnim papirom za papir, a zatim zalijepim termo ugljen na nju i izrežem termokoljen oštrim rezačem u obliku 4 ekrana sa sedam segmenata zajedno s dvije rupe u sredini. Zatim sam pripremio svoj krug pomoću dolje navedenog dijagrama krugova
i zalijepio sve ovo iza ploče. Naručio sam i prilagođeni PCB za isti s https://jlcpcb.com koji pruža najbolje prototipe PCB -a po najnižoj cijeni iz Kine i isporučuje se brzo i sigurno u cijelom svijetu. nakon lemljenja svih komponenti na ploču, uklonio sam ploču za kruh i popravio sve iza ploče i pokrio prednji dio pomoću tankog prozirnog papira za tragove. Sat izgleda sjajno i povećava ljepotu zida. boje za prilagođavanje čine ga savršenim za svaki zid.
Ako vam se sviđa ovaj projekt, ljubazno se pretplatite na youtube ili posjetite našu web stranicu https://robocircuits.com Hvala vam na čitanju!
Korak 3: Kodirajte
/* Kôd su dizajnirali RoboCircuits
* Posjetite našu web stranicu https://robocircuits.com za pomoć oko ovog koda * Ovaj kôd koristi biblioteku DS3231.h Preuzmite je s https://robocircuits.com * Za cjelovit vodič pogledajte video na našem YouTube kanalu https:// youtube. com/robocircuits */
#include #include
int i = 0, j = 0, k = 150;
// Pokretanje DS3231 pomoću hardverskog sučelja DS3231 rtc (SDA, SCL);
#ifdef _AVR_ #uključuje #endif
// Koji je pin na Arduinu spojen na NeoPixels? // Na Trinketu ili Gemmi predlažemo da ovo promijenite u 1 #define PIN 6
// Koliko je NeoPixela priključeno na Arduino? #definirajte BROJKE 45
// Kad postavljamo NeoPixel knjižnicu, govorimo joj koliko piksela i koji pin treba koristiti za slanje signala. // Imajte na umu da ćete za starije NeoPixel trake možda morati promijeniti treći parametar-za više informacija o mogućim vrijednostima pogledajte primjer Strandtest //. Adafruit_NeoPixel pikseli = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);
int delayval = 500; // odgoda za pola sekunde
void setup () {// Ovo je za Trinket 5V 16MHz, možete ukloniti ove tri linije ako ne koristite Trinket #if definirano (_AVR_ATtiny85_) if (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // Poseban kod kraja drangulije
pikseli.begin (); // Ovo inicijalizira NeoPixel knjižnicu. // Postavljanje serijske veze Serial.begin (115200); // Inicijalizacija rtc objekta rtc.begin (); // Sljedeći retci se mogu komentirati za postavljanje datuma i vremena //rtc.setDOW(SRIJEDA); // Postavi dan u tjednu na NEDJELJU //rtc.setTime(12, 0, 0); // Postavite vrijeme na 12:00:00 (24 -satni format) //rtc.setDate(1, 1, 2014); // Postavite datum na 1. siječnja 2014}
void loop () {if (digitalRead (2) == HIGH) {int a = analogRead (A0); int b = analogRead (A1); int c = analogRead (A2); i = karta (a, 0, 1025, 0, 150); // Zelena boja j = karta (b, 0, 1025, 0, 150); // Plava boja k = karta (c, 0, 1025, 0, 150); // Crvena boja} else {i = 0; j = 0; k = 150; }
// Kôd za pozadinsko osvjetljenje za (int x = 29; x <= 45; x ++) {pixels.setPixelColor (x, pixels. Color (i, j, k)); pikseli.show (); }
// Dohvaćanje stvarnog vremena iz rtc niza x = rtc.getTimeStr (); // Vrijeme slanja Serial.println (rtc.getTimeStr ()); int sat1 = x.charAt (0); int sat2 = x.charAt (1); int min1 = x.charAt (3); int min2 = x.charAt (4); sat1 = sat1-48; sat2 = sat2-48; min1 = min1-48; min2 = min2-48;
// Prikaz vremena na prekidaču sata (sat1) {// slučaj 0: nula (0); //pauza; slučaj 1: jedan (0); pauza; slučaj 2: dva (0); pauza; zadano: nulll (0); pauza; } prekidač (sat 2) {slučaj 0: nula (7); pauza; slučaj 1: jedan (7); pauza; slučaj 2: dva (7); pauza; slučaj 3: tri (7); pauza; slučaj 4: četiri (7); pauza; slučaj 5: pet (7); pauza; slučaj 6: šest (7); pauza; slučaj 7: sedam (7); pauza; slučaj 8: osam (7); pauza; slučaj 9: devet (7); pauza; zadano: nulll (7); pauza; } prekidač (min1) {slučaj 0: nula (15); pauza; slučaj 1: jedan (15); pauza; slučaj 2: dva (15); pauza; slučaj 3: tri (15); pauza; slučaj 4: četiri (15); pauza; slučaj 5: pet (15); pauza; zadano: nulll (15); pauza; } prekidač (min2) {slučaj 0: nula (22); pauza; slučaj 1: jedan (22); pauza; slučaj 2: dva (22); pauza; slučaj 3: tri (22); pauza; slučaj 4: četiri (22); pauza; slučaj 5: pet (22); pauza; slučaj 6: šest (22); pauza; slučaj 7: sedam (22); pauza; slučaj 8: osam (22); pauza; slučaj 9: devet (22); pauza; zadano: nulll (22); pauza; } piksela.setPixelColor (14, piksela. Boja (i, j, k)); pikseli.show (); kašnjenje (250); pixels.setPixelColor (14, pixels. Color (0, 0, 0)); pikseli.show (); kašnjenje (250); }
void zero (int a) {pixels.setPixelColor (a+0, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+4, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+5, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void one (int a) {pixels.setPixelColor (a+0, pikseli. Boja (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void two (int a) {pixels.setPixelColor (a+0, pikseli. Boja (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+4, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+5, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+6, pixels. Color (0, 0, 0)); pikseli.show (); } void three (int a) {pixels.setPixelColor (a+0, pikseli. Boja (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+5, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void four (int a) {pixels.setPixelColor (a+0, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void five (int a) {pixels.setPixelColor (a+0, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+3, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+5, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void six (int a) {pixels.setPixelColor (a+0, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+3, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+4, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+5, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void seven (int a) {pixels.setPixelColor (a+0, pikseli. Boja (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void osam (int a) {pixels.setPixelColor (a+0, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+4, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+5, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void nine (int a) {pixels.setPixelColor (a+0, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+1, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+2, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+3, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+5, pikseli. Boja (i, j, k)); pikseli.show (); pixels.setPixelColor (a+6, pikseli. Boja (i, j, k)); pikseli.show (); } void nulll (int a) {pixels.setPixelColor (a+0, pikseli. Boja (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pikseli.show (); pixels.setPixelColor (a+6, pixels. Color (0, 0, 0)); pikseli.show (); }
Korak 4: Hvala vam
posjetite
Preporučeni:
Sat u stvarnom vremenu s Arduinom: 3 koraka
Sat u stvarnom vremenu s Arduinom: U ovom projektu napravit ćemo sat uz pomoć Arduino i RTC modula. Kao što znamo, Arduino ne može prikazati stvarno vrijeme, pa ćemo koristiti RTC modul za prikaz pravog vremena na LCD -u. Pažljivo pročitajte sve korake koji će vam pomoći
Minitel sat u stvarnom vremenu: 5 koraka
Minitel sat u stvarnom vremenu: Minitel je 1978. godine stvorio France Telecom, a bio je usluga za pretraživanje i slanje poruka. Smatra se najuspješnijom mrežom prije svjetskog weba. Nakon 30 godina 2008. mreža se napokon zatvorila. (Postoji mnogo informacija o ovome
DS1307 Sat u stvarnom vremenu RTC sa Arduinom: 4 koraka
DS1307 RTC sat sa stvarnim vremenom sa Arduinom: U ovom vodiču ćemo naučiti o satu sa stvarnim vremenom (RTC) i kako Arduino & IC DS1307 sata u stvarnom vremenu sastavljeni su kao vremenski uređaj. Sat stvarnog vremena (RTC) koristi se za praćenje vremena i održavanje kalendara. Da biste koristili RTC, w
Sat baziran na Arduinu koji koristi DS1307 modul sata u stvarnom vremenu (RTC) i 0,96: 5 koraka
Arduino sat sa DS1307 modulom sata u realnom vremenu (RTC) i 0.96: Zdravo dečki, u ovom ćemo vodiču vidjeti kako napraviti radni sat pomoću modula sata realnog vremena DS1307 & OLED displeji. Dakle, očitavat ćemo vrijeme iz modula sata DS1307. I ispišite ga na OLED ekranu
Stvaranje sata s M5stick C pomoću Arduino IDE -a - RTC sat u stvarnom vremenu s M5stack M5stick-C: 4 koraka
Stvaranje sata s M5stick C pomoću Arduino IDE -a | RTC sat u stvarnom vremenu s M5stack M5stick-C: Zdravo dečki, u ovim uputama naučit ćemo kako napraviti sat s m5stick-C razvojnom pločom m5stack koristeći Arduino IDE. Dakle, m5stick će prikazati datum, vrijeme i amp; tjedan u mjesecu na ekranu