TODOPIC

Microcontroladores PIC => Lenguaje C para microcontroladores PIC => Mensaje iniciado por: ALFREDOSKY en 24 de Septiembre de 2014, 13:57:30

Título: Guardar datos hexadecimales en arreglo
Publicado por: ALFREDOSKY en 24 de Septiembre de 2014, 13:57:30
Hola a todos, estoy intentando guardar datos hexadecimales en un arreglo, he estado investigando pero no me funcionan algunas configuraciones, lo que no quiero es INICIALIZAR un arreglo con datos hexadecimales, sino, ir actualizando los datos a placer por medio de una funcion que lo haga.

Es decir, si tengo un arreglo de 10 bytes

char arr[10];

lo que quiero es guardar,por ejemplo 0x2f (1 byte) en la posicion [ 0 ], luego 0xa8 en [1] y asi sucesivamente con otros datos hasta completar el arreglo, toda sugerencia es bienvenida  
Título: Re: Guardar datos hexadecimales en arreglo
Publicado por: jhozate en 24 de Septiembre de 2014, 14:15:43
eso dependería de lo que requieras de tu aplicación, para llenar o actualizar el array lo puedes hacer con un ciclo for, o directamente como arr[1]=0xa8
Título: Re: Guardar datos hexadecimales en arreglo
Publicado por: ALFREDOSKY en 24 de Septiembre de 2014, 14:24:30
Gracias por tu respuesta jhozate, con un for seria uno por uno(byte por byte) y directamente arr[1] = 0xa8 tambien seria algo lago y no funcionaria si tuviera un arreglo de mayor dimension, me parece haber visto una manera de hacerlo, pero no recuerdo la tecnica, no se si eran con sumas y desplazamientos o estoy equivocado
Título: Re: Guardar datos hexadecimales en arreglo
Publicado por: BrunoF en 24 de Septiembre de 2014, 14:47:01
Con punteros tal vez?
Título: Re: Guardar datos hexadecimales en arreglo
Publicado por: ALFREDOSKY en 24 de Septiembre de 2014, 14:51:58
Hola BrunoF, es probable, seguire investigando a ver si encuentro la manera y lo publico  :mrgreen:
Título: Re: Guardar datos hexadecimales en arreglo
Publicado por: migsantiago en 24 de Septiembre de 2014, 20:10:47
Hola, creo que aprenderías más componiendo el código que no te ha funcionado. Compártelo y te damos tips.  :mrgreen:
Título: Re: Guardar datos hexadecimales en arreglo
Publicado por: donvalles en 24 de Septiembre de 2014, 22:47:46
Código: C++
  1. //Macro
  2. #define MAXSIZE 10 // aca varias el tamaño del array
  3.  
  4. //global
  5. unsigned char array[MAXSIZE];
  6. unsigned char Dato;
  7.  
  8. //prototipo
  9. void CargandoArray (char *pArray,  int Indice, char Dato);
  10.  
  11. void main()
  12. {
  13.    CargandoArray(Array, 0, 0xAD); //array[0] = 0xAD;
  14.  
  15. }
  16.  
  17. void CargandoArray (char *pArray, int Indice, char Dato)
  18. {
  19.         if(Indice < MAXSIZE)
  20.         {
  21.                 *(pArray+Indice) = Dato;
  22.         }
  23. }
Título: Re: Guardar datos hexadecimales en arreglo
Publicado por: ALFREDOSKY en 25 de Septiembre de 2014, 20:01:58
Saludos para migsantiago y donvalles. migsantiago aun sigo buscando la manera de realizarlo correctamente... donvalles gracias por compartir tu codigo, veo que hay que llamar CargandoArray varias veces para llenar el arreglo, creo que puedo partir de tu código sugerido y llenar el arreglo de un soplo, con punteros y funciones, gracias...estoy intentando algunas cosas raras, cuando salga algo funcional lo posteo  :mrgreen: