Регистры сдвига и Arduino - часть 2
В этой второй части статьи мы увидим практическое применение последовательной цепи сдвиговых регистров.
Будем использовать четыре светодиодных индикатора состоящих из 7 сегментов, управляемых от Arduino. Нужно составить ряд из регистров сдвига, содержащих 32 выходных контакта. В этом случае нам не нужно специальное программное обеспечение или библиотека: достаточно того, что мы уже знаем о регистрах сдвига.
Единственное, что мы должны знать, как 7-сегментный индикатор работает.
Чтобы получить LED освещение мы должны подключить его заземляющий контакт к цепи GND, а положительного вывод на выходной контакт микроконтроллера.
Это важно знать, что существуют два различных типа 7-сегментных дисплеев: с общим катодом и общим анодом. Как показано на схеме ниже, общий катод отображает сигнал GND, в то время как общий анод сигнал VCC.
В принципе не существует никаких особых различий в подключении. Мы взяли подключение с общим анодом из-за некоторых преимуществ по сравнению с противоположным типом.
Мы должны учитывать, что в такой конфигурации определенный сегмент (светодиод) загорается, когда соответствующий цифровой контакт регистра сдвига установлен в LOW, и наоборот.Каждый сегмент соответствует одному из 8 сигналов.
Плата имеет множество разъемов, использующих 33 вывода: четыре набора из восьми выходов. Плюс (общий) соединен с анодами четырех индикаторов.
Подключим к одному из свободных цифровых выходов Arduino. При появлении сигнала LOW табло не будет работать, при HIGH засветится. Если мы используем контакт PWM (ШИМ) Arduino в качестве общего анода, мы можем изменить яркость светодиодов.
Программа управления индикаторами
При установке четыре 7-сегментных индикаторов с общим катодом, 33 контакт (общий) соединяем с Arduino GND. Все работать будет отлично, только разница в том, что каждый сегмент будет включен. Когда соответствующий сигнал регистра сдвига включен и отключен, и когда основной сигнал выключен.
Каждый сегмент связан с одним из соответствующих битов, что может дать 128 различных комбинаций включения/выключения.
Мы можем установить любую из этих конфигураций, но наиболее распространенными являются символы 0-9 AF.