Оглавление:
- Шаг 1: Сбор материалов
- Шаг 2: Подключение всех компонентов
- Шаг 3: программирование
- Шаг 4: Работа и завершающий штрих
Видео: Потрясающие часы Arduino: 4 шага
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
Мы видели много проектов с ардуино. Но теперь я собираюсь показать вам, как собрать часы с Arduino и двумя ЖК-дисплеями. Это просто, но очень весело. Каждый может попробовать. Итак, готовьтесь !!!
Шаг 1: Сбор материалов
Если вы хотите сделать это, вам понадобятся некоторые предметы. Эти предметы вы можете легко купить в ближайшем розничном магазине.
Что тебе понадобится:
- Ардуино UNO R3Neo
- Пиксельное кольцо 24
- Хлебная доска
- ЖК-дисплей 16x2
- Резистор 100 Ом (2)
- Резистор 120 Ом (2)
- Резистор 10 кОм (2)
- Нажать кнопку
Схема этих вещей показана выше. Вы можете использовать любую Хлебную доску. Вам нужно 6 резисторов, их номиналы указаны выше в списке. Также вам потребуются провода для подключения. Эти ЖК-дисплеи вы будете отображать. Способ подключения схемы вы можете увидеть на следующем шаге.
Шаг 2: Подключение всех компонентов
Вещи, которые вам понадобятся. Я показал на предыдущем шаге, так что возьмите с собой схему проводов на макетной плате.
Этапы подключения:
- Поместите резистор 100 Ом на верхнюю часть макета на отрицательной линии.
- Поместите резистор 120 Ом на верхнюю часть макетной платы на положительной линии.
- Поместите кнопку (схема показана выше)
- Поместите резистор 10 кОм под кнопку.
- Подключите резисторы 100 Ом (оба) к ЖК-дисплею со светодиодным катодом.
- Подключите резисторы 120 Ом (оба) к ЖК-дисплею со светодиодным анодом.
- Подключите отрицательную клемму макетной платы от верхней линии к «Чтению / записи».
- Подключите отрицательную клемму макета от верхней линии к «Contrast».
- Подключите положительный вывод макетной платы от нижней линии к «Vcc».
- Подключите другую отрицательную клемму макета от верхней линии макета к «GND».
- Сделайте то же самое на втором ЖК-дисплее, подключите все, как в предыдущем.
- Подключите оставшиеся резисторы к отрицательной линии макетной платы.
- Подключите кнопки к плюсовой линии.
- Подключите положительную и отрицательную клеммы макета к «Neo Pixel Ring 24».
Теперь вы подключили все компоненты. Но ардуино все еще остается. Схема этого показана выше.
Этапы подключения Arduino ко всем компонентам:
- Подключите кнопки (Терминал 22) к A0 и A1 Arduino.
- Подключите GND к отрицательной клемме макетной платы.
- Подключите 5 В к плюсовой клемме макетной платы.
- Подключите D13 Arduino к «Power of» «Neo Pixel Ring 24»
- Подключите D7 Arduino к «Register Select» LCD1.
- Подключите D8 Arduino к «Enable» LCD 2.
- Подключите D9 Arduino к «DB4» ЖК-дисплея 2.
- Подключите D10 Arduino к «DB5» ЖК-дисплея 2.
- Подключите D11 Arduino к «DB6» ЖК-дисплея 2.
- Подключите D12 Arduino к «DB7» ЖК-дисплея 2.
- Подключите D1 Arduino к «Выбор регистра» на ЖК-дисплее 1.
- Подключите D2 Arduino к «Enable» ЖК-дисплея 1.
- Подключите D3 Arduino к «DB4» ЖК-дисплея 2.
- Подключите D4 Arduino к «DB5» ЖК-дисплея 2.
- Подключите D5 Arduino к «DB6» ЖК-дисплея 2.
- Подключите D6 Arduino к «DB7» ЖК-дисплея 2.
Схема всех компонентов после подключения показана выше.
Шаг 3: программирование
Вы завершили цепь. Но это не сработает, пока вы не запрограммируете его для этого проекта. Если вы эксперт и у вас есть опыт, вы легко запрограммируете его. Надеюсь, вы знаете, какое программное обеспечение используется для этой цели. Запрограммируйте его соответствующим образом, если вы хотите внести изменения в программирование, вы можете, но помните, что оно должно быть правильным. Иначе не получится. Если вы не можете его запрограммировать, вы можете скопировать его отсюда или взять из другого источника.
#включают
// Левый ЖК-дисплей LiquidCrystal lcd1 (7, 8, 9, 10, 11, 12); // Правый ЖК-дисплей LiquidCrystal lcd2 (1, 2, 3, 4, 5, 6); # include #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; интервал секунд = 0; интервал час = 0; интервал часButtonState = 0; int minButtonState = 0; полный байт [8] = {B11111, B11111, B11111, B11111, B11111, B11111, B11111, B11111,}; половина байтаL [8] = {B11111, B11111, B11111, B11111, B00000, B00, B00000,}; byte halfR [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, половинаL); lcd1.createChar (2, полный); lcd2.createChar (0, половинаR); lcd2.createChar (1, половинаL); lcd2.createChar (2, полный); // устанавливаем размер LCD1 lcd1.begin (16, 2); // устанавливаем размер LCD2 lcd2.begin (16, 2); // пиксельное кольцо пикселей.begin (); // начальная настройка lcd1.clear (); num0lcd1 (); lcd2.clear (); num0lcd2 (); //pixels.setPixelColor(17, pixels. Color (0, 150, 0)); //pixels.setPixelColor(18, pixels. Color (0, 150, 0)); pixel.show (); } // процедура цикла выполняется снова и снова бесконечно: void loop () {hourButtonState = digitalRead (15); minButtonState = digitalRead (14); если (hourButtonState == HIGH) {час ++; runClock (); } если (minButtonState == HIGH) {секунды ++; runClock (); } беззнаковое длинное currentMillis = millis (); если (текущийМиллис - предыдущийМиллис> интервал) {если (секунд == 59) {секунд = 0; если (час == 11) {час = 0; } else {час ++; }} еще {секунды ++; } previousMillis = currentMillis; runClock (); } задержка (10); } void runClock () {если (секунд == 0) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num0lcd2 (); } if (секунды == 1 || секунды == 11 || секунды == 21 || секунды == 31 || секунды == 41 || секунды == 51) {lcd1.clear (); num1lcd1 (); } if (секунды == 2 || секунды == 12 || секунды == 22 || секунды == 32 || секунды == 42 || секунды == 52) {lcd1.clear (); num2lcd1 (); } if (секунды == 3 || секунды == 13 || секунды == 23 || секунды == 33 || секунды == 43 || секунды == 53) {lcd1.clear (); num3lcd1 (); } if (секунды == 4 || секунды == 14 || секунды == 24 || секунды == 34 || секунды == 44 || секунды == 54) {lcd1.clear (); num4lcd1 (); } if (секунд == 5 || секунд == 15 || секунд == 25 || секунд == 35 || секунд == 45 || секунд == 55) {lcd1.clear (); num5lcd1 (); } if (секунд == 6 || секунд == 16 || секунд == 26 || секунд == 36 || секунд == 46 || секунд == 56) {lcd1.clear (); num6lcd1 (); } if (секунд == 7 || секунд == 17 || секунд == 27 || секунд == 37 || секунд == 47 || секунд == 57) {lcd1.clear (); num7lcd1 (); } if (секунд == 8 || секунд == 18 || секунд == 28 || секунд == 38 || секунд == 48 || секунд == 58) {lcd1.clear (); num8lcd1 (); } if (секунд == 9 || секунд == 19 || секунд == 29 || секунд == 39 || секунд == 49 || секунд == 59) {lcd1.clear (); num9lcd1 (); } если (секунд == 10) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num1lcd2 (); } если (секунд == 20) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num2lcd2 (); } если (секунд == 30) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num3lcd2 (); } если (секунд == 40) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num4lcd2 (); } если (секунд == 50) {lcd1.clear (); num0lcd1 (); lcd2.clear (); num5lcd2 (); } если (час == 0) {пикселей.setPixelColor (15, пикселей. Color (0, 0, 0)); пикселей.setPixelColor (16, пикселей. Color (0, 0, 0)); pixel.setPixelColor (17, пикселей. Color (0, 150, 0)); pixel.setPixelColor (18, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 1) {пикселей.setPixelColor (17, пикселей. Color (0, 0, 0)); pixel.setPixelColor (18, пикселей. Color (0, 0, 0)); pixel.setPixelColor (19, пикселей. Color (0, 150, 0)); pixel.setPixelColor (20, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 2) {пикселей.setPixelColor (19, пикселей. Color (0, 0, 0)); pixel.setPixelColor (20, пикселей. Color (0, 0, 0)); pixel.setPixelColor (21, пикселей. Color (0, 150, 0)); pixel.setPixelColor (22, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 3) {пикселей.setPixelColor (21, пикселей. Color (0, 0, 0)); пикселей.setPixelColor (22, пикселей. Color (0, 0, 0)); pixel.setPixelColor (23, пикселей. Color (0, 150, 0)); пикселей.setPixelColor (0, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 4) {пикселей.setPixelColor (23, пикселей. Color (0, 0, 0)); пикселей.setPixelColor (0, пикселей. Color (0, 0, 0)); pixel.setPixelColor (1, пикселей. Color (0, 150, 0)); pixel.setPixelColor (2, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 5) {пикселей.setPixelColor (1, пикселей. Color (0, 0, 0)); пикселей.setPixelColor (2, пикселей. Color (0, 0, 0)); пикселей.setPixelColor (3, пикселей. Color (0, 150, 0)); pixel.setPixelColor (4, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 6) {пикселей.setPixelColor (3, пикселей. Color (0, 0, 0)); пикселей.setPixelColor (4, пикселей. Color (0, 0, 0)); pixel.setPixelColor (5, пикселей. Color (0, 150, 0)); pixel.setPixelColor (6, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 7) {пикселей.setPixelColor (5, пикселей. Color (0, 0, 0)); pixel.setPixelColor (6, пикселей. Color (0, 0, 0)); pixel.setPixelColor (7, пикселей. Color (0, 150, 0)); pixel.setPixelColor (8, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 8) {пикселей.setPixelColor (7, пикселей. Color (0, 0, 0)); pixel.setPixelColor (8, пикселей. Color (0, 0, 0)); pixel.setPixelColor (9, пикселей. Color (0, 150, 0)); pixel.setPixelColor (10, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 9) {пикселей.setPixelColor (9, пикселей. Color (0, 0, 0)); pixel.setPixelColor (10, пикселей. Color (0, 0, 0)); pixel.setPixelColor (11, пикселей. Color (0, 150, 0)); pixel.setPixelColor (12, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 10) {пикселей.setPixelColor (11, пикселей. Color (0, 0, 0)); пикселей.setPixelColor (12, пикселей. Color (0, 0, 0)); pixel.setPixelColor (13, пикселей. Color (0, 150, 0)); пикселей.setPixelColor (14, пикселей. Color (0, 150, 0)); pixel.show (); } если (час == 11) {пикселей.setPixelColor (13, пикселей. Color (0, 0, 0)); pixel.setPixelColor (14, пикселей. Color (0, 0, 0)); pixel.setPixelColor (15, пикселей. Color (0, 150, 0)); pixel.setPixelColor (16, пикселей. Color (0, 150, 0)); pixel.show (); }} void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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)); } void 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: Работа и завершающий штрих
Подключите ваш Arduino к компьютеру и позвольте ему работать. Надеюсь, ваши часы будут работать. Он работает, но выглядит таким грязным. Столько резисторов и проводов, что это нехорошо. Итак, поместите все компоненты в коробку и вырежьте одно отверстие для ЖК-дисплея, покрасьте коробку и сделайте вид цифровых часов.
Я не создавал его на самом деле, но я спроектировал его в AUTODESK CIRCUITS. Спроектирую в реальном и выложу видео работы. Я не носитель языка. Если допустили ошибку, сообщите мне в личных сообщениях. И я сожалею об этой ошибке. Я также позаимствовал некоторые идеи из "Часы Дэна Ардуино". Встретимся с другим наставником.
Рекомендуемые:
Потрясающие!! DIY Mini Bluetooth Speaker BoomBox Build Dayton Audio ND65-4 & ND65PR: 18 шагов
Потрясающие!! DIY Mini Bluetooth Speaker BoomBox Build Dayton Audio ND65-4 и ND65PR: Вот еще один. На этот я решил пойти с ND65-4 и пассивными братьями ND65PR. Мне очень нравится, как я недавно построил маленький 1-дюймовый динамик, и я действительно хотел сделать более крупный с 2,5-дюймовыми динамиками. Мне очень нравится
Часы Gixie: самые красивые часы со светящейся трубкой: 4 шага
Часы Gixie: самые красивые часы Glow Tube: мне очень нравятся часы Nixie Tube, но они слишком дороги, я не могу их себе позволить. Итак, я потратил полгода на создание этих часов Gixie Clock. Gixie Clock достигается за счет использования освещения ws2812 для создания акрилового света. Я делаю все возможное, чтобы сделать трубку RGB тоньше
Подставка для ноутбука DIY - Потрясающие лайфхаки с вентилятором процессора - Креативные идеи - Компьютерный вентилятор: 12 шагов (с изображениями)
Подставка для ноутбука DIY | Потрясающие лайфхаки с вентилятором процессора | Креативные идеи | Компьютерный фанат: Вам нужно просмотреть это видео до конца. для понимания видео
Создайте настоящие часы с боем колокола для вашего ПК и часы с огнетушителем: 3 шага (с изображениями)
Создайте настоящие часы с боем колокола для вашего ПК и часы с огнетушителем: медный колокол, маленькое реле, еще несколько вещей и настоящий колокол могут пробить часы на вашем рабочем столе. Хотя этот проект работает на Windows и Mac OS X тоже, я решил установить Ubuntu Linux на ПК, который я нашел в мусорном ведре, и поработать над этим: у меня никогда не было
Потрясающие градиенты: 4 шага
Потрясающие градиенты: я покажу вам, как создавать градиенты, подобные тем, что есть на моем форуме. Я также получил разрешение от DRADIS на расширение его Instructable, так что, пожалуйста, тоже поблагодарите его. P.S. Пожалуйста, оцените и проголосуйте за книжный конкурс. Бесконечно благодарен