Оглавление:
- Шаг 1: Детали
- Шаг 2. Рекомендации по программному обеспечению
- Шаг 3: первые мысли
- Шаг 4: программирование
- Шаг 5: Заключение
Видео: TM1637 7-сегментный дисплей - заставить его работать !: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:53
Введение Что ж, я наконец сломался и решил поэкспериментировать с 7-сегментными дисплеями. Я бы предпочел запрограммировать сенсорный TFT-дисплей или простой TFT-дисплей из-за их гибкости для отображения большого количества информации на экранах. 7-сегментный дисплей настолько ограничен, даже с расширенными цифрами. Однако в качестве новой идеи я решил создать мировые часы, которые отображали бы время по всему земному шару. Идеальное приложение для недорогого 4-значного 7-сегментного дисплея! Итак, подробнее о проекте по мере того, как он становится все более продвинутым, но вот мои «открытия» и мысли о дисплее TM1637 от RobotDyn.
Шаг 1: Детали
Детали. Чтобы поэкспериментировать с дисплеем TM1637, вам понадобятся только следующие компоненты:
- Дисплей TM1637
- RTC или DHT для чтения некоторой информации - опционально, без оборудования, просто сделайте простой счетчик
- Arduino Uno, Mega или Micro
- Несколько перемычек
Шаг 2. Рекомендации по программному обеспечению
Соображения по поводу программного обеспечения: я нашел 3 разных библиотеки для использования с TM1637.
- TM1637.h - рекомендуется RobotDyn, но старше
- Библиотека TM1637display.h - от AVISHORPE кажется фаворитом
- SevenSegmentTM1637.h - По breeme. Максимальный функционал и возможности.
Попробуйте их все и посмотрите, что вы думаете, пока мне больше всего нравится библиотека TM1637display.
Шаг 3: первые мысли
Первые мысли: Когда я впервые получил свой дисплей, я купил его с некоторыми универсальными 7-сегментными дисплеями (12 отведений) и некоторыми регистрами сдвига. Их использование было труднее, чем мне нужно, и ограничивало меня использованием Mega в качестве мировых часов. Дисплей TM1637 использует I2C, поэтому даже микроконтроллер справится с 4-5 из этих дисплеев, но я буду подтверждать это по мере развития моего проекта! Но использование всего (2) контактов GPIO на каждом - это большой плюс.
Устройство очень рентабельно, всего 1,50 доллара за большой дисплей (50x19 мм) на сайте RobotDyn.com.
Легко установить и использовать для проекта. Хороший размер, яркий регулируемый дисплей, 4 монтажных отверстия (версия RobotDyn), двусторонний доступ, только 4 соединения (5 В, Gnd, Data, Clock), цветовые вариации (5) и «простое» программирование (читайте дальше…).
Шаг 4: программирование
Программирование До сих пор мне больше всего нравилась библиотека TM1637display.h, и я использовал ее для получения следующих результатов и выводов. Вероятно, это не единственные проблемы, я столкнулся с ними и нашел способы их решения.
А теперь о программировании. Когда я впервые подключил свой дисплей и запустил примеры для всех трех библиотек, я ничего не получил. Ни дисплея, ни считывания, ничего. Фактически, это, казалось, заморозило Arduino и отказалось выводить даже последовательный вывод. Я всего лишь производитель, но, конечно же, я не мог испортить этот простой маленький дисплей! После некоторого исследования я нашел некоторую информацию во многих местах, поэтому позвольте мне попытаться передать кое-что из того, что я нашел.
Как и на ЖК-дисплее, вы можете выводить на дисплей строку целых чисел. Есть более «сложные» способы размещения информации, но это не обязательно. Отображение ограничено строками и символами и ограничивает доступный набор, поэтому, если вам нужен текст, это может быть не лучшим решением.
Кажется, что использование «задержки» любого типа приводит к зависанию дисплея. Это может быть уникальным для дисплея RobotDyn, поскольку другие, похоже, избегают проблемы, но это не единственная проблема. Чтобы обойти это, я нашел 2 шага. Сначала я отключил встроенные конденсаторы на задней панели устройства, которые мне было лень демонтировать. Во-вторых, я закомментировал все задержки. Успех! Дисплей ожил. Теперь нет возможности установить время (например, счетчик), что не так идеально, но мне нужны часы и / или датчик температуры, чтобы я мог работать с этим.
На дисплее RobotDyn десятичные точки недоступны. Я не нашел однозначного решения - и оно не понадобится - но имейте в виду.
Документация для двоеточия была громоздкой, но я нашел довольно простое решение, используя однострочную команду. Я не могу заставить его мигать легко, но, опять же, это не проблема для моего проекта. Используйте «display.showNumberDecEx (0, 64);» с двоеточием.
Чтобы дисплей отображал стабильные показания, я просто использовал операторы for () для повторения вывода в течение того времени, которое я хочу, чтобы он отображался. Просто дает мне вызывать больше подпрограмм. Но я заберу победу.
Для получения разных цветов необходимо заказать дисплей, соответствующий цвету. Вы не можете изменить цвет дисплея. Если вы собираетесь их использовать именно так, закажите партию на Amazon с 5 разными цветными дисплеями. С помощью RobotDyn вы заказываете цвет или партию из 1 цвета.
Шаг 5: Заключение
Заключение Пока это то, что я нашел, но если у вас есть какие-либо предложения, я был бы признателен за отзывы или предложения. Я все еще изучаю дисплеи, и мне нужно многое узнать и понять о них. Любые другие заметки приветствуются. Спасибо, и я надеюсь, что это помогло другим, интересующимся 7-сегментным дисплеем. Наслаждаться!
Рекомендуемые:
Модернизация освещения с помощью пульта дистанционного управления - существующие настенные переключатели продолжают работать: 8 шагов
Модернизация освещения с помощью пульта дистанционного управления - существующие настенные переключатели продолжают работать: обновление от 4 октября 2017 года - см. Дистанционно управляемый переключатель света - модернизация. Выключатель света по-прежнему работает, никаких дополнительных писем для улучшенной версии Bluetooth с низким энергопотреблением (BLE). Обновление 8 ноября 2016 г. - Обновлено с изменениями, внесенными в проект «Модернизированные таймеры вентилятора»
Как работать с JSON в Node-RED: 13 шагов
Как работать с JSON в Node-RED: это руководство научит вас работать с JSON в Node-RED. Я покажу вам, как управлять сетевыми розетками с передачей файлов json через http get и post. Позже вы сможете использовать эти знания для управления любым устройством, поддерживающим JSON
Заставляем робота работать с поиском: 6 шагов
Создание робота для воспроизведения: используйте новый Pixy2 и DFRobot ESP32 FireBeetle, чтобы создать робота, который может находить и извлекать предметы
DragonBoard 410c - Как работать с низкоскоростным расширением: 8 шагов
DragonBoard 410c - Как работать с низкоскоростным расширением: Это руководство посвящено низкоскоростному расширению на DragonBoard 410c. Входы и выходы (I / O) низкоскоростного расширения на DragonBoard 410c: GPIO (ввод / вывод общего назначения); MPP (универсальный штифт); SPI (последовательный периферийный интерфейс); I2C (В
Заставляем MpegPlayer работать в Rockbox - IPod Nano 1-го поколения: 7 шагов
Заставка MpegPlayer работать в Rockbox - IPod Nano 1-го поколения: ** ОЧЕНЬ ВАЖНОЕ ОБНОВЛЕНИЕ ** Если вы уже видели это раньше, WINFF изменил его интерфейс. Теперь это версия 0.41. Программа стала более оптимизированной и теперь имеет " rockbox " под заголовком " преобразовать в " list.Я обновлю это, когда сделаю su