ESCRIBIR Y LEER DATOS DE SD


buenas,

actualmente estoy creando un proyecto que consiste en registrar personas mediante su huella dactilar y posteriormente al leer la huella con ese id mover servomotores que realicen un movimiento u otro; dependiendo de dicha huella.

ahora bien, cada id tiene asociado uno o varios movimientos del servomotor por lo tanto tendria que guardar el id y valores de variables ligados ese id.

en el caso de que use tarjeta sd para guardar datos como se dispondrian en el fichero, es decir, teniendo esta disposicion:

id  servo1  servo2  servo3
1       0           2          1
2       1           0          0 
3       0           1          2

como podria introducir en la sd los valores de cada columna asociados entre si y como los leeria desde arduino para utilizar las variables en funciones posteriores.

¿puede ser mas conveniente crear este tipo de vectores: int vector[5]={1,0,2,1}?
siendo la primera posicion del vector el id y las posteriores los valores de cada variable servo.

en definitiva, me gustaria saber como podria leer dato dato.

otra opcion es guardar datos en una base de datos y realizar una consulta select dandole el id y recogiendo en variables los valores de cada servo:

select servo1 var1
from tablasd
where id = 1;


en el caso de que me decante por una base de datos mysql, como haria las consultas desde php mysql o desde el mismo codigo arduino.

gracias de antemano y un saludo.

creo que una forma fácil de hacerlo es guardarlo  tal cual en la sd

code: [select]
1021
2100
3012


luego lees una linea del archivo y lo almacenas en un string array

code: [select]
linea[5];

while(file.available()){
  c = file.read();
  int = 1;
  while(c != '\n'){
    linea[i] = c; //almacena caracter
    i++;
  }
  linea[i++] = '\0'; //agrega final de array
  break;
}


para leer cada dato por separado solo quedaría hacer esto:
(atoi convierte el caracter en entero)
code: [select]
int id_servo = atoi(linea[0]);
int servo1   = atoi(linea[1]);
int servo2   = atoi(linea[2]);
int servo3   = atoi(linea[3]);




Arduino Forum > International > Español (Moderators: surbyte, Hector_A) > ESCRIBIR Y LEER DATOS DE SD


arduino

Comments

Popular posts from this blog

invalid use of void expresion in FlexiTimer2 library

error: a function-definition is not allowed here before '{' token

LED Strip Code