Configurar bits faltantes como otros bits PIC18F4550

Estoy empleando el PIC18F4550, como sumador de 8 bits. Usando EL puerto A y el B como entradas y salida el C.
Sucede que el RA7 ni RC3 no estan implementados. Cómo puedo configurar esos bits para que me funcionen con bits de otro puerto, por ejemplo el D?
 

D@rkbytes

Moderador
Se me ocurre lo siguiente pero usando el puerto D como salidas...
Creas una variable de 8 bits.
El bit que falta en el puerto A (RA7) lo usas del puerto C, por ejemplo: RC0
Lees el puerto A y cargas el valor a la variable.
Posteriormente a la variable le asignas el valor del bit que falta conforme al estado de RC0

Algo así:
C:
    var_porta = input_a();          // Leer el valor del puerto A y asignarlo a "var_porta"
    
    if(input_state(PIN_C0))         // Si RC0 está en 1...
        bit_set(var_porta, 7);      // El bit 7 de "var_porta" se pondrá en 1
    else                            // Caso contrario...
        bit_clear(var_porta, 7);    // El bit 7 de "var_porta" se pondrá en 0
Y así ya tienes en la variable los 8 bits complementando el bit faltante con RC0
 
Saludos @merrow. He analizado tu problema y veo que hay algunas soluciones. (para mi las mejores son:)
Primero. Puedes cambiar de pic? Las respuestas más simples siempre son las mejores
Segundo. En caso de no poder. Tienes que asignar un bit a otro puerto( el E0) y ponerlo como reemplazo de C y otro màs (E1) más significatico. te paso el programa en PIC C ( espero que el moderador lo acepte) con su respectiva simulaciòn
Captura.JPG
 

Adjuntos

  • suma.rar
    57.1 KB · Visitas: 2
Arriba