Come si usa la libreria 74HC595

mi sa che manca un azzeramento della variabile readTag

prova a inserire

readTag = 0;   // azzero il contenuto del tag

   for (byte i = 0; i < mfrc522.uid.size; i++)  {
      (readTag = readTag << 8 | mfrc522.uid.uidByte[i]);
   }