#define DS 8 //линия для передачи данных
#define SH 7 //сдвиг разряда на единицу
#define ST 4 //установка режима ввода или вывода данных
//создадим "библиотеку" кодов 
byte digitsArr[10]={
  0b11000000, //число 0
  0b11111001, //число 1
  0b10100100, //число 2
  0b10110000, //число 3
  0b10011001, //число 4
  0b10010010, //число 5
  0b10000010, //число 6
  0b11111000, //число 7
  0b10000000, //число 8
  0b10010000, //число 9
};
byte regArr[4]={
  0b11111000, //разряд 0
  0b11110100, //разряд 1
  0b11110010, //разряд 2
  0b11110001, //разряд 3
};
void setup (){
  pinMode(DS,OUTPUT); // Устанавливаем вывод как выход
  pinMode(SH,OUTPUT); // Устанавливаем вывод как выход
  pinMode(ST,OUTPUT); // Устанавливаем вывод как выход
  digitalWrite(ST, LOW); //Устанавливаем на 12х выводах регистров режим ввода данных
  shiftOut(DS, SH, MSBFIRST, digitsArr[5]); //Запись информации в правый регистр
  shiftOut(DS, SH, MSBFIRST, regArr[3]);    //Запись информации в левый регистр
  digitalWrite(ST, HIGH); //Устанавливаем на 12х выводах регистров режим вывода данных
}
void loop(){ 
}

