Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: coolkain en 08 de Noviembre de 2011, 07:13:00
Título: Gestionar un multiplexor y demultiplexor para leer sensores con un 18f252
Publicado por: coolkain en 08 de Noviembre de 2011, 07:13:00
Hola, estoy haciendo un proyecto donde tengo varios sensores conectador a un demultiplexor de 64 entradas y necesito leer el estado de cada sensor. Para ello necesito necesito ir activando y desactivando los pines de salida que controlan las lineas del demultiplexor,El problema está en que no se como hacerlo mediante un bucle que vaya desde 0 hasta 64, pero que esos valores me los transforme en binario y así obtenga las salidas en paralelo en el puerto B.
Título: Re: Gestionar un multiplexor y demultiplexor para leer sensores con un 18f252
Publicado por: AngelGris en 08 de Noviembre de 2011, 09:07:35
Si configurás todo el puerto B como salida podrás manejar hasta 256 combinaciones. Sí usas desde RB0 hasta RB5 tenés las 64 combinaciones.
No hay que convertir nada. ¿En qué lenguaje estás programando?
Suponiendo en C HItech, bastaría con hacer lo siguiente
Código: C
for(entrada =0; entrada <64; entrada++)
{
PORTB = entrada;
}
Tené en cuenta que el micro siempre trata a los distintos datos en forma binaria. Entonces si una variable tiene almacenado el valor 0x0F es igual a decir que dicha variable tiene el valor 0b00001111. Por lo tanto si lo enviás al puerto, dicho puerto tomará el valor 0b00001111;