# micro y leds multicolor



## Bubus (Sep 10, 2007)

Hola, como estan, ando haciendo un proyecto de la escuela y me encuentro que tope con piedra, resulta que de 4 bits de entrada que tengo que mandar señales a 5 leds tricolor, por ejemplo, quiero que el led5 prenda verde, despues quiero que el led4 prenda amarillo, hasta ahi no encontraba problema, por que pense que lo podia usar con compuertas simples, pero el problema empezo cuando por cada nuevo estado del led, a los otros no les tiene que afectar su estado, por eso descidi cambiar al micro, este es mas o menos el diagrama

por ejemplo supongamos que el led1 esta en rojo, y que yo quiero mandar decirle que quiero el led2 verde, sin que el led1 cambie su estado y permanezca en rojo

no se por donde empezar, ando un poco desesperado, les agradezco su atensión


----------



## capitanp (Sep 10, 2007)

si haces que prenda amarillo ya estas... recibido de ingeniero


----------



## pepechip (Sep 11, 2007)

hola.
 para cambiar una sola salida sin afectar a las demas tienes que programar
BSF PORTB,1 para encender y BCF PORTB,1 para apagar
*portb* te indica que utilizas el puerto b, mientras que si pones *porta * utilizas el puerto a.
el numero 1 lo puedes sustituir por cualquiera del 0 al 7, y segun el que pongas activaras una salidau otra.


----------



## Bubus (Sep 11, 2007)

ok muchas gracias pero por que tiene 7 valores? que significa cada uno, yo pense que solo se le podia dar por ejemplo un 0 apagado y un 1 encendido


----------



## ghost_007 (Sep 12, 2007)

hola bubus el puertob del pic tiene 8 bits ( que se pueden configurar como entrada o salida ) es decir  portb,0  portb,1   portb,2  ........  portb,7 (de 0 a 7 hay 8 bits o un byte).

supongamos que tienes el puerto b configurado como salida.

BSF posrt,1                 ;coloque en nivel alto el bit 1 del puertob
BSF portb,2                 ;coloque en nivel alto el bit 2 del puertob

BCF portb,1                   ;coloque en nivel bajo el bit 1 del puertob
BCF portb,2                   ;coloque en nivel bajo el bit 2 del puertob

bsf coloca un bit a "1" , pero no savemos que bit y con portb,1 le estamos indicando en que bit queremos colocar el 1.

bueno espero haber aclarado tu duda saludos !!!!!!!


----------

