Calculadora lógica con pic16f887

Hola, necesito ayuda con este programa:

Realizar un programa que realice las siguientes operaciones lógicas: and, or, xor y not. Adquirir datos de la parte más significativa y menos significativa del puerto A y mostrar los resultados en la parte menos significativa del puerto B.


Se supone que en el puerto A, voy a meter datos por medio de dip-switch, se comparara la parte menos significativa de la palabra, con la parte mas significativa

Puerto A-------------------------
+ + + + - - - -
1 0 1 1 0 0 1 1

(ejemplo de comparacion)

y ademas, en el puerto B debo colocar un selector de operaciones, y tambien debo mostrar las salidas, he construido la tabla de verdad:

0 0 0 1 AND
0 0 1 0 OR
0 1 0 0 XOR
1 0 0 0 NOT

Poniendo ese valor en el puerto b, se seleccionaria la operacion que va a realizarse en la comparacion del puerto B

Puerto B---------------------------------------------

Dip-switch Led´s

AND
0 0 0 1 0 0 0 0


(ejemplo de como deberia ir acomodado en el puerto B)

Pues no se como hacer esto, de antemano les agradezco... :D
 
Lees el puerto que determina la funcion, luego lees los valores de entrada llamas a un atabla y obtienes los resultados, luego los muestras en el puerto de salida, regresas a leer la funcion y haces siempre ese bucle o lazo, asi es lo mas sencillo
 
Atrás
Arriba