Si queréis realizar nuevos tutoriales para que aparezcan en el Osciloscopio Virtual,
podréis hacerlo muy fácilmente mediate un editor de texto.
El lenguaje que se utiliza es muy básico como veremos y no creo que tengáis problemas
para realizar nuevos tutoriales. Lo primero que se debe colocar es un titulo
mediante la siguiente sintáxis:
TITULO nombre del título.
Con esta línea hemos introducido toda la información global que necesita el tutorial. Ahora se debe introducir cada uno de los bocadillos como sigue:
NUX coordenada X donde queremos que aparezca el bocadillo.
NUY coordenada Y.
FLECHA true o false dependiendo de si queremos que aparezca la flecha roja o no.
TEXTO
Aquí introduciremos todo el texto
separando cada línea con un salto
de línea.
FINTEXTO
ATRIBUTOS
Aquí colocaremos los cambios que se realizarán sobre el osciloscopio antes de que
aparezca el bocadillo.
FINATRIBUTOS
De esta forma podemos introducir tantos bocadillos como queramos repitiendo cada uno de los campos de NUX, NUY, TEXTO y ATRIBUTOS.
Para los más puritanos veamos a continuación la sintaxis exacta:
TITULO título
NUM numero_de_bocadillos
[BOCADILLO...]
Donde cada bocadillo está definido como sigue:
NUX coordenada_X
NUY coordenada_Y
TEXTO
[frase...]
FINTEXTO
[ATRIBUTOS
[atributo valor...]
FINATRIBUTOS]
El atributo puede ser:
btnpower { 0 | 1 } : Despulsa/Pulsa el botón de power.
btnxy { 0 | 1 } : Despulsa/Pulsa el botón de XY
btnatnormal { 0 | 1 } : Despulsa/Pulsa el botón de At/Normal
btn+- { 0 | 1 } : Despulsa/Pulsa el botón de +/-
btnxmag { 0 | 1 } : Despulsa/Pulsa el botón de X-Mag
btninv1 { 0 | 1 } : Despulsa/Pulsa el botón de Inv1
btninv2 { 0 | 1 } : Despulsa/Pulsa el botón de Inv2
btnch12 { 0 | 1 } : Despulsa/Pulsa el botón de CH1/2
btndual { 0 | 1 } : Despulsa/Pulsa el botón de Dual
btnadd { 0 | 1 } : Despulsa/Pulsa el botón de Add
btndigital { 0 | 1 } : Despulsa/Pulsa el botón de Digital
btnacdc1 { 0 | 1 | 2 } : Conmuta los valores del botón en AC/DC/GND siendo GND=0, AC=1 y DC=2.
btnacdc2 { 0 | 1 | 2 } : Conmuta los valores del botón en AC/DC/GND siendo GND=0, AC=1 y DC=2.
btntime { 0.2 | 0.1 | 0.05 | 0.02 | 0.01 | 0.005 | 0.002 | 0.001 | 0.0005 | 0.0002 | 0.0001 | 0.00005 | 0.00002 | 0.00001 | 0.000005 | 0.000002 | 0.000001 0.0000005 }: Pone un valor en el botón TIME.
btntimefino { 0 | 0.5 | 1 | 1.5 | 2 | 2.5 | ... | 22.5 }: Pone un valor en el botón fino de TIME
btnvolt1 { 20 | 10 | 5 | 2 | 1 | 0.5 | 0.2 | 0.1 | 0.05 | 0.02 | 0.01 | 0.005 | 0.002 | 0.001 | 0.0005 }: Pone un valor en el botón V/Div del canal 1
btnvolt2 { 20 | 10 | 5 | 2 | 1 | 0.5 | 0.2 | 0.1 | 0.05 | 0.02 | 0.01 | 0.005 | 0.002 | 0.001 | 0.0005 }: Pone el valor en el botón V/Div del canal 2
btnvoltfino1 { 0 | 0.5 | 1 | 1.5 | 2 | 2.5 | ... | 22.5 }: Pone el valor en el botón fino de V/Div del canal 1
btnvoltfino2 { 0 | 0.5 | 1 | 1.5 | 2 | 2.5 | ... | 22.5 } : Pone el valor en el botón fino de V/Div del canal 2
btnxpos { -20 | -19 | ... | 0 | ... | 18 | 19 }: Pone el valor en el botón XPos
btnintens { i*255/24 }: i>=0 ^ i<=24: Pone el valor en el botón Intens
btnfoco { 0 | 1 | ... | 13 }: Pone el valor en el botón Foco
btnholdoff { i*100/45 }: i>=0 ^ i<=45: Pone el valor en el botón HoldOff
btnlevel { i*100/46-100 }: i>=0 ^ i<=92 : Pone el valor en el botón Level
btnypos1 { -145 | -144 | ... | 0 | ... | 144 | 145 }: Pone el valor en el botón YPos del canal 1
btnypos2 { -145 | -144 | ... | 0 | ... | 144 | 145 }: Pone el valor en el botón YPos del canal 2
btncalidad { 1 | 2 | ... | 10 }: Pone el valor en el botón de Calidad. Estos valores van de 1 a 10
btnciclica1 { 0 | 1 } : Despulsa/Pulsa el botón de Ciclica1
btnciclica2 { 0 | 1 } : Despulsa/Pulsa el botón de Ciclica2
ent1 nombre_archivo : Carga un archivo de muestras en la entrada 1
ent2 nombre_archivo : Carga un archivo de muestras en la entrada 2
Si se introduce un atributo erróneo o un valor que no esté contemplado en ese atributo no cambiará.
Una vez creado el tutorial se debe almacenar en el directorio donde se encuntra el simulador: Osciloscopio/Simulador. Además, debe tener una extensión acorde con el idioma. El archivo Idiomas.txt contiene una lista de los idiomas que se admiten. Esta lista es fácilmente actualizable, sin modificar ninguna línea de código, accediendo al archivo de Idiomas.txt. Dicho archivo contiene el siguiente fragmento de texto:
Español
esp
English
eng
Como se puede apreciar, el archivo Idiomas.txt es muy simple y contiene
una lista de idiomas y su correspondiente extensión. La extensión nos
indicará qué estensión tiene los archivos de tutoriales. La primera línea corresponde
a un idioma, mientras que la segunda a la extensión asociada, así que si un archivo
tiene la extensión .esp, el OV sabrá que es un tutorial en Español.
La tercera linea vuelve a ser un idioma, mientras que la cuarta es la extensión de
los archivos asociados a ese idioma, y así sucesivamente.
Si quisieramos añadir un nuevo idioma, únicamente habría que añadir al archivo anterior
el idioma y la extensión asociada a dicho idioma, veamos un ejemplo: vamos a añadir
el francés a la lista de idiomas.
Español
esp
English
eng
French
fr
Una vez asinado un nombre y una extensión al archivo y almacenado dicho archivo en el directorio correspondiente, únicamente queda modificar el archivo Directorio.txt para que el OV reconozca que existe dicho archivo, añadiendo el nombre del archivo, a la lista de archivos que contiene este documento.