manual de programación arduina Manual+Programacion+Arduino | Page 62

Arduino: Manual de Programación Por ejemplo, si capturamos los valores de un sensor analógico (e.j. potenciómetro) y los enviamos por el puerto serie al PC, una solución podría se transformarlos en un rango entre 0 y 9 y en modo de codificación ASCII (carácter). (dato capturado del sensor analógico * 9 / 1024) + 48; 0 ASCII -->decimal = 48 1 ASCII -->decimal = 49 etc.. En forma de código podría quedar como: value1 = analogRead(analogPin1); //captura del valor de sensor analógico (0-1023) serialWrite(treatValue(value1)); //volcado al puerto serie 8-bits int treatValue(int data) { return (data * 9 / 1024) + 48;// fórmula de transformación } Otra fórmula sería dividiendo por 4 ¿Esto es correcto? (1024/256)los valores capturados de los sensores analógicos, para convertirlos en valor de byte válido (0 - 255). value = analogRead(analogPin)/4; serialWrite(value); 62