4 разрядный 7 сегментный индикатор и Arduino

4 разрядный 7 сегментный индикатор и Arduino

В интернете полно разнообразных статей по 7 сегментному индикатору но я не нашел более свободного решения по работе с ним через ардуино. Что же свободного в моём варианте? Подключать индикатор можно в любые пины на ардуино, весь код помещен в функцию с которой легко обращаться и сама функция позволяет без проблем выводить целые, дробные и отрицательные числа.

4 разрядный 7 сегментный индикатор и Arduino

Разберемся с самим индикатором. Есть индикаторы с общим анодом и с общим катодом (у меня с общим катодом, если у Вас общий анод то придется чуть изменить код). На рисунке справа показан индикатор с 8 сегментами, считая точку, в каждом сегменте стоит светодиод. Выводы 6, 8, 9, 12 отвечают за разряды, все остальные выводы отвечаю за сегменты. Чтобы вывести цифру 1 нам надо подключить вывод 6 и подать напряжение на выводы 4, 7. А как же вывести цифру больше 9, ведь передавать напряжение мы можем только 9 сегментам? Для этого придется переключатся между выводами 6, 8, 9, 12 так быстро, чтобы глаз не заметил мерцания.

Теперь начнем подключать индикатор к ардуино. Я ставил в таком порядке: 6, 7, 8, 9, 10, 2, 11, 3, 4, 12, 13, 5 (6 пин ардуино к 1 выходу индикатора, 7 пин ардуино к 2 выходу индикатора и т.д.). Их можно вставлять в любом порядке, а потом указывать в массиве pin[] к каким пинам Вы подсоединили. Выводы 6, 8, 9, 12 подсоединяйте через резисторы примерно 100 Ом.

Скетч:

Функция ledDigitDisplay() принимает число для вывода на индекатор и время работы функции в секундах. Если всё правильно подключено, то с интервалом в 2 секунды будут выводится числа: 3.14, 123, -5.

14 Comments

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *