Оглавление:

Использование 4-значного и 7-сегментного дисплея с Arduino: 7 шагов
Использование 4-значного и 7-сегментного дисплея с Arduino: 7 шагов

Видео: Использование 4-значного и 7-сегментного дисплея с Arduino: 7 шагов

Видео: Использование 4-значного и 7-сегментного дисплея с Arduino: 7 шагов
Видео: Сдвиговый регистр и семисегментный индикатор 2024, Ноябрь
Anonim
Использование 4-значного и 7-сегментного дисплея с Arduino
Использование 4-значного и 7-сегментного дисплея с Arduino

В этом уроке я покажу вам, как использовать 7-сегментный дисплей с 4-мя цифрами с помощью Arduino. Некоторые основные вещи, которые я хотел бы отметить, это то, что он занимает почти все цифровые контакты на arduino uno, leonardo, платах с 13 цифровыми контактами. Большинство дисплеев имеют 12 контактов, которые подключаются либо напрямую к Arduino, либо через резистор. Также я хотел бы отметить, что эти дисплеи не нуждаются в подключении заземления, 5 В или 3,3 В. Итак, приступим …

Шаг 1: материалы

Материалы
Материалы
Материалы
Материалы
Материалы
Материалы
Материалы
Материалы

Для использования такого дисплея практически не требуются материалы.

- 4 резистора по 330 Ом

- 12 перемычек между мужчинами и женщинами

- 1 х Ардуино

- 1 макет любого размера (им не нужны шины питания)

Для создания прототипа этой конструкции не требуются инструменты. Однако для более постоянного использования потребуются паяльник и печатная плата.

Шаг 2: Макет макета

Макет макета
Макет макета

Чтобы дать вам некоторый контекст, я объясню использование каждой булавки. 8 из 12 контактов на дисплее используются для 8 сегментов. Есть 7 сегментов, используемых для формирования любой цифры, а один контролирует десятичную точку. Остальные 4 из 12 контактов управляют каждой из 4 цифр на дисплее. Любой вывод, на котором есть резистор, является одним из четырехзначных выводов, в противном случае они являются выводами сегмента.

Вышеупомянутый дизайн, который я создал из фритзинга, чтобы показать связь между дисплеем и Arduino. Обратите внимание на расположение резисторов, потому что, если вы подключите резистор к неправильному выводу на дисплее, либо эта цифра не будет работать, либо этот сегмент не будет работать, НАВСЕГДА …

***ВАЖНАЯ ЗАМЕТКА***

При настройке схемы переключите желтый и фиолетовый провода (я испортил схему).

Шаг 3: Установка библиотеки

Библиотека, ссылка на которую приведена ниже, взята с веб-сайта arduino для простого управления дисплеем. Ссылка идет на гитхаб. Если вы никогда не были на github, слушайте внимательно, если вы прочитали следующий абзац. Когда вы зайдете на сайт, посмотрите в правую часть окна и посмотрите вниз, пока не увидите «Загрузить Zip». Нажмите эту кнопку и посмотрите, как она появится в ваших загрузках.

Теперь вам нужно загрузить ранее установленную библиотеку в папку ваших библиотек. Если вы теперь знаете, как это сделать, переходите к следующему шагу, в противном случае продолжайте читать. Сначала войдите в искатель, найдите папку «документы» и откройте ее. Затем найдите папку «arduino» и откройте ее. Затем найдите папку с библиотеками и откройте ее. Наконец, перетащите установленную библиотеку в только что открытую папку библиотек.

ВАЖНЫЙ. Если ваше приложение arduino было открыто и запущено, когда вы помещали библиотеку в папку с библиотеками, arduino не распознает библиотеку. Вам просто нужно выйти из приложения и открыть его снова.

github.com/DeanIsMe/SevSeg

Шаг 4: Код

Код
Код

Код для фактического отображения чего-либо приведен ниже.

#include "SevSeg.h"

SevSeg sevseg; // Инициируем объект контроллера из семи сегментов void setup () {byte numDigits = 4; byte digitPins = {2, 3, 4, 5}; byte segmentPins = {6, 7, 8, 9, 10, 11, 12, 13}; резисторы boolOnSegments = 0; // указанная выше переменная указывает, что 4 резистора были размещены на цифровых выводах. // установите переменную в 1, если вы хотите использовать 8 резисторов на выводах сегмента. sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins, resistorsOnSegments); sevseg.setBrightness (90); } void loop () {sevseg.setNumber (3141, 3); sevseg.refreshDisplay (); // Должен запускаться повторно

Шаг 5: результат

Если вы правильно подключили дисплей, правильно загрузили код и правильно скопировали код, то ваш дисплей должен отображать число «пи» (только 3,141).

Если нет, то прочтите шестой шаг, чтобы узнать, что происходит не так.

Если вы все правильно поняли, я предлагаю прочитать и перейти к седьмому шагу.

Шаг 6. Устранение неполадок

Здесь я перечислил две возможные вещи, которые могли произойти с вашим дисплеем, которые могли его испортить. К сожалению, исправить можно только одно из двух.

- На вашем дисплее отображается 8888

Не волнуйтесь, это проблема, которую можно исправить, просто выполните следующие действия.

1. Найдите в коде sevseg.begin (COMMON_CATHODE, numDigits, digitPins, segmentPins);

2. Измените «ОБЩИЙ КАТОД» на «ОБЩИЙ АНОД».

3. Загрузите код еще раз.

- На вашем дисплее отображается 3. 41 или.141, или 3.1 1, или 3.14 без другого 1.

К сожалению, эту проблему можно либо исправить, либо нет:. (… (Это мое плачущее лицо)

1. Проверьте соединения и убедитесь, что все подключено и не болтается.

2. Проверьте схему еще раз, потому что, скорее всего, вы неправильно ее подключили.

3. Найдите строку в цикле void, где говорится, что нужно отобразить (3.141, 3), измените 3.141 на 8888 и посмотрите, не пропало ли одно из 8

4. В таком случае на одном из проводов могло не быть резистора, хотя он должен был быть, что означает, что одна из цифр перегорела. Вы можете проверить это, посмотрев на заднюю часть дисплея. Если вы видите черный цвет рядом с одним из выводов, значит, вы превзошли одну из цифр. К сожалению, это НЕ исправимо, и вы захотите купить другой дисплей.

5. Если вы нигде не видите черную метку, значит, вы подключили провода, которые не могут быть отключены, поэтому проверьте схему, правильно подключите и измените код обратно с 8888 на 3.141.

Шаг 7. Идем дальше

Одним из способов использования нескольких выводов на Arduino для управления несколькими светодиодами, для которых в противном случае потребовалось бы много выводов, является восьмиконтактный сдвиговый регистр с тремя состояниями. Таким образом, вместо того, чтобы напрямую подключать 8-сегментные контакты к Arduino, вы можете подключить их к регистру сдвига и выяснить, как это сделать.

Это просто идея, которую я придумал, но я не знаю, как это сделать, и возможно ли это даже с Arduino и библиотекой дисплея, но эй, пища для размышлений для любопытных.

Получайте удовольствие от вашего дисплея, и я надеюсь, что вам понравилось это руководство, потому что это первое, что я действительно закончил из многих, которые у меня есть в моих черновиках.

Рекомендуемые: