не совсем понимаю принцип работы, назначение некоторых пинов
Фокус сдвиговых регистров применительно к подобным дисплеям, в том что наше зрение инерционно.
Т.е. если с большой частотой переключать разряды (я имею ввиду отдельные одноразрядные индикаторы), то наши глаза не замечают того что в момент времени горит только один разряд из нескольких.
Функциональная диаграмма 74HC595
Здесь внутри по сути простой счетчик на RS-триггерах (упрощённо):
- Выходы отключены
- Сбрасываем счётчик
- Подаем нужное количество импульсов
- Включаем выходы
- Видим результат
- Повторяем для следующего разряда
Чтобы подключить столько дисплеев вам прийдется использовать
мультиплексирование.
Посмотрите на эту схему, тут довольно легко понять принцип мультиплексирования нескольких многоразрядных семисегментных дисплеев
Вы можете обьединить ваши дисплеи (одноразрядные) в группы, даже если они не связаны (по выводимым величинам), и дальше уже программно управлять индикацией.
Лично я реализовывал бы подобное
с помощью i2c драйверов для семисегментных дисплеев.
Плюс подобного решения в простоте, у каждого дисплея (не разряда), есть свой адрес, вы пишете по этому адресу значение и получаете его на нужном дисплее.
При этом помимо питания у вас только две линии SDA и SCL (сразу для всех устройств).
I2C поддерживает огромное количество slave устройств на линии.
Полезные ссылки:I2CСдвиговый регистрМультиплексированиеДинамическая индикация
P.S. Я не профи в этом деле, но в детстве увлекался электроникой.