|
|
|
|
En el mercado existen multitud de lenguajes de programación para Ms-Dos. Muchos de estos lenguajes como ( Cobol, Clipper, Basic, etc...) acceden al driver "Ansi.sys" que interpreta secuencias de escape emitidas por el teclado, la pantalla y otros periféricos del PC. Por ello nos hemos visto obligados a utilizar este driver en nuestro ''MIP5B, PC de mano', el cual, al ser estándar nos limita la configuración de pantalla. Esto significa que el driver 'Ansi.sys' configura la pantalla con 25 líneas x 80 columnas (que es el estándar) mientras que nuestro Mip5B tiene una pantalla de 8 líneas x 20 columnas. Por eso, cuando instalemos el driver 'Ansi.sys' en el terminal Mip5b toda la información del sistema operativo aparecerá en la última línea de la pantalla. MIPSA ha buscado una solución ha este inconveniente para que los programas desarrollados en cualquier lenguaje para Ms-dos, puedan correr en nuestro terminal. La solución parte de un pequeño programa que le hemos llamado 'xansi.exe'. Este programa va a ser el interprete de todas las opciones que el driver 'Ansi.sys' no nos puede ofrecer debido a su estandarización. Si quiere programar en C++ sin nuestras librerías puede utilizar nuestro programa 'xansi.exe' para acceder al láser y al teclado. De esta forma se evitaría la necesidad de desarrollar sus rutinas para el láser y para el teclado. Para que podamos utilizar el 'Ansi.sys' necesitamos que este sea activado desde el "config.sys" cuando se reinicia el terminal Mip5B. Cuando se resetea el terminal (ver página conexiones), verá en pantalla como se van cargando el sistema operativo y los drivers. Si el driver "Ansi.sys" se activa sólo podremos disponer de la última línea de pantalla desde el prompt de Ms_Dos. MIPSA ha preparado un sistema para poder habilitar y deshabilitar el ansi.sys. Para ello es necesario que tengamos en el directorio c:\utils dos ficheros BAT que harán esta tarea. Estos ficheros son: - E.BAT ( Habilita el driver Ansi.sys) - D.BAT ( Deshabilita el driver Ansi.sys) Si desea obtener más información acerca del sistema diríjase a la página del Sistema Mip5b
DRIVER
EXTENDIDO PARA PROGRAMAS SIN LIBRERIAS MIPSA El motivo de la creación del driver llamado xansi es facilitar el acceso a características especiales del terminal Mip5b a programas que no usan las librerías C++ de MIPSA. Para realizar la comunicación con estos programas se ha escogido un tipo de interfaz común a casi cualquier lenguaje o entorno de programación, la pantalla. Para ello, y dado que el terminal Mip5b posee una pantalla de 20x8 líneas de texto, se han elegido las coordenadas 40,15 como clave para administrar los comandos a través de pintar determinados caracteres en dichas coordenadas. Por ejemplo, para activar el lector de códigos de barras, escribiremos el carácter ‘C’ en las coordenadas 40,15. En un lenguaje como cobol, la sentencia podría quedar de esta forma, ‘DISPLAY “C” LINE 15 POSITION 40’. Tras leer un código será insertado en el buffer de teclado. El funcionamiento a bajo nivel del driver seria el siguiente:
Descripción
de los parámetros incluidos en el archivo ini del driver. Los valores configurables desde el archivo xansi.ini hacen sobre todo referencia al lector de códigos de barra y son los siguientes. BARCODE: Se refiere a si el driver instalará el andel de teclado para poder manejar los códigos leídos y si se usará el lector de códigos. Puede tomar los valores “ENABLED” o ”DISABLED” DECODER: Se refiere al tipo de pistola o lector que se encuentra instalado en el terminal a usar. Existen diferentes modelos con y sin decodificador interno. Puede tomar los valores “ENABLED” o ”DISABLED” CODE TYPE: Se refiere al tipo de código que será leído, puede ser un tipo en particular o aceptar cualquiera de los soportados. Puede tomar los siguientes valores: “EAN 13”, ”CODE 39”, ”2 OF 5”, ”EAN 128”, ”ALL”. RETRIES: Se refiere al número de intentos de lectura de un código de barras que realizará el driver a nivel interno antes de descartar una lectura como errónea. Valor numérico, recomendamos el valor 2. MAXDIGITS: Representa el máximo de dígitos que tendrán los códigos a leer, no se decodificará nada que supere esta longitud. Valor numérico. MINDIGITS: Al igual que con el máximo, no se decodificará ningún código de longitud inferior a lo especificado en este parámetro. Valor numérico.
READSPEED:
Se refiere a la velocidad a la que trabajará
la cpu en el momento de realizar la captura. Valor numérico. (Entre 8 y 33,
recomendado). Un ejemplo de configuración podría ser el siguiente: BARCODE = “ENABLED”
DECODER
= “DISABLED”
CODE
TYPE = “ALL”
RETRIES
= 2
MAXDIGITS
= 30
MINDIGITS
= 2
READSPEED
= 16 Descripción de los comandos disponibles. Posicionándonos en las coordenadas 40,15, intentaremos escribir cualquiera de los siguientes caracteres:
Comandos añadidos a la última versión(1.04) La versión 1.02 añade dos nuevos comandos a los ya documentados arriba:
ACCESO A LOS PUERTOS RS-232 DE COMUNICACIONES Una parte importante en el mundo de los terminales portátiles es la posibilidad de transmitir y recibir ficheros.
Programa de comunicaciones instalado en el terminal Mip5 llamado "MIPLOAD". Programa de comunicaciones instalado en el Pc para Windows llamado "Mipcom2001". MIPLOAD
Sirve para recibir toda clase de ficheros. Puede utilizarlo para recibir el programa y para recibir ficheros de datos.
El
programa de comunicaciones Mipload.exe y el fichero k.bat
irán cargados en el directorio utils del terminal. El fichero K.bat
sirve para cargar automáticamente un programa en el directorio usuario del
terminal. Está preparado para los programas realizados en C++ con librerías MIPSA, en los cuales el nombre del programa es Mip.exe. Si se quiere
utilizar con un programa que no se llame así lo puede modificar a su medida. Por otro lado puede utilizar el programa para enviar y recibir ficheros del terminal Mip5B.
En
el directorio del PC tendrá el programa que va a cargar en el terminal. Además
tendrá un fichero llamado Mipfile.ini que contendrá el nombre de los ficheros
que va a cargar. Ejemplo: ;MIPSA FILE LIST PHONENUMBER
= 91111112 RECFILEBIN = MIP.EXE RECFILE = WINDOW.TXT RECFILE = HELPPC.TXT RECFILE = BAS.TXT RECFILE = MIP.BAT RECFILE = MIP.SYS RECFILE = TABLECFG.CFG RECFILE = E.BAT RECFILE = R.BAT RECFILE = PEDIDO.DAT
Desde
el prompt de ms-dos escriba "K" y pulse "Ent". El programa
se cargará automáticamente. Si el nombre del programa no es Mip.exe aparecerá
un mensaje de error.
Al tratarse como un programa independiente lo podemos utilizar llamándole desde cualquier programa de captura de datos que hayamos desarrollado en cualquier lenguaje. Para comprobar su funcionamiento desde el prompt de Ms-Dos pueden seguir los siguientes pasos:
En
el directorio del programa tendrá que tener dos ficheros *.bat para enviar y
recibir. Por ejemplo, e.bat y r.bat.
El
formato del fichero puede ser así: R.bat: cd..
cd
usuario
del
mipfile.ini mipload rec.ini E.bat
cd..
cd
usuario
del
mipfile.ini
Mipload
trs.ini
Los
ficheros rec.ini y file.ini tienen el mismo formato que mipfile.ini lo único
que contendrán únicamente los ficheros que quieres transmitir o recibir. A continuación describiremos todos los parámetros de comunicación que podemos transmitir y recibir: PHONENUMBER : Para indicar el número de teléfono del módem llamar. Ejemplo: PHONENUMBER = 915551234 NOTNEEDED: Para especificarle ficheros que si no son cargados no debe darse mensaje de error. Este parámetro es necesario porque es posible que haya tablas que no sea imprescindible cargarlas. El nombre de fichero que se especifique aquí debe estar especificado anteriormente como de carga o de descarga. Ejemplo: NOTNEEDED = DATOS.DAT RECFILEBIN: Para especificar un fichero binario a cargar en el terminal desde el PC. Ejemplos de ficheros binarios son los ejecutables, los comprimidos, etc. Es importante utilizar este comando en vez de RECFILE para binarios, porque si no no funcionará. Ejemplo: RECFILEBIN = MIP.EXE TRSFILEBIN: Para especificar un fichero binario a transmitir desde el terminal al PC. Es importante utilizar este comando en vez de TRSFILE para binarios, porque si no no funcionará. Ejemplo: TRSFILEBIN = MIPCHECK.EXE RECFILE: Para especificar un fichero no binario a recibir en el terminal desde el PC. Ficheros no binarios son los que se editan con cualquier programa ( EDIT, WORDPAD, BLOC DE NOTAS ) y no aparecen caracteres extraños. Ejemplo: RECFILE = DATOS.TXT TRSFILE: Para especificar un fichero no binario a transmitir al PC desde el terminal. Ejemplo: TRSFILE = DATOS.OUT BAUDRATE: Para especificar los baudios de la comunicación. Debe tenerse en cuenta que si no hay fichero de parámetros en el directorio, como ya hemos comentado el programa lo intentará cargar desde el PC, y siempre lo hará a 115200 baudios. Por tanto, si se desea trabajar desde la primera vez a 38400 , deberá haber un fichero de parámetros en el directorio que lo especifique. Ejemplo: BAUDRATE = 38400 PORT: Especifica el puerto por el que realizar la comunicación. Posibles valores son los siguientes:
o
RS-232: Para comunicación por cable.
o
CONTACT: Para comunicación por cuna de contactos.
o
MODEMRS-232: Para comunicación por módem externo via cable RS-232.
o
MODEMCONTACT: Para comunicación por módem externo via cuna de
contactos.
Tras
concluir la comunicación, el programa dejará en el directorio un fichero
llamado COMREP.TXT especificando como ha sido la comunicación, con la siguiente
estructura para cada fichero que haya habido en la comunicación;
12
posiciones para nombre de fichero + 1 espacio + 2 Resultado + 2 de salto de línea.
El
resultado será “OK” si fue correcta la comunicación y “ER” en caso
contrario.
El
mipcom2001 tiene que tener el parámetro conexión con Módem. Debe utilizar módems
externos compatible Hayes. Aconsejamos el modem Multitech o Diamond. Velocidad
115.200 sin paridad. El número de teléfono se indica en el fichero *.ini.
|
|
|