==== arreglos y funciones en Arduino ==== Los array son pasados como referencia (modifican la variable externa) y tambien hay que pasar el tamaƱo del array. \\ https://www.tutorialspoint.com/arduino/arduino_passing_arrays_to_functions.htm int datosSize = 8; byte datos[datosSize] = {0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00}; for ( int k = 0 ; k < datosSize ; k=k+1 ) datos[k] = 0; void ModificaDatos( byte datos[], int datosSize ) { for ( int k = 0 ; k < datosSize ; k=k+1 ) datos[k] = (1 +k); } ==== bytes y enteros en Arduino ==== un entero 16 bits (0 a 65535) ---> 2 bytes (8 bits c/u) \\ o un entero 14 bits (0 a 16383) ---> 2 bytes (8 bits c/u) \\ byte lowBy = (entero & 0xff); //los primeros 8 bits byte highBy = (entero >> 8) & 0xff); //los siguientes 8 bits byte lowBy low = (entero & 0x7f); //los primeros 7 bits, el bit8 siempre en 0 indica es low byte highBy = ((entero >> 7) & 0x7f) | 0x80; //los siguientes 7 bits, el bit8 siempre en 1 indica es high byte = highByte(entero); //los primeros 8 bits byte = lowByte(entero); //los siguientes 8 bits entero = word(highBy, lowBy); //returns the integer value of the highBy and lowBy bytes