No entiendo el siguiente código con shift y or

Hola Lucario448, gracias por el código. El caso es que me ha compilado pero no me sale por el puerto serie ninguna lectura.

El chip es el MCP3208, y lo que hice fue implementar la función de analogRead de la librería de GitHub (GitHub - MajenkoLibraries/MCP3208: Arduino library for MCP3208 8 channel, 12 bit, ADC chip ).

El example de esa librería nos funcionaba, pero creo que puede no funcionar ahora porque hayamos roto el chip sin querer. En cuanto lo cambie aviso si funciona con mi código.