Բովանդակություն:

Իրական ժամանակի միջավայր ՝ 4 քայլ
Իրական ժամանակի միջավայր ՝ 4 քայլ

Video: Իրական ժամանակի միջավայր ՝ 4 քայլ

Video: Իրական ժամանակի միջավայր ՝ 4 քայլ
Video: 🇦🇿Азербайджанские солдаты и взятые в плен армянские дети 2024, Հուլիսի
Anonim
Իրական ժամանակի միջավայրի ժամացույց
Իրական ժամանակի միջավայրի ժամացույց

Նպատակ

Ես պատրաստել եմ այս ockամացույցը, որովհետև ես ունեմ հասցեավորվող LED ժապավեն, որը ցանկանում եմ օգտագործել այն: Հետո տեսա, որ իմ սենյակում չկա մի լավ ockամացույց, որը համընկնում է իր պատերին: Այսպիսով, ես որոշեցի պատրաստել Clամացույց, որը կարող է փոխել իր գույները ՝ ըստ օգտագործողների տրամադրության կամ պատի գույնի:

Քայլ 1: YouTube տեսանյութ

Image
Image

Դիտեք այս youtube տեսանյութը ՝ ամբողջական հրահանգների համար

Քայլ 2: Ընթացակարգ

Ես նախ վերցրեցի 24 x 15 դյույմանոց նրբատախտակի տախտակ:

Կտրեք LED շերտը կտորների և կպցրեք դրանք տախտակի վրա, այնուհետև դրանք կպցնելուց հետո ամբողջը ծածկում եմ սև գծապատկերով, այնուհետև դրա վրայով կպցրեք ջերմաթուխի թերթիկ և կտրեք ջերմաօջախը կտրիչ դանակով ՝ 4 յոթ հատվածի էկրանների տեսքով: երկու անցք կենտրոնում: Այնուհետև պատրաստեցի միացումս ՝ օգտագործելով ստորև տրված սխեմաների դիագրամը

և այս ամենը կպցրեց տախտակի հետևում: Ես նաև պատվիրեցի անհատական PCB նույնի համար https://jlcpcb.com- ից: Նրանք ապահովում են լավագույն pcb նախատիպերը ամենացածր գնով Չինաստանից և առաքում են ամբողջ աշխարհում արագ և ապահով: Իմ տախտակի վրա իմ բոլոր բաղադրիչները միացնելուց հետո ես հանեցի տախտակը և ամեն ինչ ամրացրեցի տախտակի հետևում և ծածկեցի առջևի հատվածը `օգտագործելով բարակ կիսաթափանցիկ հետք թուղթ: Theամացույցը հիանալի տեսք ունի և մեծացնում է պատի գեղեցկությունը: հարմարեցված գույները այն կատարյալ են դարձնում ցանկացած պատի համար:

Եթե Ձեզ դուր է գալիս այս նախագիծը, խնդրում ենք բաժանորդագրվել youtube- ին կամ այցելել մեր կայքը ՝ https://robocircuits.com: Շնորհակալություն ընթերցման համար:

Քայլ 3: Կոդ

/* Կոդը նախագծված է RoboCircuits- ի կողմից

* Այցելեք մեր կայքը https://robocircuits.com այս կոդի վերաբերյալ օգնության համար * Այս կոդը օգտագործում է DS3231.h Գրադարանը ներբեռնեք այն https://robocircuits.com- ից * Ամբողջական ձեռնարկի համար դիտեք տեսանյութը մեր YouTube ալիքում https:// youtube: com/robocircuits */

#ներառել #ներառել

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

// Սկսեք DS3231- ը ՝ օգտագործելով DS3231 rtc ապարատային ինտերֆեյսը (SDA, SCL);

#ifdef _AVR_ #ներառել #endif

// Arduino- ի ո՞ր քորոցը միացված է NeoPixels- ին: // Կտրուկի կամ Gemma- ի վրա մենք առաջարկում ենք սա փոխել 1 #սահմանել PIN 6

// Քանի՞ NeoPixel է կցված Arduino- ին: #սահմանել NUMPIXELS 45

// Երբ մենք կարգավորում ենք NeoPixel գրադարանը, մենք նրան ասում ենք, թե քանի պիքսել, և որ քորոցն օգտագործել ազդանշաններ ուղարկելու համար: // Նկատի ունեցեք, որ ավելի հին NeoPixel շերտերի համար կարող է անհրաժեշտ լինել փոխել երրորդ պարամետրը `տե՛ս strandtest // օրինակը հնարավոր արժեքների մասին լրացուցիչ տեղեկությունների համար: Adafruit_NeoPixel պիքսել = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);

int հետաձգում = 500; // կես վայրկյան հետաձգում

void setup () {// Սա Trinket 5V 16MHz- ի համար է, կարող եք հեռացնել այս երեք տողերը, եթե չեք օգտագործում Trinket #if սահմանված (_AVR_ATtiny85_) եթե (F_CPU == 16000000) clock_prescale_set (clock_div_1); #endif // մանրուքների վերջի հատուկ ծածկագիր

pixels.begin (); // Սա նախաստորագրում է NeoPixel գրադարանը: // Կարգավորում Սերիական կապ Serial.begin (115200); // Նախաստորագրել rtc օբյեկտը rtc.begin (); // Հետևյալ տողերը կարող են չմեկնաբանվել ՝ ամսաթիվը և ժամը սահմանելու համար //rtc.setDOW(WEDNESDAY); // Շաբաթվա օրը սահմանել ԿԻՐԱԿԻ //rtc.setTime(12, 0, 0); // Setամանակը սահմանեք 12:00:00 (24 ժամ ձևաչափ) //rtc.setDate(1, 1, 2014); // Ամսաթիվը սահմանել 2014 թվականի հունվարի 1 -ը}

void loop () {if (digitalRead (2) == HIGH) {int a = analogRead (A0); int b = analogRead (A1); int c = analogRead (A2); i = քարտեզ (a, 0, 1025, 0, 150); // Կանաչ գույն j = քարտեզ (b, 0, 1025, 0, 150); // Կապույտ գույն k = քարտեզ (c, 0, 1025, 0, 150); // Կարմիր գույն} ուրիշ {i = 0; j = 0; k = 150; }

// Հետ լուսավորության ծածկագիր (int x = 29; x <= 45; x ++) {pixels.setPixelColor (x, pixels. Color (i, j, k)); pixels.show (); }

// Իրական ժամանակի դուրսբերում rtc տողից x = rtc.getTimeStr (); // Ուղարկելու ժամանակը Serial.println (rtc.getTimeStr ()); int ժամ 1 = x.charAt (0); int ժամ 2 = x.charAt (1); int min1 = x.charAt (3); int min2 = x.charAt (4); ժամ 1 = ժամ 1-48; ժամ 2 = ժամ 2-48; min1 = min1-48; min2 = min2-48;

// timeուցադրման ժամանակը Clամացույցի անջատիչի վրա (ժամ 1) {// գործ 0: զրո (0); //ընդմիջում; գործ 1: մեկ (0); ընդմիջում; գործ 2: երկու (0); ընդմիջում; կանխադրված ՝ nulll (0); ընդմիջում; } անջատիչ (ժամ 2) {դեպք 0: զրո (7); ընդմիջում; գործ 1: մեկ (7); ընդմիջում; գործ 2: երկու (7); ընդմիջում; գործ 3: երեք (7); ընդմիջում; գործ 4: չորս (7); ընդմիջում; գործ 5: հինգ (7); ընդմիջում; գործ 6: վեց (7); ընդմիջում; գործ 7: յոթ (7); ընդմիջում; գործ 8: ութ (7); ընդմիջում; գործ 9: ինը (7); ընդմիջում; կանխադրված ՝ nulll (7); ընդմիջում; } անջատիչ (min1) {դեպք 0: զրո (15); ընդմիջում; գործ 1: մեկ (15); ընդմիջում; գործ 2: երկու (15); ընդմիջում; գործ 3: երեք (15); ընդմիջում; գործ 4: չորս (15); ընդմիջում; գործ 5: հինգ (15); ընդմիջում; կանխադրված ՝ nulll (15); ընդմիջում; } անջատիչ (min2) {դեպք 0: զրո (22); ընդմիջում; գործ 1: մեկ (22); ընդմիջում; գործ 2: երկու (22); ընդմիջում; գործ 3: երեք (22); ընդմիջում; գործ 4: չորս (22); ընդմիջում; գործ 5: հինգ (22); ընդմիջում; գործ 6: վեց (22); ընդմիջում; գործ 7: յոթ (22); ընդմիջում; գործ 8: ութ (22); ընդմիջում; գործ 9: ինը (22); ընդմիջում; կանխադրված ՝ nulll (22); ընդմիջում; } pixels.setPixelColor (14, պիքսել. Color (i, j, k)); pixels.show (); ուշացում (250); pixels.setPixelColor (14, պիքսել. Գույն (0, 0, 0)); pixels.show (); ուշացում (250); }

դատարկ զրո (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. 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, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. 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, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. 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, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. Color (i, j, k)); pixels.show (); } անվավեր չորս (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. Color (i, j, k)); pixels.show (); } անվավեր հինգ (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. 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, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. Color (i, j, k)); pixels.show (); } դատարկ յոթ (int a) {pixels.setPixelColor (a+0, pixels. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+1, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. Color (i, j, k)); pixels.show (); } void ութ (int a) {pixels.setPixelColor (a+0, pixels. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+1, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. 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, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (i, j, k)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. 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, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+2, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+3, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+4, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+5, պիքսել. Color (0, 0, 0)); pixels.show (); pixels.setPixelColor (a+6, պիքսել. Color (0, 0, 0)); pixels.show (); }

Քայլ 4: Շնորհակալություն

այցելեք

Խորհուրդ ենք տալիս: