Spisu treści:
- Krok 1: Zbieranie materiałów
- Krok 2: Okablowanie wszystkich komponentów
- Krok 3: Programowanie
- Krok 4: Praca i wykończenie dotyku
Wideo: Niesamowity zegar Arduino: 4 kroki
2024 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2024-01-30 11:30
Widzieliśmy wiele projektów z arduino. Ale teraz pokażę, jak zbudować zegarek z arduino i wyświetlaczem 2 LCD. To proste, ale całkowicie zabawne. Każdy może tego spróbować. Więc przygotuj się !!!
Krok 1: Zbieranie materiałów
Jeśli chcesz to zrobić, będziesz potrzebować kilku przedmiotów. Te przedmioty możesz łatwo kupić w najbliższym sklepie.
Czego będziesz potrzebować:
- Arduino UNO R3Neo
- Pierścień pikselowy 24
- Deska do chleba
- LCD 16x2
- Rezystor 100 Ohm (2)
- Rezystor 120 Ohm (2)
- Rezystor 10 kiloomów (2)
- Naciśnij przycisk
Schemat tych rzeczy pokazano powyżej. Możesz użyć dowolnej deski do chleba. Potrzebujesz 6 Rezystorów ich wartości są wypisane powyżej na liście. Do połączenia potrzebne będą również przewody. Te wyświetlacze LCD będą wyświetlane. Sposób okablowania obwodu można zobaczyć w następnym kroku.
Krok 2: Okablowanie wszystkich komponentów
Rzeczy, których będziesz potrzebować. Pokazałem w poprzednim kroku, więc weź ze sobą obwód drutu płyty chlebowej.
Kroki okablowania:
- Umieść rezystor 100 Ohm na górnej stronie płytki do krojenia chleba na linii ujemnej.
- Umieść rezystor 120 Ohm na górnej stronie płytki do krojenia chleba na linii dodatniej.
- Umieść przycisk (schemat pokazano powyżej)
- Umieść rezystor 10 K Ohm pod przyciskiem
- Podłącz rezystory 100 Ohm (obydwa) do wyświetlacza LCD z katodą LED
- Podłącz rezystory 120 Ohm (oba) do wyświetlacza LCD z „Anodą LED”
- Podłącz ujemny zacisk płytki chlebowej z górnej linii do „odczytu/zapisu”.
- Podłącz ujemny zacisk płytki chlebowej od górnej linii do „Kontrast”.
- Podłącz dodatni zacisk płytki chlebowej od dolnej linii do „Vcc”.
- Podłącz kolejny ujemny zacisk płyty chlebowej od górnej linii płyty chlebowej do „GND”.
- Zrób to samo na drugim wyświetlaczu LCD, połącz wszystko tak jak poprzednio.
- Podłącz pozostałe rezystory do ujemnej linii płytki chlebowej.
- Podłącz przyciski do linii dodatniej.
- Podłącz dodatni i ujemny zacisk płytki chlebowej do „Neo Pixel Ring 24”.
Teraz połączyłeś wszystkie komponenty. Ale arduino wciąż pozostaje. Schemat tego pokazany powyżej.
Kroki okablowania arduino do wszystkich komponentów:
- Podłącz przyciski (Terminal22) do A0 i A1 arduino.
- Podłącz GND do ujemnego zacisku płyty chlebowej.
- Podłącz 5V do dodatniego zacisku płyty chlebowej.
- Podłącz D13 arduino do "Power of" "Neo Pixel Ring 24"
- Podłącz D7 arduino do "Register Select" LCD1.
- Podłącz D8 arduino do "Enable" LCD 2.
- Podłącz D9 arduino do "DB4" LCD 2.
- Podłącz D10 arduino do "DB5" LCD 2.
- Podłącz D11 arduino do "DB6" LCD 2.
- Podłącz D12 arduino do "DB7" LCD 2.
- Podłącz D1 arduino do "Register Select" LCD 1.
- Podłącz D2 arduino do "Enable" LCD 1.
- Podłącz D3 arduino do "DB4" LCD 2.
- Podłącz D4 arduino do "DB5" LCD 2.
- Podłącz D5 arduino do "DB6" LCD 2.
- Podłącz D6 arduino do "DB7" LCD 2.
Schemat wszystkich elementów po okablowaniu pokazano powyżej.
Krok 3: Programowanie
Ukończyłeś obwód. Ale to nie zadziała, dopóki nie zaprogramujesz go dla tego projektu. Jeśli jesteś ekspertem i masz doświadczenie, z łatwością go zaprogramujesz. Mam nadzieję, że znasz oprogramowanie, które służy do tego celu. Zaprogramuj go odpowiednio, jeśli chcesz wprowadzić zmianę w programowaniu, możesz, ale pamiętaj, że musi być poprawna. W przeciwnym razie to nie zadziała. Jeśli nie możesz go zaprogramować, możesz go skopiować stąd lub pobrać z innego źródła.
#włączać
// Lewy wyświetlacz LCD LiquidCrystal lcd1(7, 8, 9, 10, 11, 12);// Prawy wyświetlacz LCD LiquidCrystal lcd2(1, 2, 3, 4, 5, 6);#include #ifdef _AVR_ #include #endif/ / NeoPixel Ring 24 #define PIN 13#define NUMPIXELS 24Adafruit_NeoPixel pikseli = Adafruit_NeoPixel(NUMPIXELS, PIN, NEO_GRB + NEO_KHZ800);int delayval = 50;long previousMillis = 0; długi interwał = 950; int sekund = 0; int godzina = 0;int godzinaButtonState = 0; int minButtonState = 0;byte full[8] = { B11111, B11111, B11111, B11111, B11111, B11111, B11111, B11111, };byte halfL[8] = { B11111, B11111, B11111, B11111, B00000, B00000, B00000, B00000, };byte halfR[8] = { B00000, B00000, B00000, B00000, B11111, B11111, B11111, B11111, };// procedura konfiguracji uruchamia się raz po naciśnięciu przycisku reset: void setup() { // set pinMode przycisku pinMode(14, INPUT); // ustaw minuty pinMode(15, INPUT); // ustaw godzinę // utwórz własne znaki lcd1.createChar(0, halfR); lcd1.createChar(1, halfL); lcd1.createChar(2, pełny); lcd2.createChar(0, halfR); lcd2.createChar(1, półL); lcd2.createChar(2, pełny); // ustaw rozmiar LCD1 lcd1.begin(16, 2); // ustaw rozmiar LCD2 lcd2.begin(16, 2); // pierścień pikseli piksele.begin(); // konfiguracja początkowa lcd1.clear(); num0lcd1(); lcd2.clear(); num0lcd2(); //pixels.setPixelColor(17, piksele. Color(0, 150, 0)); //pixels.setPixelColor(18, piksele. Color(0, 150, 0)); piksele.pokaż(); }// procedura pętli działa w kółko w nieskończoność: void loop() { hourButtonState = digitalRead(15); minButtonState = digitalRead(14); if (hourButtonState == HIGH) { godzina++; uruchomZegar (); } if (minButtonState == HIGH) { sekund++; uruchomZegar (); } unsigned long currentMillis = millis(); if (bieżącyMillis - poprzedniMillis > interwał) { if (sekundy == 59) { sekundy = 0; if (godzina == 11) { godzina = 0; } inny { godzina ++; } } else { sekund ++; } poprzedniMillis = aktualnyMillis; uruchomZegar (); } opóźnienie(10); } void runClock () { if (sekundy == 0) { lcd1.clear(); num0lcd1(); lcd2.clear(); num0lcd2(); } if (sekundy == 1 || sekundy == 11 || sekundy == 21 || sekundy == 31 || sekundy == 41 || sekundy == 51) { lcd1.clear(); num1lcd1(); } if (sekundy == 2 || sekundy == 12 || sekundy == 22 || sekundy == 32 || sekundy == 42 || sekundy == 52) { lcd1.clear(); num2lcd1(); } if (sekundy == 3 || sekundy == 13 || sekundy == 23 || sekundy == 33 || sekundy == 43 || sekundy == 53) { lcd1.clear(); num3lcd1(); } if (sekundy == 4 || sekundy == 14 || sekundy == 24 || sekundy == 34 || sekundy == 44 || sekundy == 54) { lcd1.clear(); num4lcd1(); } if (sekundy == 5 || sekundy == 15 || sekundy == 25 || sekundy == 35 || sekundy == 45 || sekundy == 55) { lcd1.clear(); num5lcd1(); } if (sekundy == 6 || sekundy == 16 || sekundy == 26 || sekundy == 36 || sekundy == 46 || sekundy == 56) { lcd1.clear(); num6lcd1(); } if (sekundy == 7 || sekundy == 17 || sekundy == 27 || sekundy == 37 || sekundy == 47 || sekundy == 57) { lcd1.clear(); num7lcd1(); } if (sekundy == 8 || sekundy == 18 || sekundy == 28 || sekundy == 38 || sekundy == 48 || sekundy == 58) { lcd1.clear(); num8lcd1(); } if (sekundy == 9 || sekundy == 19 || sekundy == 29 || sekundy == 39 || sekundy == 49 || sekundy == 59) { lcd1.clear(); num9lcd1(); } if (sekundy == 10) { lcd1.clear(); num0lcd1(); lcd2.clear(); num1lcd2(); } if (sekundy == 20) { lcd1.clear(); num0lcd1(); lcd2.clear(); num2lcd2(); } if (sekundy == 30) { lcd1.clear(); num0lcd1(); lcd2.clear(); num3lcd2(); } if (sekundy == 40) { lcd1.clear(); num0lcd1(); lcd2.clear(); num4lcd2(); } if (sekundy == 50) { lcd1.clear(); num0lcd1(); lcd2.clear(); num5lcd2(); } if (godzina == 0) { piksele.setPixelColor(15, piksele. Color(0, 0, 0)); piksele.setPixelColor(16, piksele. Color(0, 0, 0)); piksele.setPixelColor(17, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(18, piksele. Kolor (0, 150, 0)); piksele.pokaż(); } if (hour == 1) { piksele.setPixelColor(17, piksele. Color(0, 0, 0)); piksele.setPixelColor(18, piksele. Kolor(0, 0, 0)); piksele.setPixelColor(19, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(20, piksele. Kolor (0, 150, 0)); piksele.pokaż(); } if (godzina == 2) { piksele.setPixelColor(19, piksele. Color(0, 0, 0)); piksele.setPixelColor(20, piksele. Color(0, 0, 0)); piksele.setPixelColor(21, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(22, piksele. Kolor (0, 150, 0)); piksele.pokaż(); } if (hour == 3) { piksele.setPixelColor(21, piksele. Color(0, 0, 0)); piksele.setPixelColor(22, piksele. Color(0, 0, 0)); piksele.setPixelColor(23, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(0, piksele. Color(0, 150, 0)); piksele.pokaż(); } if (godzina == 4) { piksele.setPixelColor(23, piksele. Color(0, 0, 0)); piksele.setPixelColor(0, piksele. Color(0, 0, 0)); piksele.setPixelColor(1, piksele. Color(0, 150, 0)); piksele.setPixelColor(2, piksele. Color(0, 150, 0)); piksele.pokaż(); } if (godzina == 5) { piksele.setPixelColor(1, piksele. Color(0, 0, 0)); piksele.setPixelColor(2, piksele. Color(0, 0, 0)); piksele.setPixelColor(3, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(4, piksele. Color(0, 150, 0)); piksele.pokaż(); } if (godzina == 6) { piksele.setPixelColor(3, piksele. Color(0, 0, 0)); piksele.setPixelColor(4, piksele. Color(0, 0, 0)); piksele.setPixelColor(5, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(6, piksele. Color(0, 150, 0)); piksele.pokaż(); } if (godzina == 7) { piksele.setPixelColor(5, piksele. Color(0, 0, 0)); piksele.setPixelColor(6, piksele. Color(0, 0, 0)); piksele.setPixelColor(7, piksele. Color(0, 150, 0)); piksele.setPixelColor(8, piksele. Kolor (0, 150, 0)); piksele.pokaż(); } if (godzina == 8) { piksele.setPixelColor(7, piksele. Color(0, 0, 0)); piksele.setPixelColor(8, piksele. Color(0, 0, 0)); piksele.setPixelColor(9, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(10, piksele. Kolor (0, 150, 0)); piksele.pokaż(); } if (godzina == 9) { piksele.setPixelColor(9, piksele. Color(0, 0, 0)); piksele.setPixelColor(10, piksele. Color(0, 0, 0)); piksele.setPixelColor(11, piksele. Kolor (0, 150, 0)); piksele.setPixelColor(12, piksele. Kolor (0, 150, 0)); piksele.pokaż(); } if (godzina == 10) { piksele.setPixelColor(11, piksele. Color(0, 0, 0)); piksele.setPixelColor(12, piksele. Color(0, 0, 0)); piksele.setPixelColor(13, piksele. Kolor(0, 150, 0)); piksele.setPixelColor(14, piksele. Color(0, 150, 0)); piksele.pokaż(); } if (godzina == 11) { piksele.setPixelColor(13, piksele. Color(0, 0, 0)); piksele.setPixelColor(14, piksele. Color(0, 0, 0)); piksele.setPixelColor(15, piksele. Color(0, 150, 0)); piksele.setPixelColor(16, piksele. Kolor (0, 150, 0)); piksele.pokaż(); } } nieważne num0lcd1 () { lcd1.setCursor (0, 0); lcd1.write(bajt(2)); // pełny lcd1.setCursor(0, 1); lcd1.write(bajt(2)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); // połowa w prawo lcd1.setCursor(1, 0); lcd1.write(bajt(1)); // połowa w lewo lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(2, 0); lcd1.write(bajt(1)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 0); lcd1.write(bajt(1)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 0); lcd1.write(bajt(1)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 0); lcd1.write(bajt(1)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 0); lcd1.write(bajt(1)); lcd1.setCursor(7, 1); lcd1.write(bajt(0)); lcd1.setCursor(7, 0); lcd1.write(bajt(1)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(8, 0); lcd1.write(bajt(1)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 0); lcd1.write(bajt(1)); lcd1.setCursor(10, 1); lcd1.write(bajt(0)); lcd1.setCursor(10, 0); lcd1.write(bajt(1)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(11, 0); lcd1.write(bajt(1)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 0); lcd1.write(bajt(1)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 0); lcd1.write(bajt(1)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 0); lcd1.write(bajt(1)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); } nieważne num1lcd1 () { lcd1.setCursor (0, 1); lcd1.write(bajt(0)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(7, 1); lcd1.write(bajt(0)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setCursor(10, 1); lcd1.write(bajt(0)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(15, 1); lcd1.write(bajt(0)); } nieważne num2lcd1 () { lcd1.setCursor (0, 0); lcd1.write(bajt(2)); // pełny lcd1.setCursor(0, 1); lcd1.write(bajt(2)); lcd1.setCursor(1, 0); lcd1.write(bajt(1)); // połowa w lewo lcd1.setCursor(2, 0); lcd1.write(bajt(1)); lcd1.setCursor(3, 0); lcd1.write(bajt(1)); lcd1.setCursor(4, 0); lcd1.write(bajt(1)); lcd1.setCursor(5, 0); lcd1.write(bajt(1)); lcd1.setCursor(6, 0); lcd1.write(bajt(1)); lcd1.setCursor(7, 1); lcd1.write(bajt(2)); lcd1.setCursor(7, 0); lcd1.write(bajt(2)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setCursor(10, 1); lcd1.write(bajt(0)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); } nieważne num3lcd1 () { lcd1.setCursor (0, 0); lcd1.write(bajt(2)); // pełny lcd1.setCursor(0, 1); lcd1.write(bajt(2)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); // połowa w prawo lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(7, 1); lcd1.write(bajt(2)); lcd1.setCursor(7, 0); lcd1.write(bajt(2)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setCursor(10, 1); lcd1.write(bajt(0)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); } nieważne num4lcd1 () { lcd1.setCursor (0, 1); lcd1.write(bajt(0)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(7, 1); lcd1.write(bajt(2)); lcd1.setCursor(7, 0); lcd1.write(bajt(2)); lcd1.setCursor(8, 0); lcd1.write(bajt(1)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 0); lcd1.write(bajt(1)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setCursor(10, 0); lcd1.write(bajt(1)); lcd1.setCursor(10, 1); lcd1.write(bajt(0)); lcd1.setCursor(11, 0); lcd1.write(bajt(1)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 0); lcd1.write(bajt(1)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 0); lcd1.write(bajt(1)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 0); lcd1.write(bajt(1)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(15, 0); lcd1.write(bajt(1)); lcd1.setCursor(15, 1); lcd1.write(bajt(0)); } nieważne num5lcd1 () { lcd1.setCursor (0, 0); lcd1.write(bajt(2)); // pełny lcd1.setCursor(0, 1); lcd1.write(bajt(2)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); // połowa w prawo lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(7, 1); lcd1.write(bajt(2)); lcd1.setCursor(7, 0); lcd1.write(bajt(2)); lcd1.setCursor(8, 0); lcd1.write(bajt(1)); lcd1.setCursor(9, 0); lcd1.write(bajt(1)); lcd1.setCursor(10, 0); lcd1.write(bajt(1)); lcd1.setCursor(11, 0); lcd1.write(bajt(1)); lcd1.setCursor(12, 0); lcd1.write(bajt(1)); lcd1.setCursor(13, 0); lcd1.write(bajt(1)); lcd1.setCursor(14, 0); lcd1.write(bajt(1)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); } nieważne num6lcd1 () { lcd1.setCursor (0, 0); lcd1.write(bajt(2)); // pełny lcd1.setCursor(0, 1); lcd1.write(bajt(2)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); // połowa w prawo lcd1.setCursor(1, 0); lcd1.write(bajt(1)); // połowa w lewo lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(2, 0); lcd1.write(bajt(1)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 0); lcd1.write(bajt(1)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 0); lcd1.write(bajt(1)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 0); lcd1.write(bajt(1)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 0); lcd1.write(bajt(1)); lcd1.setCursor(7, 1); lcd1.write(bajt(2)); lcd1.setCursor(7, 0); lcd1.write(bajt(2)); lcd1.setCursor(8, 0); lcd1.write(bajt(1)); lcd1.setCursor(9, 0); lcd1.write(bajt(1)); lcd1.setCursor(10, 0); lcd1.write(bajt(1)); lcd1.setCursor(11, 0); lcd1.write(bajt(1)); lcd1.setCursor(12, 0); lcd1.write(bajt(1)); lcd1.setCursor(13, 0); lcd1.write(bajt(1)); lcd1.setCursor(14, 0); lcd1.write(bajt(1)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); } nieważne num7lcd1 () { lcd1.setCursor (0, 1); lcd1.write(bajt(0)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(7, 1); lcd1.write(bajt(0)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setKursor(10,1); lcd1.write(bajt(0)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); } nieważne num8lcd1 () { lcd1.setCursor (0, 0); lcd1.write(bajt(2)); // pełny lcd1.setCursor(0, 1); lcd1.write(bajt(2)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); // połowa w prawo lcd1.setCursor(1, 0); lcd1.write(bajt(1)); // połowa w lewo lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(2, 0); lcd1.write(bajt(1)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 0); lcd1.write(bajt(1)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 0); lcd1.write(bajt(1)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 0); lcd1.write(bajt(1)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 0); lcd1.write(bajt(1)); lcd1.setCursor(7, 1); lcd1.write(bajt(2)); lcd1.setCursor(7, 0); lcd1.write(bajt(2)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(8, 0); lcd1.write(bajt(1)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 0); lcd1.write(bajt(1)); lcd1.setCursor(10, 1); lcd1.write(bajt(0)); lcd1.setCursor(10, 0); lcd1.write(bajt(1)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(11, 0); lcd1.write(bajt(1)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 0); lcd1.write(bajt(1)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 0); lcd1.write(bajt(1)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 0); lcd1.write(bajt(1)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); } nieważne num9lcd1 () { lcd1.setCursor (0, 0); lcd1.write(bajt(2)); lcd1.setCursor(0, 1); lcd1.write(bajt(2)); lcd1.setCursor(1, 1); lcd1.write(bajt(0)); lcd1.setCursor(2, 1); lcd1.write(bajt(0)); lcd1.setCursor(3, 1); lcd1.write(bajt(0)); lcd1.setCursor(4, 1); lcd1.write(bajt(0)); lcd1.setCursor(5, 1); lcd1.write(bajt(0)); lcd1.setCursor(6, 1); lcd1.write(bajt(0)); lcd1.setCursor(7, 1); lcd1.write(bajt(2)); lcd1.setCursor(7, 0); lcd1.write(bajt(2)); lcd1.setCursor(8, 0); lcd1.write(bajt(1)); lcd1.setCursor(8, 1); lcd1.write(bajt(0)); lcd1.setCursor(9, 0); lcd1.write(bajt(1)); lcd1.setCursor(9, 1); lcd1.write(bajt(0)); lcd1.setCursor(10, 0); lcd1.write(bajt(1)); lcd1.setCursor(10, 1); lcd1.write(bajt(0)); lcd1.setCursor(11, 0); lcd1.write(bajt(1)); lcd1.setCursor(11, 1); lcd1.write(bajt(0)); lcd1.setCursor(12, 0); lcd1.write(bajt(1)); lcd1.setCursor(12, 1); lcd1.write(bajt(0)); lcd1.setCursor(13, 0); lcd1.write(bajt(1)); lcd1.setCursor(13, 1); lcd1.write(bajt(0)); lcd1.setCursor(14, 0); lcd1.write(bajt(1)); lcd1.setCursor(14, 1); lcd1.write(bajt(0)); lcd1.setCursor(15, 0); lcd1.write(bajt(2)); lcd1.setCursor(15, 1); lcd1.write(bajt(2)); } nieważne num0lcd2 () { lcd2.setCursor(0, 0); lcd2.write(bajt(2)); // pełny lcd2.setCursor(0, 1); lcd2.write(bajt(2)); lcd2.setCursor(1, 1); lcd2.write(bajt(0)); // połowa w prawo lcd2.setCursor(1, 0); lcd2.write(bajt(1)); // połowa w lewo lcd2.setCursor(2, 1); lcd2.write(bajt(0)); lcd2.setCursor(2, 0); lcd2.write(bajt(1)); lcd2.setCursor(3, 1); lcd2.write(bajt(0)); lcd2.setCursor(3, 0); lcd2.write(bajt(1)); lcd2.setCursor(4, 1); lcd2.write(bajt(0)); lcd2.setCursor(4, 0); lcd2.write(bajt(1)); lcd2.setCursor(5, 1); lcd2.write(bajt(0)); lcd2.setCursor(5, 0); lcd2.write(bajt(1)); lcd2.setCursor(6, 1); lcd2.write(bajt(0)); lcd2.setCursor(6, 0); lcd2.write(bajt(1)); lcd2.setCursor(7, 1); lcd2.write(bajt(0)); lcd2.setCursor(7, 0); lcd2.write(bajt(1)); lcd2.setCursor(8, 1); lcd2.write(bajt(0)); lcd2.setCursor(8, 0); lcd2.write(bajt(1)); lcd2.setCursor(9, 1); lcd2.write(bajt(0)); lcd2.setCursor(9, 0); lcd2.write(bajt(1)); lcd2.setCursor(10, 1); lcd2.write(bajt(0)); lcd2.setCursor(10, 0); lcd2.write(bajt(1)); lcd2.setCursor(11, 1); lcd2.write(bajt(0)); lcd2.setCursor(11, 0); lcd2.write(bajt(1)); lcd2.setCursor(12, 1); lcd2.write(bajt(0)); lcd2.setCursor(12, 0); lcd2.write(bajt(1)); lcd2.setCursor(13, 1); lcd2.write(bajt(0)); lcd2.setCursor(13, 0); lcd2.write(bajt(1)); lcd2.setCursor(14, 1); lcd2.write(bajt(0)); lcd2.setCursor(14, 0); lcd2.write(bajt(1)); lcd2.setCursor(15, 1); lcd2.write(bajt(2)); lcd2.setCursor(15, 0); lcd2.write(bajt(2)); } nieważne num1lcd2 () { lcd2.setCursor (0, 1); lcd2.write(bajt(0)); lcd2.setCursor(1, 1); lcd2.write(bajt(0)); lcd2.setCursor(2, 1); lcd2.write(bajt(0)); lcd2.setCursor(3, 1); lcd2.write(bajt(0)); lcd2.setCursor(4, 1); lcd2.write(bajt(0)); lcd2.setCursor(5, 1); lcd2.write(bajt(0)); lcd2.setCursor(6, 1); lcd2.write(bajt(0)); lcd2.setCursor(7, 1); lcd2.write(bajt(0)); lcd2.setCursor(8, 1); lcd2.write(bajt(0)); lcd2.setCursor(9, 1); lcd2.write(bajt(0)); lcd2.setCursor(10, 1); lcd2.write(bajt(0)); lcd2.setCursor(11, 1); lcd2.write(bajt(0)); lcd2.setCursor(12, 1); lcd2.write(bajt(0)); lcd2.setCursor(13, 1); lcd2.write(bajt(0)); lcd2.setCursor(14, 1); lcd2.write(bajt(0)); lcd2.setCursor(15, 1); lcd2.write(bajt(0)); } nieważne num2lcd2 () { lcd2.setCursor (0, 0); lcd2.write(bajt(2)); // pełny lcd2.setCursor(0, 1); lcd2.write(bajt(2)); lcd2.setCursor(1, 0); lcd2.write(bajt(1)); // połowa w lewo lcd2.setCursor(2, 0); lcd2.write(bajt(1)); lcd2.setCursor(3, 0); lcd2.write(bajt(1)); lcd2.setCursor(4, 0); lcd2.write(bajt(1)); lcd2.setCursor(5, 0); lcd2.write(bajt(1)); lcd2.setCursor(6, 0); lcd2.write(bajt(1)); lcd2.setCursor(7, 1); lcd2.write(bajt(2)); lcd2.setCursor(7, 0); lcd2.write(bajt(2)); lcd2.setCursor(8, 1); lcd2.write(bajt(0)); lcd2.setCursor(9, 1); lcd2.write(bajt(0)); lcd2.setCursor(10, 1); lcd2.write(bajt(0)); lcd2.setCursor(11, 1); lcd2.write(bajt(0)); lcd2.setCursor(12, 1); lcd2.write(bajt(0)); lcd2.setCursor(13, 1); lcd2.write(bajt(0)); lcd2.setCursor(14, 1); lcd2.write(bajt(0)); lcd2.setCursor(15, 1); lcd2.write(bajt(2)); lcd2.setCursor(15, 0); lcd2.write(bajt(2)); } nieważne num3lcd2 () { lcd2.setCursor(0, 0); lcd2.write(bajt(2)); // pełny lcd2.setCursor(0, 1); lcd2.write(bajt(2)); lcd2.setCursor(1, 1); lcd2.write(bajt(0)); // połowa w prawo lcd2.setCursor(2, 1); lcd2.write(bajt(0)); lcd2.setCursor(3, 1); lcd2.write(bajt(0)); lcd2.setCursor(4, 1); lcd2.write(bajt(0)); lcd2.setCursor(5, 1); lcd2.write(bajt(0)); lcd2.setCursor(6, 1); lcd2.write(bajt(0)); lcd2.setCursor(7, 1); lcd2.write(bajt(2)); lcd2.setCursor(7, 0); lcd2.write(bajt(2)); lcd2.setCursor(8, 1); lcd2.write(bajt(0)); lcd2.setCursor(9, 1); lcd2.write(bajt(0)); lcd2.setCursor(10, 1); lcd2.write(bajt(0)); lcd2.setCursor(11, 1); lcd2.write(bajt(0)); lcd2.setCursor(12, 1); lcd2.write(bajt(0)); lcd2.setCursor(13, 1); lcd2.write(bajt(0)); lcd2.setCursor(14, 1); lcd2.write(bajt(0)); lcd2.setCursor(15, 1); lcd2.write(bajt(2)); lcd2.setCursor(15, 0); lcd2.write(bajt(2)); } nieważne num4lcd2 () { lcd2.setCursor (0, 1); lcd2.write(bajt(0)); lcd2.setCursor(1, 1); lcd2.write(bajt(0)); lcd2.setCursor(2, 1); lcd2.write(bajt(0)); lcd2.setCursor(3, 1); lcd2.write(bajt(0)); lcd2.setCursor(4, 1); lcd2.write(bajt(0)); lcd2.setCursor(5, 1); lcd2.write(bajt(0)); lcd2.setCursor(6, 1); lcd2.write(bajt(0)); lcd2.setCursor(7, 1); lcd2.write(bajt(2)); lcd2.setCursor(7, 0); lcd2.write(bajt(2)); lcd2.setCursor(8, 0); lcd2.write(bajt(1)); lcd2.setCursor(8, 1); lcd2.write(bajt(0)); lcd2.setCursor(9, 0); lcd2.write(bajt(1)); lcd2.setCursor(9, 1); lcd2.write(bajt(0)); lcd2.setCursor(10, 0); lcd2.write(bajt(1)); lcd2.setCursor(10, 1); lcd2.write(bajt(0)); lcd2.setCursor(11, 0); lcd2.write(bajt(1)); lcd2.setCursor(11, 1); lcd2.write(bajt(0)); lcd2.setCursor(12, 0); lcd2.write(bajt(1)); lcd2.setCursor(12, 1); lcd2.write(bajt(0)); lcd2.setCursor(13, 0); lcd2.write(bajt(1)); lcd2.setCursor(13, 1); lcd2.write(bajt(0)); lcd2.setCursor(14, 0); lcd2.write(bajt(1)); lcd2.setCursor(14, 1); lcd2.write(bajt(0)); lcd2.setCursor(15, 0); lcd2.write(bajt(1)); lcd2.setCursor(15, 1); lcd2.write(bajt(0)); } nieważne num5lcd2 () { lcd2.setCursor (0, 0); lcd2.write(bajt(2)); // pełny lcd2.setCursor(0, 1); lcd2.write(bajt(2)); lcd2.setCursor(1, 1); lcd2.write(bajt(0)); // połowa w prawo lcd2.setCursor(2, 1); lcd2.write(bajt(0)); lcd2.setCursor(3, 1); lcd2.write(bajt(0)); lcd2.setCursor(4, 1); lcd2.write(bajt(0)); lcd2.setCursor(5, 1); lcd2.write(bajt(0)); lcd2.setCursor(6, 1); lcd2.write(bajt(0)); lcd2.setCursor(7, 1); lcd2.write(bajt(2)); lcd2.setCursor(7, 0); lcd2.write(bajt(2)); lcd2.setCursor(8, 0); lcd2.write(bajt(1)); lcd2.setCursor(9, 0); lcd2.write(bajt(1)); lcd2.setCursor(10, 0); lcd2.write(bajt(1)); lcd2.setCursor(11, 0); lcd2.write(bajt(1)); lcd2.setCursor(12, 0); lcd2.write(bajt(1)); lcd2.setCursor(13, 0); lcd2.write(bajt(1)); lcd2.setCursor(14, 0); lcd2.write(bajt(1)); lcd2.setCursor(15, 1); lcd2.write(bajt(2)); lcd2.setCursor(15, 0); lcd2.write(bajt(2)); }
Krok 4: Praca i wykończenie dotyku
Podłącz swoje arduino do komputera i pozwól mu działać. Mam nadzieję, że twój zegar będzie działał. Działa, ale wygląda tak niechlujnie. Tyle rezystorów i przewodów to nie jest dobre. Tak więc, umieść wszystkie elementy w pudełku i wytnij jeden otwór na LCD pomaluj pudełko i nadaj wygląd zegarowi cyfrowemu.
Nie stworzyłem go w rzeczywistości, ale zaprojektowałem go w OBWODACH AUTODESK. Zaprojektuję go w rzeczywistości i opublikuję film z pracy. Nie jestem native speakerem. Jeśli popełniłeś jakiś błąd poinformuj mnie w wiadomościach prywatnych. I przepraszam za ten błąd. Zaczerpnąłem też pomysł z „Zegara na arduino Dana”. Spotkajmy się z innym pouczającym.
Zalecana:
Jak zrobić zegar analogowy i zegar cyfrowy z paskiem LED za pomocą Arduino: 3 kroki
Jak zrobić zegar analogowy i zegar cyfrowy z paskiem LED za pomocą Arduino: Dzisiaj zrobimy zegar analogowy i amp; Zegar cyfrowy z paskiem Led i modułem MAX7219 Dot z Arduino. Koryguje czas z lokalną strefą czasową. Zegar analogowy może wykorzystywać dłuższą taśmę LED, dzięki czemu można go zawiesić na ścianie, aby stać się grafiką
ESP8266 Zegar sieciowy bez zegara RTC - Nodemcu NTP Zegar bez RTC - PROJEKT ZEGAR INTERNETOWY: 4 kroki
ESP8266 Zegar sieciowy bez zegara RTC | Nodemcu NTP Zegar bez RTC | PROJEKT ZEGARA INTERNETOWEGO: W projekcie będzie wykonywany projekt zegara bez RTC, będzie pobierał czas z internetu za pomocą wifi i wyświetli go na wyświetlaczu st7735
Zegar Gixie: najpiękniejszy zegar z lampą świecącą: 4 kroki
Zegar Gixie: Najpiękniejszy Zegar Glow Tube: Bardzo lubię Nixie Tube, ale jest za drogi, nie stać mnie na to. Więc spędziłem pół roku na tworzeniu tego Gixie Clock.Gixie Clock jest osiągany dzięki zastosowaniu oświetlenia ws2812 do akrylowego światła. Robię co w mojej mocy, aby rurka RGB była cieńsza
Zmień swój zwykły zegar w zegar atomowy: 3 kroki
Zmień swój zwykły zegar w zegar atomowy: Czy Twój zegar ścienny jest wolny, szybki, czy przesunięty o godzinę, ponieważ nadszedł czas letni? Zmień swój zegar na atomowy dzięki temu łatwemu zamiennikowi za 18 USD, który jest dostarczany na stronie klockit.com Czas jest odbierany z zegara atomowego w Kolorado i dostosowuje zegar do 5 tim
Zbuduj prawdziwy zegar uderzający w dzwon dla swojego komputera i zegar uderzający w gaśnicę.: 3 kroki (ze zdjęciami)
Zbuduj prawdziwy zegar uderzający w dzwon dla swojego komputera i zegar uderzający w gaśnicę.: mosiężny dzwonek, mały przekaźnik kilku innych rzeczy i prawdziwy dzwonek może wybijać godziny na twoim pulpicie. Chociaż ten projekt działa na Windows i Mac OS X też, postanowiłem zainstalować Ubuntu Linux na komputerze, który znalazłem w koszu i nad tym pracować: nigdy