Мазмуну:
- 1 -кадам: Материалдарды чогултуу
- 2 -кадам: Бардык компоненттерди зымдоо
- 3 -кадам: Программалоо
- 4 -кадам: Иштөө жана аяктоо
Video: Укмуш Arduino Сааты: 4 кадам
2024 Автор: John Day | [email protected]. Акыркы өзгөртүү: 2024-01-30 10:40
Биз arduino менен көптөгөн долбоорлорду көрдүк. Бирок, азыр мен сизге ардуино жана 2 ЖК дисплейи бар саатты кантип курууну көрсөтөм. Бул жөнөкөй, бирок толугу менен кызыктуу. Ар бир адам аракет кыла алат. Андыктан, даярдан !!!
1 -кадам: Материалдарды чогултуу
Эгер аны жасоону кааласаңыз, сизге кээ бир нерселер керек болот. Бул нерселерди жакынкы чекене дүкөндөн оңой эле сатып алсаңыз болот.
Эмне керек болот:
- Arduino UNO R3Neo
- Pixel Ring 24
- Нан тактасы
- LCD 16x2
- 100 Ом резистору (2)
- 120 Ом каршылыгы (2)
- 10 К Ом резистору (2)
- Баскыч
Булардын диаграммасы жогоруда көрсөтүлгөн. Сиз каалаган нан тактасын колдоно аласыз. Сизге 6 резистор керек, алардын мааниси тизмеде жогоруда жазылган. Ошондой эле туташуу үчүн зымдар керек болот. Бул ЖК сиз көрсөтүү үчүн болот. Кийинки этапта сиз зымдардын схемасын көрө аласыз.
2 -кадам: Бардык компоненттерди зымдоо
Сизге керектүү нерселер. Мен мурунку кадамда көрсөттүм, андыктан нан тактасынын зым схемасын мени менен бирге алыңыз.
Кабелдөө кадамдары:
- Негизги сызыкка нан тактасынын үстү жагына 100 Ом каршылыгын кой.
- Позитивдүү линиядагы нан тактасынын үстү жагына 120 Ом резисторун коюңуз.
- Басуу баскычын коюу (диаграмма жогоруда көрсөтүлгөн)
- Push Button астына 10 К Ом резисторун коюңуз
- 100 LED резисторлорун (экөөнү тең) "LED катод" менен LCD дисплейге туташтыруу
- 120 Ом резисторлорун (экөөнү тең) "LED анод" менен LCD дисплейге туташтыруу
- Нан тактасынын терс терминалын жогорку саптан "Окуу/Жазуу" га туташтырыңыз.
- Нан тактасынын терс терминалын жогорку сызыктан "Контрастка" туташтырыңыз.
- Нан тактасынын оң терминалын төмөнкү сызыктан 'Vcc' га туташтырыңыз.
- Нан тактасынын дагы бир терс терминалын нан тактасынын жогорку сызыгынан 'GND "ге туташтырыңыз.
- Экинчи ЖКда муну мурункудай кылып туташтырыңыз.
- Калган резисторлорду нан тактасынын терс линиясына туташтырыңыз.
- Баскычтарды оң сызыкка туташтырыңыз.
- Нан тактасынын оң жана терс терминалын "Neo Pixel Ring 24" менен туташтырыңыз.
Эми сиз бардык компоненттерди туташтырдыңыз. Бирок arduino дагы эле калды. Мунун диаграммасы жогоруда көрсөтүлгөн.
Бардык компоненттерге ардуинонун зымдуу кадамдары:
- Ардуинонун A0 & A1 баскычтарын (Терминал22) туташтырыңыз.
- GNDди нан тактасынын терс терминалына туташтырыңыз.
- 5V нан тактасынын оң терминалына туташтырыңыз.
- Ардуинонун D13'ин "Күчүнө" "Neo Pixel Ring 24" менен туташтырыңыз
- Arduino D7ди LCD1дин "Катталууну тандоо" менен туташтырыңыз.
- Arduino D8ди ЖК 2нин "Иштетүү" менен туташтырыңыз.
- Arduino D9ду LCD 2деги "DB4" менен туташтырыңыз.
- Ардуинонун D10'ун LCD 2деги "DB5" менен туташтырыңыз.
- Arduino D11ди LCD 2деги "DB6" га туташтырыңыз.
- Arduino D12ди LCD 2деги "DB7" ге туташтырыңыз.
- Arduino D1ди LCD 1деги "Select Register" ге туташтырыңыз.
- Arduino D2'ни LCD 1дин "Иштетүү" менен туташтырыңыз.
- Arduino D3'ни LCD 2деги "DB4" менен туташтырыңыз.
- Arduino D4'ин LCD 2деги "DB5" менен туташтырыңыз.
- Ардуинонун D5'ин LCD 2деги "DB6" га туташтырыңыз.
- Arduino D6'ны LCD 2деги "DB7" ге туташтырыңыз.
Зымдангандан кийин бардык компоненттердин диаграммасы жогоруда көрсөтүлгөн.
3 -кадам: Программалоо
Сиз айланууну толук кылдыңыз. Бирок бул долбоорго программаламайынча иштебейт. Эгерде сиз тажрыйбалуу болсоңуз жана тажрыйбаңыз болсо, аны оңой программалай аласыз. Бул үчүн колдонулган программалык камсыздоону билесиз деп үмүттөнөм. Эгерде сиз программалоого өзгөртүү киргизгиңиз келсе, аны ошого жараша программалаңыз, бирок ал туура болушу керек экенин унутпаңыз. Болбосо иштебейт. Эгерде сиз аны программалай албасаңыз, бул жерден көчүрүп же башка булактан алсаңыз болот.
#кошуу
// Сол ЖК LiquidCrystal lcd1 (7, 8, 9, 10, 11, 12); // Оң LCD LiquidCrystal lcd2 (1, 2, 3, 4, 5, 6); #камтыйт #ifdef _AVR_ #include #endif/ / NeoPixel Ring 24 #PIN кодун аныктоо 13 #NUMPIXELS 24Adafruit_NeoPixel пикселдерин аныктоо = Adafruit_NeoPixel (NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800); int delayval = 50; long previousMillis = 0; узун интервал = 950; int seconds = 0; int hourButtonState = 0; int minButtonState = 0; байт толук [8] = {B11111, B11111, B11111, B11111, B11111, B11111, B11111, B11111,}; байт жарымL [8] = {B11111, B11111, B11111, B11111, B0000, B00000, B00000,}; байт жарымы [8] = {B00000, B00000, B00000, B00000, B11111, B11111, B11111, B11111,}; // баштапкы абалга келтирүү басылганда бир жолу иштейт: void setup () {// set түймө казыктары pinMode (14, INPUT); // pinMode мүнөтүн коюу (15, INPUT); // саатты коюу // ыңгайлаштырылган белгилерди жасоо lcd1.createChar (0, halfR); lcd1.createChar (1, halfL); lcd1.createChar (2, толук); lcd2.createChar (0, halfR); lcd2.createChar (1, halfL); lcd2.createChar (2, толук); // set LCD1 size lcd1.begin (16, 2); // LCD2 өлчөмүн коюу lcd2.begin (16, 2); // пикселдик шакек пиксель.begin (); // баштапкы орнотуу lcd1.clear (); num0lcd1 (); lcd2.clear (); num0lcd2 (); //pixels.setPixelColor(17, пиксел. Color (0, 150, 0)); //pixels.setPixelColor(18, пиксел. Color (0, 150, 0)); piksel.show (); } // цикл тартиби дайыма кайра -кайра иштейт: void loop () {hourButtonState = digitalRead (15); minButtonState = digitalRead (14); if (hourButtonState == HIGH) {hour ++; runClock (); } if (minButtonState == HIGH) {seconds ++; runClock (); } белгисиз узак currentMillis = millis (); if (currentMillis - previousMillis> interval) {if (seconds == 59) {seconds = 0; if (hour == 11) {hour = 0; } else {hour ++; }} else {seconds ++; } previousMillis = currentMillis; runClock (); } кечиктирүү (10); } void runClock () {if (seconds == 0) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num0lcd2 (); } if (seconds == 1 || seconds == 11 || seconds == 21 || seconds == 31 || seconds == 41 || seconds == 51) {lcd1.clear (); num1lcd1 (); } if (seconds == 2 || seconds == 12 || seconds == 22 || seconds == 32 || seconds == 42 || seconds == 52) {lcd1.clear (); num2lcd1 (); } if (seconds == 3 || seconds == 13 || seconds == 23 || seconds == 33 || seconds == 43 || seconds == 53) {lcd1.clear (); num3lcd1 (); } if (seconds == 4 || seconds == 14 || seconds == 24 || seconds == 34 || seconds == 44 || seconds == 54) {lcd1.clear (); num4lcd1 (); } if (seconds == 5 || seconds == 15 || seconds == 25 || seconds == 35 || seconds == 45 || seconds == 55) {lcd1.clear (); num5lcd1 (); } if (seconds == 6 || seconds == 16 || seconds == 26 || seconds == 36 || seconds == 46 || seconds == 56) {lcd1.clear (); num6lcd1 (); } if (seconds == 7 || seconds == 17 || seconds == 27 || seconds == 37 || seconds == 47 || seconds == 57) {lcd1.clear (); num7lcd1 (); } if (seconds == 8 || seconds == 18 || seconds == 28 || seconds == 38 || seconds == 48 || seconds == 58) {lcd1.clear (); num8lcd1 (); } if (seconds == 9 || seconds == 19 || seconds == 29 || seconds == 39 || seconds == 49 || seconds == 59) {lcd1.clear (); num9lcd1 (); } if (seconds == 10) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num1lcd2 (); } if (seconds == 20) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num2lcd2 (); } if (seconds == 30) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num3lcd2 (); } if (seconds == 40) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num4lcd2 (); } if (seconds == 50) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num5lcd2 (); } if (hour == 0) {piksel.setPixelColor (15, pixel. Color (0, 0, 0)); piksel.setPixelColor (16, pixel. Color (0, 0, 0)); pixel.setPixelColor (17, пиксел. Color (0, 150, 0)); piksel.setPixelColor (18, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 1) {piksel.setPixelColor (17, pixel. Color (0, 0, 0))); piksel.setPixelColor (18, pixel. Color (0, 0, 0)); pixel.setPixelColor (19, пиксел. Color (0, 150, 0)); pixel.setPixelColor (20, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 2) {pixel.setPixelColor (19, pixel. Color (0, 0, 0))); piksel.setPixelColor (20, pixel. Color (0, 0, 0)); pixel.setPixelColor (21, пиксел. Color (0, 150, 0)); pixel.setPixelColor (22, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 3) {piksel.setPixelColor (21, pixel. Color (0, 0, 0)); pixel.setPixelColor (22, pixel. Color (0, 0, 0)); pixel.setPixelColor (23, pixel. Color (0, 150, 0)); piksel.setPixelColor (0, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 4) {piksel.setPixelColor (23, pixel. Color (0, 0, 0)); piksel.setPixelColor (0, pixel. Color (0, 0, 0)); pixel.setPixelColor (1, pixel. Color (0, 150, 0)); piksel.setPixelColor (2, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 5) {piksel.setPixelColor (1, pixel. Color (0, 0, 0))); piksel.setPixelColor (2, pixel. Color (0, 0, 0)); piksel.setPixelColor (3, pixel. Color (0, 150, 0)); piksel.setPixelColor (4, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 6) {piksel.setPixelColor (3, pixel. Color (0, 0, 0)); piksel.setPixelColor (4, pixel. Color (0, 0, 0)); piksel.setPixelColor (5, pixel. Color (0, 150, 0)); piksel.setPixelColor (6, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 7) {piksel.setPixelColor (5, pixel. Color (0, 0, 0)); piksel.setPixelColor (6, pixel. Color (0, 0, 0)); piksel.setPixelColor (7, pixel. Color (0, 150, 0)); piksel.setPixelColor (8, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 8) {piksel.setPixelColor (7, pixel. Color (0, 0, 0)); piksel.setPixelColor (8, pixel. Color (0, 0, 0)); piksel.setPixelColor (9, pixel. Color (0, 150, 0)); piksel.setPixelColor (10, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 9) {pixel.setPixelColor (9, pixel. Color (0, 0, 0)); piksel.setPixelColor (10, pixel. Color (0, 0, 0)); piksel.setPixelColor (11, pixel. Color (0, 150, 0)); pixel.setPixelColor (12, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 10) {piksel.setPixelColor (11, pixel. Color (0, 0, 0)); piksel.setPixelColor (12, pixel. Color (0, 0, 0)); pixel.setPixelColor (13, пиксел. Color (0, 150, 0)); piksel.setPixelColor (14, pixel. Color (0, 150, 0)); piksel.show (); } if (hour == 11) {piksel.setPixelColor (13, pixel. Color (0, 0, 0)); piksel.setPixelColor (14, pixel. Color (0, 0, 0)); pixel.setPixelColor (15, pixel. Color (0, 150, 0)); piksel.setPixelColor (16, pixel. Color (0, 150, 0)); piksel.show (); }} боштук num0lcd1 () {lcd1.setCursor (0, 0); lcd1.write (байт (2)); // толук lcd1.setCursor (0, 1); lcd1.write (байт (2)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); // жарым оң lcd1.setCursor (1, 0); lcd1.write (байт (1)); // жарым сол lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (2, 0); lcd1.write (байт (1)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 0); lcd1.write (байт (1)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 0); lcd1.write (байт (1)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 0); lcd1.write (байт (1)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 0); lcd1.write (байт (1)); lcd1.setCursor (7, 1); lcd1.write (байт (0)); lcd1.setCursor (7, 0); lcd1.write (байт (1)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (8, 0); lcd1.write (байт (1)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 0); lcd1.write (байт (1)); lcd1.setCursor (10, 1); lcd1.write (байт (0)); lcd1.setCursor (10, 0); lcd1.write (байт (1)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (11, 0); lcd1.write (байт (1)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 0); lcd1.write (байт (1)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 0); lcd1.write (байт (1)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 0); lcd1.write (байт (1)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); } жараксыз num1lcd1 () {lcd1.setCursor (0, 1); lcd1.write (байт (0)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (7, 1); lcd1.write (байт (0)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (10, 1); lcd1.write (байт (0)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (15, 1); lcd1.write (байт (0)); } жараксыз num2lcd1 () {lcd1.setCursor (0, 0); lcd1.write (байт (2)); // толук lcd1.setCursor (0, 1); lcd1.write (байт (2)); lcd1.setCursor (1, 0); lcd1.write (байт (1)); // жарымы lcd1.setCursor (2, 0); lcd1.write (байт (1)); lcd1.setCursor (3, 0); lcd1.write (байт (1)); lcd1.setCursor (4, 0); lcd1.write (байт (1)); lcd1.setCursor (5, 0); lcd1.write (байт (1)); lcd1.setCursor (6, 0); lcd1.write (байт (1)); lcd1.setCursor (7, 1); lcd1.write (байт (2)); lcd1.setCursor (7, 0); lcd1.write (байт (2)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (10, 1); lcd1.write (байт (0)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); } жараксыз num3lcd1 () {lcd1.setCursor (0, 0); lcd1.write (байт (2)); // толук lcd1.setCursor (0, 1); lcd1.write (байт (2)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); // жарым оң lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (7, 1); lcd1.write (байт (2)); lcd1.setCursor (7, 0); lcd1.write (байт (2)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (10, 1); lcd1.write (байт (0)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); } жараксыз num4lcd1 () {lcd1.setCursor (0, 1); lcd1.write (байт (0)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (7, 1); lcd1.write (байт (2)); lcd1.setCursor (7, 0); lcd1.write (байт (2)); lcd1.setCursor (8, 0); lcd1.write (байт (1)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 0); lcd1.write (байт (1)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (10, 0); lcd1.write (байт (1)); lcd1.setCursor (10, 1); lcd1.write (байт (0)); lcd1.setCursor (11, 0); lcd1.write (байт (1)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 0); lcd1.write (байт (1)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 0); lcd1.write (байт (1)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 0); lcd1.write (байт (1)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (15, 0); lcd1.write (байт (1)); lcd1.setCursor (15, 1); lcd1.write (байт (0)); } жараксыз num5lcd1 () {lcd1.setCursor (0, 0); lcd1.write (байт (2)); // толук lcd1.setCursor (0, 1); lcd1.write (байт (2)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); // жарым оң lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (7, 1); lcd1.write (байт (2)); lcd1.setCursor (7, 0); lcd1.write (байт (2)); lcd1.setCursor (8, 0); lcd1.write (байт (1)); lcd1.setCursor (9, 0); lcd1.write (байт (1)); lcd1.setCursor (10, 0); lcd1.write (байт (1)); lcd1.setCursor (11, 0); lcd1.write (байт (1)); lcd1.setCursor (12, 0); lcd1.write (байт (1)); lcd1.setCursor (13, 0); lcd1.write (байт (1)); lcd1.setCursor (14, 0); lcd1.write (байт (1)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); } жараксыз num6lcd1 () {lcd1.setCursor (0, 0); lcd1.write (байт (2)); // толук lcd1.setCursor (0, 1); lcd1.write (байт (2)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); // жарым оң lcd1.setCursor (1, 0); lcd1.write (байт (1)); // жарым сол lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (2, 0); lcd1.write (байт (1)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 0); lcd1.write (байт (1)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 0); lcd1.write (байт (1)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 0); lcd1.write (байт (1)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 0); lcd1.write (байт (1)); lcd1.setCursor (7, 1); lcd1.write (байт (2)); lcd1.setCursor (7, 0); lcd1.write (байт (2)); lcd1.setCursor (8, 0); lcd1.write (байт (1)); lcd1.setCursor (9, 0); lcd1.write (байт (1)); lcd1.setCursor (10, 0); lcd1.write (байт (1)); lcd1.setCursor (11, 0); lcd1.write (байт (1)); lcd1.setCursor (12, 0); lcd1.write (байт (1)); lcd1.setCursor (13, 0); lcd1.write (байт (1)); lcd1.setCursor (14, 0); lcd1.write (байт (1)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); } жараксыз num7lcd1 () {lcd1.setCursor (0, 1); lcd1.write (байт (0)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (7, 1); lcd1.write (байт (0)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (10,1); lcd1.write (байт (0)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); } жараксыз num8lcd1 () {lcd1.setCursor (0, 0); lcd1.write (байт (2)); // толук lcd1.setCursor (0, 1); lcd1.write (байт (2)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); // жарым оң lcd1.setCursor (1, 0); lcd1.write (байт (1)); // жарым сол lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (2, 0); lcd1.write (байт (1)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 0); lcd1.write (байт (1)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 0); lcd1.write (байт (1)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 0); lcd1.write (байт (1)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 0); lcd1.write (байт (1)); lcd1.setCursor (7, 1); lcd1.write (байт (2)); lcd1.setCursor (7, 0); lcd1.write (байт (2)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (8, 0); lcd1.write (байт (1)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 0); lcd1.write (байт (1)); lcd1.setCursor (10, 1); lcd1.write (байт (0)); lcd1.setCursor (10, 0); lcd1.write (байт (1)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (11, 0); lcd1.write (байт (1)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 0); lcd1.write (байт (1)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 0); lcd1.write (байт (1)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 0); lcd1.write (байт (1)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); } жараксыз num9lcd1 () {lcd1.setCursor (0, 0); lcd1.write (байт (2)); lcd1.setCursor (0, 1); lcd1.write (байт (2)); lcd1.setCursor (1, 1); lcd1.write (байт (0)); lcd1.setCursor (2, 1); lcd1.write (байт (0)); lcd1.setCursor (3, 1); lcd1.write (байт (0)); lcd1.setCursor (4, 1); lcd1.write (байт (0)); lcd1.setCursor (5, 1); lcd1.write (байт (0)); lcd1.setCursor (6, 1); lcd1.write (байт (0)); lcd1.setCursor (7, 1); lcd1.write (байт (2)); lcd1.setCursor (7, 0); lcd1.write (байт (2)); lcd1.setCursor (8, 0); lcd1.write (байт (1)); lcd1.setCursor (8, 1); lcd1.write (байт (0)); lcd1.setCursor (9, 0); lcd1.write (байт (1)); lcd1.setCursor (9, 1); lcd1.write (байт (0)); lcd1.setCursor (10, 0); lcd1.write (байт (1)); lcd1.setCursor (10, 1); lcd1.write (байт (0)); lcd1.setCursor (11, 0); lcd1.write (байт (1)); lcd1.setCursor (11, 1); lcd1.write (байт (0)); lcd1.setCursor (12, 0); lcd1.write (байт (1)); lcd1.setCursor (12, 1); lcd1.write (байт (0)); lcd1.setCursor (13, 0); lcd1.write (байт (1)); lcd1.setCursor (13, 1); lcd1.write (байт (0)); lcd1.setCursor (14, 0); lcd1.write (байт (1)); lcd1.setCursor (14, 1); lcd1.write (байт (0)); lcd1.setCursor (15, 0); lcd1.write (байт (2)); lcd1.setCursor (15, 1); lcd1.write (байт (2)); } жараксыз num0lcd2 () {lcd2.setCursor (0, 0); lcd2.write (байт (2)); // толук lcd2.setCursor (0, 1); lcd2.write (байт (2)); lcd2.setCursor (1, 1); lcd2.write (байт (0)); // жарым оң lcd2.setCursor (1, 0); lcd2.write (байт (1)); // жарым сол lcd2.setCursor (2, 1); lcd2.write (байт (0)); lcd2.setCursor (2, 0); lcd2.write (байт (1)); lcd2.setCursor (3, 1); lcd2.write (байт (0)); lcd2.setCursor (3, 0); lcd2.write (байт (1)); lcd2.setCursor (4, 1); lcd2.write (байт (0)); lcd2.setCursor (4, 0); lcd2.write (байт (1)); lcd2.setCursor (5, 1); lcd2.write (байт (0)); lcd2.setCursor (5, 0); lcd2.write (байт (1)); lcd2.setCursor (6, 1); lcd2.write (байт (0)); lcd2.setCursor (6, 0); lcd2.write (байт (1)); lcd2.setCursor (7, 1); lcd2.write (байт (0)); lcd2.setCursor (7, 0); lcd2.write (байт (1)); lcd2.setCursor (8, 1); lcd2.write (байт (0)); lcd2.setCursor (8, 0); lcd2.write (байт (1)); lcd2.setCursor (9, 1); lcd2.write (байт (0)); lcd2.setCursor (9, 0); lcd2.write (байт (1)); lcd2.setCursor (10, 1); lcd2.write (байт (0)); lcd2.setCursor (10, 0); lcd2.write (байт (1)); lcd2.setCursor (11, 1); lcd2.write (байт (0)); lcd2.setCursor (11, 0); lcd2.write (байт (1)); lcd2.setCursor (12, 1); lcd2.write (байт (0)); lcd2.setCursor (12, 0); lcd2.write (байт (1)); lcd2.setCursor (13, 1); lcd2.write (байт (0)); lcd2.setCursor (13, 0); lcd2.write (байт (1)); lcd2.setCursor (14, 1); lcd2.write (байт (0)); lcd2.setCursor (14, 0); lcd2.write (байт (1)); lcd2.setCursor (15, 1); lcd2.write (байт (2)); lcd2.setCursor (15, 0); lcd2.write (байт (2)); } жараксыз num1lcd2 () {lcd2.setCursor (0, 1); lcd2.write (байт (0)); lcd2.setCursor (1, 1); lcd2.write (байт (0)); lcd2.setCursor (2, 1); lcd2.write (байт (0)); lcd2.setCursor (3, 1); lcd2.write (байт (0)); lcd2.setCursor (4, 1); lcd2.write (байт (0)); lcd2.setCursor (5, 1); lcd2.write (байт (0)); lcd2.setCursor (6, 1); lcd2.write (байт (0)); lcd2.setCursor (7, 1); lcd2.write (байт (0)); lcd2.setCursor (8, 1); lcd2.write (байт (0)); lcd2.setCursor (9, 1); lcd2.write (байт (0)); lcd2.setCursor (10, 1); lcd2.write (байт (0)); lcd2.setCursor (11, 1); lcd2.write (байт (0)); lcd2.setCursor (12, 1); lcd2.write (байт (0)); lcd2.setCursor (13, 1); lcd2.write (байт (0)); lcd2.setCursor (14, 1); lcd2.write (байт (0)); lcd2.setCursor (15, 1); lcd2.write (байт (0)); } жараксыз num2lcd2 () {lcd2.setCursor (0, 0); lcd2.write (байт (2)); // толук lcd2.setCursor (0, 1); lcd2.write (байт (2)); lcd2.setCursor (1, 0); lcd2.write (байт (1)); // жарым сол lcd2.setCursor (2, 0); lcd2.write (байт (1)); lcd2.setCursor (3, 0); lcd2.write (байт (1)); lcd2.setCursor (4, 0); lcd2.write (байт (1)); lcd2.setCursor (5, 0); lcd2.write (байт (1)); lcd2.setCursor (6, 0); lcd2.write (байт (1)); lcd2.setCursor (7, 1); lcd2.write (байт (2)); lcd2.setCursor (7, 0); lcd2.write (байт (2)); lcd2.setCursor (8, 1); lcd2.write (байт (0)); lcd2.setCursor (9, 1); lcd2.write (байт (0)); lcd2.setCursor (10, 1); lcd2.write (байт (0)); lcd2.setCursor (11, 1); lcd2.write (байт (0)); lcd2.setCursor (12, 1); lcd2.write (байт (0)); lcd2.setCursor (13, 1); lcd2.write (байт (0)); lcd2.setCursor (14, 1); lcd2.write (байт (0)); lcd2.setCursor (15, 1); lcd2.write (байт (2)); lcd2.setCursor (15, 0); lcd2.write (байт (2)); } жараксыз num3lcd2 () {lcd2.setCursor (0, 0); lcd2.write (байт (2)); // толук lcd2.setCursor (0, 1); lcd2.write (байт (2)); lcd2.setCursor (1, 1); lcd2.write (байт (0)); // жарым оң lcd2.setCursor (2, 1); lcd2.write (байт (0)); lcd2.setCursor (3, 1); lcd2.write (байт (0)); lcd2.setCursor (4, 1); lcd2.write (байт (0)); lcd2.setCursor (5, 1); lcd2.write (байт (0)); lcd2.setCursor (6, 1); lcd2.write (байт (0)); lcd2.setCursor (7, 1); lcd2.write (байт (2)); lcd2.setCursor (7, 0); lcd2.write (байт (2)); lcd2.setCursor (8, 1); lcd2.write (байт (0)); lcd2.setCursor (9, 1); lcd2.write (байт (0)); lcd2.setCursor (10, 1); lcd2.write (байт (0)); lcd2.setCursor (11, 1); lcd2.write (байт (0)); lcd2.setCursor (12, 1); lcd2.write (байт (0)); lcd2.setCursor (13, 1); lcd2.write (байт (0)); lcd2.setCursor (14, 1); lcd2.write (байт (0)); lcd2.setCursor (15, 1); lcd2.write (байт (2)); lcd2.setCursor (15, 0); lcd2.write (байт (2)); } жараксыз num4lcd2 () {lcd2.setCursor (0, 1); lcd2.write (байт (0)); lcd2.setCursor (1, 1); lcd2.write (байт (0)); lcd2.setCursor (2, 1); lcd2.write (байт (0)); lcd2.setCursor (3, 1); lcd2.write (байт (0)); lcd2.setCursor (4, 1); lcd2.write (байт (0)); lcd2.setCursor (5, 1); lcd2.write (байт (0)); lcd2.setCursor (6, 1); lcd2.write (байт (0)); lcd2.setCursor (7, 1); lcd2.write (байт (2)); lcd2.setCursor (7, 0); lcd2.write (байт (2)); lcd2.setCursor (8, 0); lcd2.write (байт (1)); lcd2.setCursor (8, 1); lcd2.write (байт (0)); lcd2.setCursor (9, 0); lcd2.write (байт (1)); lcd2.setCursor (9, 1); lcd2.write (байт (0)); lcd2.setCursor (10, 0); lcd2.write (байт (1)); lcd2.setCursor (10, 1); lcd2.write (байт (0)); lcd2.setCursor (11, 0); lcd2.write (байт (1)); lcd2.setCursor (11, 1); lcd2.write (байт (0)); lcd2.setCursor (12, 0); lcd2.write (байт (1)); lcd2.setCursor (12, 1); lcd2.write (байт (0)); lcd2.setCursor (13, 0); lcd2.write (байт (1)); lcd2.setCursor (13, 1); lcd2.write (байт (0)); lcd2.setCursor (14, 0); lcd2.write (байт (1)); lcd2.setCursor (14, 1); lcd2.write (байт (0)); lcd2.setCursor (15, 0); lcd2.write (байт (1)); lcd2.setCursor (15, 1); lcd2.write (байт (0)); } жараксыз num5lcd2 () {lcd2.setCursor (0, 0); lcd2.write (байт (2)); // толук lcd2.setCursor (0, 1); lcd2.write (байт (2)); lcd2.setCursor (1, 1); lcd2.write (байт (0)); // жарым оң lcd2.setCursor (2, 1); lcd2.write (байт (0)); lcd2.setCursor (3, 1); lcd2.write (байт (0)); lcd2.setCursor (4, 1); lcd2.write (байт (0)); lcd2.setCursor (5, 1); lcd2.write (байт (0)); lcd2.setCursor (6, 1); lcd2.write (байт (0)); lcd2.setCursor (7, 1); lcd2.write (байт (2)); lcd2.setCursor (7, 0); lcd2.write (байт (2)); lcd2.setCursor (8, 0); lcd2.write (байт (1)); lcd2.setCursor (9, 0); lcd2.write (байт (1)); lcd2.setCursor (10, 0); lcd2.write (байт (1)); lcd2.setCursor (11, 0); lcd2.write (байт (1)); lcd2.setCursor (12, 0); lcd2.write (байт (1)); lcd2.setCursor (13, 0); lcd2.write (байт (1)); lcd2.setCursor (14, 0); lcd2.write (байт (1)); lcd2.setCursor (15, 1); lcd2.write (байт (2)); lcd2.setCursor (15, 0); lcd2.write (байт (2)); }
4 -кадам: Иштөө жана аяктоо
Ардуинону компьютерге туташтырып, иштөөсүнө уруксат бериңиз. Саатыңыз иштейт деп ишенем. Ал иштеп жатат, бирок ушунчалык башаламан окшойт. Ушунчалык көп резистор жана зымдар жакшы эмес. Ошентип, бардык компоненттерди коробкага салыңыз жана ЖКнын боёгу үчүн бир тешикти кесип, Санариптик сааттын көрүнүшүн бериңиз.
Мен аны реалдуу түрдө жараткан жокмун, бирок аны AUTODESK CIRCUITS менен иштеп чыккам. Мен аны реалдуу түрдө иштеп чыгып, видеону жарыя кылам. Мен эне тилинде сүйлөгөн эмесмин. Эгерде кандайдыр бир ката кетирсеңиз, мага жеке кат аркылуу кабарлаңыз. Жана бул ката үчүн кечирим сурайм. Мен дагы "Дандын ардуино саатынан" бир идея алдым. Дагы бир насаатчы менен таанышам.
Сунушталууда:
Укмуш аналогдук синтезатор/орган дискреттик компоненттерди колдонуу менен: 10 кадам (сүрөттөр менен)
Укмуш аналогдук синтезатор/Орган гана дискреттик компоненттерди колдонуу менен: Аналогдук синтезаторлор абдан сонун, бирок жасалышы да абдан кыйын, ошондуктан мен аны жөнөкөй эле кылып жасагым келди, андыктан анын иштеши оңой эле түшүнүктүү болушу мүмкүн. бир нече негизги чакан схемаларга муктаж: резисти бар жөнөкөй осциллятор
Укмуш чырак: 5 кадам (сүрөттөр менен)
ЭҢ СҮЙҮКТҮҮ ЛАМП: Түстөр менен эмоциялар ажырагыс. Түстөр маанай атмосферасын түзүүдө абдан маанилүү роль ойнойт. Бул бизди кубантууга же кайгыртууга, көңүлүбүздү чөгөрүүгө же эс алдырууга, көңүлүбүздү бурууга же алагды кылышыбыз мүмкүн. Күнүңүздү жагымдуу кылуу үчүн туура түстү коюу гана жетиштүү
Укмуш мектеп шпион гаджети! Invisible Ink Pen Hack: 6 кадам
Укмуш мектеп шпион гаджети! Invisible Ink Pen Hack: Бул укмуштуу хак менен сиз кимдир бирөөгө жашыруун билдирүүлөрдү жөнөтө аласыз же класс тесттеринде алдайсыз
Укмуш долбоор дубал сааты менен: 11 кадам
Укмуш долбоор дубал сааты менен: Салам достор, Бул блог бул блогдо эң сонун болот, мен эски дубалдын саатын колдонуп укмуштуудай LED эффект схемасын жасайм
Gixie Сааты: Эң сонун Glow Tube Сааты: 4 кадам
Gixie Сааты: Эң сонун Glow Tube Сааты: Мага Nixie Tube абдан жагат, бирок ал өтө кымбат, мен аны көтөрө албайм. Ошентип, мен бул Gixie Саатын түзүүгө жарым жыл сарптадым. Gixie Сааты акрил жарыгын жасоо үчүн ws2812 жарыктандыруу аркылуу ишке ашат