el 01-12-2015 06:56 AM
Buenas tardes,
Mi nombre es Miguel Carvajal.
Vereis no soy muy ducho en labview pero ya tengo mis proyectitos hechos de forma autodidacta.
La cuestion es que ahora mismo estoy haciendo un proyecto con labview;
Leo desde un puerto serie un codigo de barras con un lector apropiado.
El 1er dato lo coloco en la primera linea de un arrya string.
El 2do en la siguiguiente linea...etc.
La cuestio que quiero haceros es:
Quiero que el arraystring me vaya corriendo el dato, es decir, leo el primer dato colocandolo en la primera linea del array string, cuando leo el segundo dato quiero que este se colocque en la primera linea del array string y el primer dato leido con anterioridad me corra a la segunda linea... y asi sucesivamente.
La finalidad es que cuando el primer dato que he leido este en la linea 12, me lo mande por otro puerto serie.
Como podria hacerlo??
Espero haberme explicado.
SI no es asi os agradeceria me lo indicaseis.
Gracias de antemano.
Saludos
el 01-20-2015 06:26 AM
Buenos dias Miguel,
para hacer que los datos vayan corriendo como deseas, puedes hacerlo de la siguiente manera. En primer lugar utilizar la función Insert Into Array sin ningún índice cableado para crear el array. De esta manera, el array que se crea va aumentando su tamaño dinámicamente y se va introduciendo el nuevo dato el final. Si a medida que vas creando el array utilizas la función rotate array con índice 1, todo el array se desplaza un unidad a la izquierda.
La secuencia sería la siguiente:
1) Llega el primer dato A, el array rotado 1 vez quedaría A
2) LLega el dato B, el array sin rotar sería A B, y rotado sería B A
3) Llega el dato C, el array sin rotar sería B A C y rotado sería C B A
4) Llega el dato D, el array sin rotar sería C B A D,y rotado sería D C B A
...
A continuación te facilito un código que he creado que consta de dos partes. Una primera en la que se crea un array de un número de palabras seleccionado por el usuario de 3 letras (a partir del código ASCCI 65 correspondiente a la A mayúscula) para simular la llegada de datos.
La segunda parte sería el código que ordena el array y que devuelve una variable booleana True cuando el tamaño del array es 12.
A la espera de tu respuesta, recibe un saludo.
Iker
el 01-22-2015 02:21 AM
Buenos dias IKERSE,
Ante todo gracias por ayudarme.
Voy a probar la solucion que me ofreces en cuanto a la colocacion del dato en el array.
No he podido ver el codigo. No esta adjunto.
Te agradeceria me lo adjuntases para poder echar un vistazo.
Saludos.
el 01-22-2015 02:24 AM
Buenos dias Miguel,
te readjunto el código.
Un saludo,
Iker
el 01-22-2015 08:05 AM
Una cola también podría ser útil porque ya implementa la rotación. Desde otro lugar se puede monitorizar el tamaño para ver si es mayor de 12.
el 01-27-2015 04:28 AM
Hola buenos dias.
Al final consegui realizar la rotacion y visualmente me aparece como quiero pero tengo otra duda,
Los datos recogidos por uno de los puertos quiero escribirlo y mandarlo por otro puerto.
La cuestion es que no se como decirle al codigo esto.
Gracias de antemano.
Os adjunto codigo por si os sirve de ayuda echar un vistazo.
Saludos