Existe dos formas de introducir señales al Osciloscopio Virtual: mediante un archivo
y mediante una comunicación TCP/IP.
La primera permite tener almacenadas en disco las señales con las que posteriormente
se vaya a trabajar, así se puede poner ejemplos de señales para que el alumno
intente encontrar la mejor forma de visualizar la señal, al igual que haría con
un osciloscopio real.
A parte, y aprovechando el proyecto HSWeb, el OV permite que la señal sea
enviada a través del protoco TCP/IP y por tanto, a través de cualquier red que
soporte este protocolo como pueda ser Internet.
El formato de la señal es el mismo para la señal adquirida a través de un archivo y la señal adquirida a través del puerto de comunicaciones, únicamente varía en el tipo del flujo de datos del origen, en el primero será un archivo con extensión .sig y el segundo será una conexión mediante Sockets al puerto de comunicaciones 5454.
La primera información que debe aparecer en el flujo de datos es la siguiente:
ValorMax:ValorMin:NumMuestras:Frec:
Donde
Tras esta corta cabecera, deberemos colocar un salto de línea y, a continuación,
los datos de 12 bits.
Estos datos deben ser enviados con el byte bajo primero y seguido del byte alto.
La señal debe oscilar entre los valores de 0 al 4095 y antes de ser enviado, tanto
el byte alto como el byte bajo deben ser restado por el número 128.
Veamos un pequeño código para realizar esta operación, donde x es una variable
entera y su valor oscila entre 0 y 4095 y f es el flujo de datos de salida:
b=(x&0xff)-128;
a=((x>>8)&0xff)-128;
f.write(b);
f.write(a);
Si al realizar la señal, se desea enviar al osciloscopio mediante el protocolo
TCP/IP, simplemente tiene enviarla a través de Socket establecido a tal
efecto por el puerto 5454 desde el servidor HSWeb a la dirección IP del cliente.
Sin embargo, si lo que quiere es generar un archivo para poder recoger la señal
en cualquier momento, debe realizar las siguientes acciones: