Привет! Мы рассмотрели одноразрядный индикатор. А теперь посмотрим на четырехразрядный 7 сегментный индикатор.
Содержание
Как и одноразрядный индикатор, это несколько светодиодов собранных в общий корпус. Одинаковые светодиоды каждого разряда управляются общими контактами. А для использования разных разрядов служат управляющие регистры.
Для того, чтобы выполнить этот урок нам понадобиться.
- Ардуино UNO
- Макетная плата
- Перемычки
- 8 резисторов 220 Ом
- 7-сегментный четырехразрядный индикатор
- Кабель USB
Четырехразрядный индикатор
Не забудьте подключить светодиоды последовательно с сопротивлением. А разрядные контакты можно подключить напрямую к пинам Ардуино.
Схема и программа
В схеме опять много проводов. Но смысл опять в том, чтобы соединить 8 светодиодов и 4 разряда с пинами Ардуино для их адресации.
Чтобы было проще понять какие пины соединять между собой обратим внимание на таблицу.
Цифровой пин Ардуино Пин индикатора 2B3G4C5DP6D7E8F9A104113122131Таблица соединения пинов Ардуино и индикатора
Напишем простой скетч, чтобы проверить индикатор и правильность схемы.
void setup(){
for( int j=2; j <= 13; j++){
pinMode(j, OUTPUT);
}
digitalWrite(10, LOW);
digitalWrite(11, LOW);
digitalWrite(12, LOW);
digitalWrite(13, LOW);
}
void loop(){
for( int j=2; j <= 9; j++){
digitalWrite(j, LOW);
}
for(int i=2; i<=9; i++){
digitalWrite(i, HIGH);
delay(200);
}
}
В прошлый раз мы написали функцию для отображения чисел на одноразрядном индикаторе. Давайте улучшим ее для четырехразрядного индикатора.
Назовем сегменты переменными, чтобы проще к ним обращаться. И выведем одно число на каждом разряде.
Теперь осталось только научить программу выводить числа от 1 до 9999 и использовать точку. Давайте попробуем.
Полный текст программы
Посмотрите полный текст программы на сайте, яндекс дзен отображает код с ошибками. Ссылка на статью с программой.
Библиотека fDigitsSegtPin.h
Как видите, код программы получается довольно громоздким. И было бы неплохо запаковать его в отдельную библиотеку. К счастью, такая библиотека уже есть. Это fDigitsSegtPin.h Установим ее через менеджер и используем для вывода десятичных цифр.
Заключение
Мы рассмотрели четырехразрядный 7 сегментный индикатор. Написали программу для вывода больших цифр на индикатор и попробовали простую библиотеку для вывода цифр с точкой.