SoloCodigo

Programación General => C/C++ => Mensaje iniciado por: Dok en Domingo 23 de Diciembre de 2007, 22:22

Título: Lectura Bit A Bit De Un Array De Enteros
Publicado por: Dok en Domingo 23 de Diciembre de 2007, 22:22
Hola amigos estoy haciendo un programa en el que almaceno un array de 18 bytes y tengo que enviarlo bit a bit por un puerto serie, y no estoy seguro de como hacerlo.

Si me pudieseis dar una idea os lo agradeceria mucho.

gracias por su tiempo de antemano.
Título: Re: Lectura Bit A Bit De Un Array De Enteros
Publicado por: Dok en Martes 25 de Diciembre de 2007, 21:17
Este es el codigo que he hecho para sacar bit a bit , me parece que esta bien pero no estoy seguro:

Código: Text
  1.  
  2.   Datos[18] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18}
  3.   ii = 0;
  4.   jj = 7;
  5.   for (ii=0;ii<18;ii++)
  6.   {
  7.     for(jj=7;jj=0;jj--)
  8.     {
  9.       n = Datos[ii];
  10.       n = n << jj;
  11.       n = n >> 7;
  12.       if (n == 0x00)
  13.       {
  14.       printf("0");
  15.       }
  16.       else
  17.       {
  18.       printf("1");
  19.       }
  20.     }
  21.   }
  22.  
  23.  
   Ahora lo que me gustraria es sincronizar con una salida de un pin (un reloj) y no se como hacerlo, se que si programase en VHDL tendria que hacer que meter en el is las siguientes condiciones " CLK'event and CLK='1' " pero aqui no se como hacerlo.
   
    Gracias por su tiempo de antemano.
Título: Re: Lectura Bit A Bit De Un Array De Enteros
Publicado por: Geo en Miércoles 26 de Diciembre de 2007, 07:07
¿sincronizar con una salida? Si tú controlas dicha salida, simplemente intercálala junto con la separación de los bits. Creo que más bien será con una entrada ¿no?
Título: Re: Lectura Bit A Bit De Un Array De Enteros
Publicado por: Dok en Miércoles 26 de Diciembre de 2007, 16:35
Bueno yo tengo un microcontrolador el msp430 el que he programado para que tenga una frecuencia de reloj determinada, y tengo que sincronizarlo con esa frecuencia de reloj que a su vez tengo que sacarla por otra salida.

Y como lo intercalaria?? no entiendo a que te refieres. Lo que se me ocurre a mi es de alguna manera poner antes del if algo que pare la ejecucion hasta que el reloj se ponga a 1 de esta manera lo sincronizaria pero no se la instruccion/es que podria utilizar, porque supongo que "  wait(aclk)  "  no me sirva.

Gracias por tu interes Geo.