TODOPIC

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
  1. for (entrada = 0; entrada < 64; entrada++)
  2. {
  3.   PORTB = entrada;
  4. }

  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;