decoder_2_a_4

Hola q tal! estoy siguiendo un curso de micro controladores PIC y bueno en la primera clase trataton de la arq. del PIC y el lenguaje assembler (el PIC que usamos como ejemplo es el P16f628A) y de tarea me dejaron que diseñara un decoder de 2 a 4 con los siguientes requisitos:

https://blufiles.storage.live.com/y...e04Bdt0kQC-P3dFbZvzvjlPbwg/DECODER.png?psid=1

Les agradeceria que me orientaran al respecto! Gracias de antemano =)
 
Hola q tal! estoy siguiendo un curso de micro controladores PIC y bueno en la primera clase trataton de la arq. del PIC y el lenguaje assembler (el PIC que usamos como ejemplo es el P16f628A) y de tarea me dejaron que diseñara un decoder de 2 a 4 con los siguientes requisitos:

https://blufiles.storage.live.com/y...e04Bdt0kQC-P3dFbZvzvjlPbwg/DECODER.png?psid=1

Les agradeceria que me orientaran al respecto! Gracias de antemano =)

Hola Amigo, bueno 1ro. antes que nada, la tabla de verdad que muestras presenta ante la misma combinacion de entrada, dos salidas diferentes!!! Revisa eso:unsure:
 
Oh si ya lo vi =( las entradas son: a0 y a1 / rb0 y rb1 respectivamente; las salidas: s0, s1, s2, s3 / rb0, rb1, rb2, rb3.

Cuando a0 y a1 están en 0, se activa la salida s0
Cuando a0 esta en 0 y a1 esta en 1, se activa la salida s1
Cuando a0 esta en 1 y a1 esta en 0, se activa la salida s2
Cuando a0 esta en 1 y a1 esta en 1, se activa la salida s3

en las salidas tengo q conectar led's =) y en las entradas, claro, pulsadores.
 
Oh si ya lo vi =( las entradas son: a0 y a1 / rb0 y rb1 respectivamente; las salidas: s0, s1, s2, s3 / rb0, rb1, rb2, rb3.

Cuando a0 y a1 están en 0, se activa la salida s0
Cuando a0 esta en 0 y a1 esta en 1, se activa la salida s1
Cuando a0 esta en 1 y a1 esta en 0, se activa la salida s2
Cuando a0 esta en 1 y a1 esta en 1, se activa la salida s3

en las salidas tengo q conectar led's =) y en las entradas, claro, pulsadores.
Bien, bueno Amigo, te oriento como debes encarar el programa.
1ro. debes declarar el puerto Rb4 y Rb5 como entrada, luego del puerto Rb0 al Rb3 como salida(Revisa el archivo que subiste, pues las salidas Rb2 se repiten) esto ES MUY IMPORTANTE ya que trabajaras con el mismo puerto.
Ahora bien, declaras una variable ejem. "CONSTANTE", y le asignas el valor numerico "1".
Luego debes generar un bucle el cual sera infinito, a partir de ahi capturas el valor numerico del puerto Rb4 y Rb5, desplazas su valor 4 posiciones a la derecha, para obtener el valor absoluto, y lo alojas en otra variable supongamos con el nombre de "VALOR".
Ahora bien, teniendo el valor de entrada podremos generar la logica para obtener las salidas correspondientes, hacemos asi:



INICIO:
CONSTANTE=1
VALOR=PORTB>>4
PORTB=CONSTANTE<<VALOR

GOTO INICIO

El ejem. no esta tipeado en ningun lenguaje, es solo a fin de interpretacion.:)
 
Última edición:
Atrás
Arriba