Aquí un ejemplo de como puedes controlar 2 display. En este ejemplo al llamar a la función Display_Visualizacion se muestra el numero en el display durante 300ms.
#define Display_BCD_A PIN_A0
#define Display_BCD_B PIN_A1
#define Display_BCD_C PIN_A2
#define Display_BCD_D PIN_A3
#define Display_Unidad PIN_B0
#define Display_Decena PIN_B1
void Display_nibble(int n)
{
output_bit(Display_BCD_A, !!(n & 1));
output_bit(Display_BCD_B, !!(n & 2));
output_bit(Display_BCD_C, !!(n & 4));
output_bit(Display_BCD_D, !!(n & 8));
}
void Display_Visualizacion(int n)
{
int i;
for(i=1;i<=30;++i){ // Durante 30 ms.
Display_nibble(n >> 4);
output_high(Display_Decena);
delay_ms(5);
output_low(Display_Decena);
Display_nibble(n & 0xf);
output_high(Display_Unidad);
delay_ms(5);
output_low(Display_Unidad);
}
}
void main()
{
Display_Visualizacion(0x27);
}
(http://img525.imageshack.us/img525/2810/displayss.jpg)