Ok dejame decirte algo acerca del multiplexaje:
Se trata de enviar un varios datos a varios lugares a traves de menos lineas de las q normalmente se necesitarian.
El punto es, teoricamente, no puedes hacer que el PIC muestre los datos y haga el barrido al mismo tiempo, sin embargo la mano es mas rapida q la vista o, en este caso el display. Lo q haces es colocar el dato y despues barres, esto es porq el ojo humano tiene una "memoria retentiva" de 0.1 S esto kiere decir que si un led parpadea a 10 Hz sera visible el parpadeo, pero si lo hacemos, por ejemplo, a 30 Hz entonces lograras el efecto visual, parecera que el display entero esta completamente activo (como si hicieras el barrido y la puesta de dato al mismo tiempo) pero realmente estas poniendo uno detras del otro, secuencialmente. La idea es que coloques un retardo pequeño de unos 3 mS para cada display encendido (esto varia en funcion de la cantidad de displays que estes manejando), luego hagas barrido a la siguiente posicion (siguiente display), colocas el dato, otro retardo de 3 mS y asi vas..., sin embargo deberas mantener el display entero "encendido" por un lapso de tiempo, cuando digo "encendido" me refiero haciendo el ciclo barrido-dato-retardo de todos los displays, esto es para que la persona q lee el dato tnga tiempo suficiente de ver que es lo q dice el display, este retardo varia en funcion del tipo del display, mensaje y preferencias personales, pero t digo, tiene q medir al menos 1 S para medio ver q dice, luego experimenta con el valor q kieres de acuerdo al largo del mensaje y al gusto.