Turinys:

Aplinkos laikrodis realiuoju laiku: 4 žingsniai
Aplinkos laikrodis realiuoju laiku: 4 žingsniai

Video: Aplinkos laikrodis realiuoju laiku: 4 žingsniai

Video: Aplinkos laikrodis realiuoju laiku: 4 žingsniai
Video: Mokymasis nuotoliniu būdu: ką svarbiausio reikia žinoti tėvams, vaikams ir mokytojams 2024, Gruodis
Anonim
Aplinkos laikrodis realiuoju laiku
Aplinkos laikrodis realiuoju laiku

Tikslas

Aš sukūriau šį laikrodį, nes turiu adresuojamą LED juostą ir noriu ją naudoti. Tada pamačiau, kad mano kambaryje nėra gero laikrodžio, atitinkančio jo sienas. Taigi nusprendžiau sukurti laikrodį, kuris gali pakeisti spalvas pagal vartotojų nuotaiką ar sienų spalvą.

1 veiksmas: „YouTube“vaizdo įrašas

Image
Image

Žiūrėkite šį „YouTube“vaizdo įrašą, kad gautumėte visas instrukcijas

2 žingsnis: procedūra

Pirmiausia paėmiau 24 x 15 colių faneros plokštę.

Supjaustykite LED juostelę į gabalus ir įklijuokite juos ant lentos. Tada po jų litavimo aš padengiu visą juodu diagramos popieriumi, tada ant jo įklijuokite termoakcijos lakštą ir supjaustykite termoakciją aštriu pjaustytuvu, turinčiu 4 septynių segmentų ekranus. dvi skylės centre. Tada paruošiau savo grandinę naudodamas žemiau pateiktą schemų schemą

ir visa tai įklijavo už lentos. Aš taip pat užsisakiau individualų PCB iš tos pačios iš https://jlcpcb.com, jie greitai ir saugiai pateikia geriausius PCB prototipus už mažiausią kainą iš Kinijos ir visame pasaulyje. lituodamas visus savo lentos komponentus, aš pašalinau duonos lentą ir viską sutvirtinau už lentos ir uždengiau priekinę dalį, naudodami ploną permatomą pėdsaką. Laikrodis atrodo nuostabiai ir padidina sienos grožį. pritaikytos spalvos puikiai tinka bet kuriai sienai.

Jei jums patinka šis projektas, maloniai užsiprenumeruokite „YouTube“arba apsilankykite mūsų svetainėje https://robocircuits.com Dėkojame, kad skaitote!

3 žingsnis: kodas

/* Kodeksą sukūrė „RoboCircuits“

* Apsilankykite mūsų svetainėje https://robocircuits.com, kad gautumėte pagalbos dėl šio kodo. * Šis kodas naudoja DS3231.h biblioteką ir atsisiųskite ją iš https://robocircuits.com com/robocircuits */

#įtraukti #įtraukti

int i = 0, j = 0, k = 150;

// Inicijuokite DS3231 naudodami aparatūros sąsają DS3231 rtc (SDA, SCL);

#ifdef _AVR_ #include #endif

// Kuris „Arduino“kaištis yra prijungtas prie „NeoPixels“? // „Trinket“ar „Gemma“siūlome tai pakeisti į 1 #define PIN 6

// Kiek „NeoPixels“pridedama prie „Arduino“? #define NUMPIXELS 45

// Kai nustatome „NeoPixel“biblioteką, nurodome, kiek pikselių ir kokį smeigtuką naudoti signalams siųsti. // Atminkite, kad senesnėms „NeoPixel“juostelėms gali tekti pakeisti trečiąjį parametrą-daugiau informacijos apie galimas vertes rasite „strandtest //“pavyzdyje. Adafruit_NeoPixel pikseliai = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

int delayval = 500; // atidėti pusę sekundės

void setup () {// Tai skirta „Trinket 5V 16MHz“, galite pašalinti šias tris eilutes, jei nenaudojate „Trinket #if“(_AVR_ATtiny85_), jei (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // Paminklo specialaus kodo pabaiga

pixels.begin (); // Tai inicijuoja „NeoPixel“biblioteką. // Sąrankos nuoseklusis ryšys Serial.begin (115200); // Inicijuoti rtc objektą rtc.begin (); // Šios eilutės gali būti nekomentuojamos norint nustatyti datą ir laiką //rtc.setDOW(WEDNESDAY); // Nustatykite savaitės dieną į SUNDAY //rtc.setTime(12, 0, 0); // Nustatykite laiką iki 12:00:00 (24 val. Formatas) //rtc.setDate(1, 1, 2014); // Nustatykite datą į 2014 m. Sausio 1 d.}

void loop () {if (digitalRead (2) == HIGH) {int a = analogRead (A0); int b = analogRead (A1); int c = analogRead (A2); i = žemėlapis (a, 0, 1025, 0, 150); // Žalia spalva j = žemėlapis (b, 0, 1025, 0, 150); // Mėlyna spalva k = žemėlapis (c, 0, 1025, 0, 150); // Raudona spalva} else {i = 0; j = 0; k = 150; }

// Fono apšvietimo kodas (int x = 29; x <= 45; x ++) {pixels.setPixelColor (x, pixels. Color (i, j, k)); pixels.show (); }

// Realiojo laiko gavimas iš rtc eilutės x = rtc.getTimeStr (); // Siuntimo laikas Serial.println (rtc.getTimeStr ()); int valanda1 = x.charAt (0); int valanda2 = x.charAt (1); int min1 = x.charAt (3); int min2 = x.charAt (4); valanda1 = valanda1-48; valanda2 = valanda2-48; min1 = min1-48; min2 = min2-48;

// Rodomas laikas ant laikrodžio jungiklio (valanda1) {// atvejis 0: nulis (0); //pertrauka; 1 atvejis: vienas (0); pertrauka; 2 atvejis: du (0); pertrauka; numatytasis: nulll (0); pertrauka; } jungiklis (valanda2) {atvejis 0: nulis (7); pertrauka; 1 atvejis: vienas (7); pertrauka; 2 atvejis: du (7); pertrauka; 3 atvejis: trys (7); pertrauka; 4 atvejis: keturi (7); pertrauka; 5 atvejis: penki (7); pertrauka; 6 atvejis: šeši (7); pertrauka; 7 atvejis: septyni (7); pertrauka; 8 atvejis: aštuoni (7); pertrauka; 9 atvejis: devyni (7); pertrauka; numatytasis: nulll (7); pertrauka; } jungiklis (min1) {atvejis 0: nulis (15); pertrauka; 1 atvejis: vienas (15); pertrauka; 2 atvejis: du (15); pertrauka; 3 atvejis: trys (15); pertrauka; 4 atvejis: keturi (15); pertrauka; 5 atvejis: penki (15); pertrauka; numatytasis: nulll (15); pertrauka; } jungiklis (min2) {atvejis 0: nulis (22); pertrauka; 1 atvejis: vienas (22); pertrauka; 2 atvejis: du (22); pertrauka; 3 atvejis: trys (22); pertrauka; 4 atvejis: keturi (22); pertrauka; 5 atvejis: penki (22); pertrauka; 6 atvejis: šeši (22); pertrauka; 7 atvejis: septyni (22); pertrauka; 8 atvejis: aštuoni (22); pertrauka; 9 atvejis: devyni (22); pertrauka; numatytasis: nulll (22); pertrauka; } pixels.setPixelColor (14, pixels. Color (i, j, k)); pixels.show (); vėlavimas (250); pixels.setPixelColor (14, pixels. Color (0, 0, 0)); pixels.show (); vėlavimas (250); }

void zero (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void one (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void two (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (0, 0, 0)); pixels.show (); } void three (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void four (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void five (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void six (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void seven (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void eight (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void nine (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (i, j, k)); pixels.show (); } void nulll (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+1, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+2, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+3, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, pixels. Color (0, 0, 0)); pixels.show (); }

4 žingsnis: ačiū

apsilankykite

Rekomenduojamas: