Оглавление:
2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
Первоначальная идея заключалась в создании библиотеки, упрощающей использование IC 74HC595 между Arduino и другим оборудованием. В этой инструкции я поделюсь с вами этим на примере управления ЖК-дисплеем 16x2. Пример покажет на ЖК-дисплее секунды, прошедшие с момента перезапуска Arduino. Надеюсь, он будет вам полезен. Что вам нужно для ЭТОГО примера? - Arduino - Arduino IDE установлена - ЖК-дисплей - Одна микросхема 74HC595 - Один резистор 4,7 кОм или аналогичный - Один конденсатор «104» - Провода!
Шаг 1. Поместите библиотеку в папку Arduino
Я назвал библиотеку ShiftOut. Он находится в% arduino-directory% / hardware / libraries. Это библиотека, которую я запрограммировал. Комментарии приветствуются.
Шаг 2: ЖК-библиотека
Вторая необходимая библиотека - это та, которая взаимодействует с ЖК-дисплеем. Я использовал этот, а не тот, который поставлялся с Arduino, потому что это ошибка инициализации. Он основан на www.slashdev.ca/arduino-lcd-library/ и содержит необходимые изменения для интеграции библиотеки ShiftOut, которую я сделал. также должен быть распакован в% arduino-directory% / hardware / libraries.
Шаг 3: Откройте Arduino IDE
Пришло время написать код. Откройте Arduino IDE и напишите следующее:
#include #include
Шаг 4: Компиляция
Важно, чтобы библиотеки были скопированы до открытия Arduino IDE. В противном случае компиляция может завершиться ошибкой.
Если все в порядке, вы можете подключить Arduino к 74HC595, а этот - к ЖК-дисплею, следуя схематическим изображениям, построенным с помощью Fritzing. Подключение должно быть следующим:
Шаг 5: запустите Sketch на Arduino
Если все подключено правильно, вы должны увидеть счетчик секунд на ЖК-дисплее.
Шаг 6: Заключение
Надеюсь, эта библиотека будет кому-то полезна. Для меня это потому, что код Arduino становится простым и приятным, не заполняя его дополнительным кодом, что нарушает основную цель скетча.
Шаг 7: Бонус-трек: еще один пример
Вот Arduino, использующий ShiftOut для управления двумя семисегментными дисплеями в каскаде: Более подробную информацию можно найти здесь: