Home

MANUAL DE REFERENCIA DE BASIC DE

image

Contents

1. 4 94 are IE RS 4 94 SQR Operador matem tico 4 95 STOP Control de ri ica 4 95 STOREO O ST Operador avanzado 4 96 STR Operador de string tea dt a o e a 4 97 STRING Gerencia de memoria 4 98 SYSTEM MISECIONEO N e A LESA ASS 4 99 TAB Entradas SalldaS errar id ee daa 4 100 TAN Operador matem tico 4 101 TIME Interrupci n cocida ee ida 4 102 TIMES Operador de string 4 103 TRACE Himinar errores cirio AA Aa 4 104 UCASES Operador de ring 4 106 USIN G Entradas Soliddas ts ivi 4 107 USING Colocando formato 5 4 108 USING Colocando formato a n meros exponenciales 4 108 anual de referencia de BASIC de FACTS Eng 4 3 Cap tulo 4 D eclaraciones F nmatosde diri ei aaa 4 109 VAL Operador de string ercer be 4 110 WORD Operador avanzado 4 111 QAline columna Entradas SalidaSs 4 112 4 4 anual referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones Cap tulo 4 Declaraciones Declaraciones Prop
2. 4 71 PHO y PEL Entradas salidas cados A 4 72 PICK Entradas salidas 21 A e ados E 4 73 Operador avanzado 4 74 PRINT EntradassalidaS 0 eber ie ERAN 4 75 PUSH Operador avanzado 4 76 READ Entradas SalldasS gt oia 4 77 REM Miscel neo 4 78 RESTORE Entradas salidas uds 4 79 RETI IMtenrUPCI N anota ls brida 4 80 RETURN Control de flujo dai Ae 4 81 REVERSE Operador de string 4 82 RIGHTS Operador de string 4 83 RND Operador matem tico 4 84 SETINPUT Entradas salidas gt 200 A AAA E 4 85 SETPORT Entrad ssalidas res oeu A aia 4 86 SETPORT Handshake por Software 4 88 SETPORT Handshake bidireccional de Hardware CTSRTS 4 89 SETPORT Control de flujo Unidireccional del Hardware de CTS 4 89 SETPORT Ning n Handshake 4 89 SGN Operador matem tico 4 93 SIN Operador matem tico 4 94 SPC lt Entradas SalldasS void e ea 4 94 SQR Operador matem tico
3. 4 95 STOP Control de flujo 4 95 STORE ST Operador avanzado 4 96 STR Operador aeea rra 4 97 STRING Gerencia de memoria 4 98 SYSTEM Miscelaneos atan add 4 99 Entradas SalidaS oooooooommmmmcrrr 4 100 TAN Operador matem tico 4 101 IV anual de referencia de BASIC de FACTS Contenido s drid ti At oia 4 102 TIMES Operador de string 4 103 TRACE Eliminar errores 4 104 UCASE Operador de ring 4 106 USING Entradas salidas cerillas 4 107 USING Colocando formato 5 4 108 USING Colocando formato a n meros exponenciales 4 108 Formato de strings e sl dos 4 109 VAL Operador de string 4 110 WORD Operador avanzado 4 111 columna Entradas salidas 4 112 Cap tulo 5 Operadores matem ticos Tabla de operadores matem ticos de argumentos Cap tulo 6 Operadores l gicos y de comparaci n Operadores 091 095 Louis rss 6 2
4. ae E 3 Avanzado la A A A NE rt oz E 3 anual de referencia de BASIC de FACTS Eng Contenido E ji anual de referencia de BASIC de FACTS Eng INTRODUCCI N En este cap tulo INTOQUECI N er 1 2 Prop sito de este documento 1 3 Qui n debe leer este Manual 1 2 ADOYO TECNICO dario a ds ee 1 2 CONVENCIONES 0 5 1 3 Cap tulo 1 Introducci n o_O ES 1 Introducci n Prop sito de este documento Este documento es una traducci n del documento en ingl s del mismo nombre y describe el compilador BASIC ampliado de FACT 5 Eng que se usa en los m dulos de productos que usan BASIC de FACTS Eng Se pretende que este documento sea usado conjuntamente con el manual de usuario espec fico del m dulo que se ha comprado Este manual describe los comandos las declaraciones y la informaci n de car cter general sobre el compilador La informaci n que es espec fica a un m dulo particular tal como especificaciones del m dulo clavijas de los puertos e instrucciones espec ficas del m dulo se documentan en el manual de usuario de ese m dulo Este manual contiene numerosos ejemplos de uso y de programaci n sin embargo se asume que el usuario tiene cierto conocimiento de BASIC u otra experiencia de programaci n de un lenguaje de un niv
5. rivas co ira aa aleta 3 3 AUTOSTART odas ri A es 3 4 Tabla del modo de reset de autostart 3 5 Variables de retenci n con falta de energ a 3 6 COMMAND AA e oda 3 7 CON Tidens aio iia tdi 3 8 DELPRM e EA da 3 9 AA A IS 3 10 ERASE O 3 11 tido AE ai 3 12 ela al aiii 3 13 3 13 REN 3 14 RESET IS 3 15 RUNU tcs pa dado da oda dd eno o a a 3 15 Cap tulo 3 Comandos del sistema Comandos del sistema Todos los comandos del sistema deben ser entrados mientras el m dulo ASC II BASIC est en el COMMAND COMANDO Cualquier tentativa de incluir un comando de sistema en un programa generar un mensaje de error BAD SINTAX sintaxis errada EJ Los comandos de sistema descritos en este cap tulo son AUTOLN AUTOSTART COMMANDO CONT DELPRM EDIT ERASE LIST NEW PROGRAM RENUMBER RESET RUN SAVE Se describen en las p ginas a continuaci n cada uno de los comandos Los comandos son descritos en el formato siguiente Funci n D escripci n Sintaxis Como se escribe en el programa Vea tambi n O tros comandos realcionados Uso Se definen los operand
6. es 52 Al tratar de ejecutar las declaraciones WHILE en modo COMMAND se generar un mensaje de error BAD SYNTAX LAZO D WHILE gt 10 DO gt 20 1 1 1 gt 30 gt 40 WHILE 1 lt 5 gt 50 PRINT1 gt RUN 12345 LAZO DO WHILE UNO DENTRO de OTRO gt 10 1 1 1 C C 1 gt 20 PRINT1 SPC 1 IC gt 30 UNTIL C 3 C 0 PRINT1 gt 40 UNTIL 153 gt RUN 11223 3122436 132639 anual de referencia de BASIC de FACTS Eng 4 25 Cap tulo 4 D eclaraciones DSR Miscel neo Funci n O btener el estado de la linea de entrada del handshake de hardware Sintaxis var DSR Veatambi n DTR SETPORT Uso especifica el puerto serial 1 o 2 var vuelve el estado actual de la l nea de 5 ya sea VERDAD todos unos o FALSO Cuando handshake de hardware es permitido la declaraci n SETPORT el protocolo del m dem RTS CT S controla autom ticamente la declaraci n PRINT Con el handshake de hardware deshabilitado se puede poner en ejecuci n un H andshake como quiera por el usuario con DSR Ejemplo La linea de entrada CTS en puerto 1 la clavija 5 est conectada con una l nea de salida del handshake de hardware de un dispositivo externo Por ejemplo sta pod a ser la salida RTS DTR de un dispositivo Evita el desborde del buffer buffer externo de la entrada de los dispositivos externos 1000 IF NOT DSR2 THEN RETU
7. 4 20 DBY Operador avanzado 4 21 anual de referencia de BASIC FACTS Eng Contenido eS J DELAY Miscel neo dd ad AA a il A d a 4 22 DIM Gerencia de memoria 4 23 DO UNTIL Control de flujo 4 24 DO WHILE Control de flujo 4 25 DSR miscelaneo Nas 4 26 DTR Mmissd neo siii a ls o ds 4 27 END Control de flujo 4 28 ERRGHK gt 22 4 29 EXP Operador matem tico 4 32 FOR NEXT STEP Control de flujo 4 33 GO_PROGRAM o Control de flujo 4 35 GOSUB Control de flujo iii ta 4 38 GOTO Control AS 4 40 HEX Operador a el 4 41 IDLE interrupci n _ 4 42 IF THEN ELSE Control de flujo 4 43 INKEY Operador de string 4 44 INLEN Entradas salidas Literario AA a 4 46 INPLEN Entradas salidas 20 tata a A 4 47 INPUT Entradassalldas voei Vet ARA AR 4 48 INPUT Manejo del error de INPUT 4 49
8. 3 13 PROGRAMIO PRM ra e it ia 3 13 REN UMBER via ta nd ely a A daa 3 14 RESET avd SS eeh Taa o ao 3 15 RUN ra ias EE el E E 3 15 SAVE EE 3 16 Cap tulo 4 Declaraciones Dedaraciones aio IA ERE E IAEA AA 4 5 ABS Operador matem tico 4 6 ASC Operador de string 4 6 ATN Operador matem tico 4 7 BIT y BITS Entradas salidas 4 8 BREAK C ntro l caia 4 9 BYTE Operador avanzado 4 10 CALL Operador avanzado 4 11 CBY Operador avanzado 4 11 CHR Operador ring o oococococococcocorcc 4 12 CLEAR Control de flujo 12 2 2 SE a 4 13 CLEAR I interrupciones ireren AAA A AAA AAA 4 13 GLEAR S Control de flujo nis orst RRA Aa 4 14 COMERR Operador avanzado 4 15 COPY Gerencia de memoria 4 16 COS Operador matem tico 4 18 CR Entradas Salldas vo roles eee 4 18 DATA ENtradasSalldas vis RA A AAA 4 19 DATES Operador lt gt
9. 5 250 INPUT 1 260 SYSTEM 2 0 REM Deshabilita verificaci n de fallas error checking CRC 16 270 IF COMERR THEN GOSUB 290 GOSUB ELSE 300 280 RETURN 290 PRINT1 ERROR DE CRC 16 300 PRINT1 PRINT1 310 PRINT1 CRC 16 MSB gt PICK SYSTEM 5 M anual de referencia de BASIC de FACTS Eng 8 7 Cap tulo 8 Avanzado 315 PRINT1 CAR CTER gt CHR PICK SYSTEM 5 H 320 PRINT1 CRC 16 LSB gt PICK SYSTEM 5 L 325 PRINT1 CAR CTER gt CHR PICK SYSTEM 5 L 330 PRINT1 PRINT1 340 RETURN 8 8 M anual referencia de BASIC de FACTS Eng COMO FINALIZAR UN PROGRAMA En este ap ndice Colocando el m dulo CoProcessor en funcionamiento A 2 Ap ndice A Como finalizar un programa Colocando el m dulo CoProcessor en funcionamiento de la mejor forma US D espu s de que se haya terminado la programaci n y el ciclo de afinamiento del programa algunos a esto D ebugging el m dulo est listo para ser puesto en servicio a largo plazo Se recomiendan los siguientes pasos para tener una m xima confiabilidad como se requiere en la mayor a de los usos industriales Estos pasos ayudar n a prevenir una operaci n indeseable debido a un error no detectado en el programa se ales exteriores tales como descargas electrost ticas o se ales incontrolables debido a ambientes fuera tolerancia H aga una copia de respaldo del programa o programas 2 D esh
10. anual de referencia de BASIC FACTS Eng Cap tulo 7 Mensajes de error Se genera el mensaje ENOUGH FREE SPACE despu s de un COMANDO SAVE cuando la longitud del programa actualmente seleccionado generalmente programa 0 en BUFFER de EDIT excede el n mero de bytes restantes en la memoria almacenada del programa El n mero de programas almacenados y el n mero de bytes restantes se exhibe despu s de reset cuando es el AUTOSTART est dentro del modo EDIT modo 0 o 3 El espacio disponible libre de almacenaje del programa tambi n es determinado entrando un comando DELPRM para un programa que no exista Para determinar la longitud del programa que est siendo archivado use LOF Ejemplo gt DELPRM 5 4 stores program 6381 bytes free 7 PROGRAM ACCESS Al tratar de seleccionar un programa almacenado que no exista se generar el mensaje de error PROGRAM ACESS El n mero del ltimo programa almacenado se exhibe despu s de un reset cuando es el AUTOSTART est dentro del modo EDIT modo 0 o 3 STRING TOO LONG El mensaje STRING DEMASIADO LARGO cuando se trata de crear un STRIN G m s largo que la longitud m xima de string definida por la declaraci n STRING Use la STRING para asignar la memoria para strings m s largos o para romper la declaraci n STRING en segmentos UNABLE TO VERIFY Si ocurre un error mientras que se est archivando un programa
11. 102 FOR I 1 20 103 1 104 NEXT 200 gt RENUMBER 100 104 5 gt LIST 10 STRING 8001 79 REM STRING hace CLEAR 20 DEBUG 0 30 LOCKOUT 0 40 BREAK 1 50 IF NOT DEBUG THEN GOTO 105 100 GOTO INLEN1 0 105 DIM REG 20 110 FORI 1A 20 115 REG I 1 120 NEXT 3 14 M anual de referencia de BASIC de FACTS Eng Cap tulo 3 Comandos del sistema RESET RUN Funci n Sintaxis Uso Funci n Sintaxis Uso Ejecutar un reset del software RESET El RESET ejecuta las mismas rutinas de inicializaci n del software ejecutadas despu s de que haya ocurrido un reset del hardware El RESET se D3 ejecutar en el modo COMMAND para verificar la operaci n de AUTOSTART Coloca el contenido de las tablas de variables en cero y ejecuta programa seleccionado RUN Entrando RUN hace que BASIC coloque todas las variables en cero interrupciones en cero reset stacks y comienza la ejecuci n del programa corrientemente seleccionado desde el primer n mero de l nea de programa puede ser parada con STOP enviando al m dulo un car cter lt CTRL C gt deshabilitar lafunci n lt CTRL C gt vea la declaraci n BREAK RUN comienza siempre la ejecuci n con el n mero de l nea de programa m s bajo NOTA Si usted est usando el modo 2 del AUTOSTART entonces no use el comando RUN para comenzar el programa Para comenzar la ejecuci n sin borrar las var
12. 8 6 anual de referencia de BASIC de FACTS Eng Cap tulo 8 Avanzado RP Examinando los caracteres CRC 16 Para los prop sitos de eliminaci n de errores los dos ltimos caracteres CRC 16 generados ya sea para una transmisi n o una recepci n puede ser examinados por BASIC seg n lo mostrado abajo 10 PRINT1 el valor del ASCII del ltimo MSB de CRC 16 15 PRINT1 PICK SYSTEM 5 H 20 PRINT1 el valor del ASCII del ltimo LSB de CRC 16 25 PRINT1 PICK SYSTEM 5 1 Programa de demostraci n del CRC El programa siguiente muestra el uso de la funci n del CRC ya inclu da en BASIC El programa permite que usted simule a recepci n de datos usando el teclado En la pr ctica los datos recibidos en una STRING por la declaraci n INPUT ser an examinados usando al operador ASC El operador ASC puede ser usados para agarrar caracteres en un string 100 REM Versi n de programa CRC 16 para el BASIC ampliado de FEAVCTS Eng 110 CL EAR STRING 8001 79 8 120 PRINT1 Resto inicial CRC 16 por defecto WORD 132H 130 SETINPUT 0 1 0 6 65535 5000 140 PRINT1 CRC 16 CON MSB PRIMERO 150 PRINT1 Entre por favor lo siguiente 160 SYSTEM 2 1 SYSTEM 3 0 REM PERMITE CRC 16 MSB PRIMERO 170 GOSUB 240 180 PRINT1 CRC 16 CON LSB PRIMERO 190 PRINT1 Entre en por favor lo siguiente 200 SYSTEM 2 1 SYSTEM 3 1 REM ACTIVA CRC 16 LSB PRIMERO 210 SETINPUT 0 1 0 6 65535 5000 220 GOSUB 240 230 END 240 PRINT1
13. Funci n Sintaxis Vea tambi n Uso Ejemplo Suspende la ejecuci n del programa STOP END CONT STOP se usa para detener la ejecuci n del programa D espu s de que se haya parado la ejecuci n del programa las variables pueden ser mostradas y ser modificadas La ejecuci n del programa puede ser reanudada donde ha parado con el comando CONT La declaraci n STOP permite el programar b squeda de errores debugging en forma f cil gt 10 FOR I 0 TO 9 D I 1 NEXT gt 15 STOP gt 20 FOR 1 0 TO 9 PRINT1 D I SPC 1 NEXT gt RUN STOP in line 20 READY gt FOR 1 5 TO 9 D I NEXT 56789 gt D 9 0 gt CONT 0123456780 READY gt anual de referencia de BASIC de FACTS Eng 4 95 Cap tulo 4 D eclaraciones STOREO STO operador avanzado Funci n Almacena un n mero de coma flotante de seis bytes en la direcci n especificada Sintaxis STOREQ direcci n Veatambi n BYTE WORD LOAD Uso La declaraci n STORE permite que el usuario almacene n meros de coma flotante en cul aquier lugar en la memoria de datos La direcci n es la posici n de memoria m s alta donde el n mero a ser almacenado El n mero que se almacenar se debe poner primero en el stack del argumento con la declaraci n PU SH Ejemplo Vea el CAP TULO 8 AVANZADO 4 96 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones STR Operador de string Funci n Sintaxis
14. READY gt P l 100 anual de referencia de BASIC de FACTS Eng 4 39 Cap tulo 4 D eclaraciones GOTO Control de flujo Funci n Transfiere la ejecuci n la l nea de programa especificada Sintaxis GOTO n mero del nea Vea tambi n PROGRAM GOSUB Uso La declaraci n GOTO har que BASIC transfiera el control directamente a la l nea de programa especificada por el n mero de l nea Si no existe un n mero del nea ser generado el mensaje ERROR INVALID LINE NUMBER Si se ejecuta la declaraci n GOTO en el modo COMMAND BASIC no realiza el equivalente a la declaraci n CLEAR En vez de eso el control se transfiere a la l nea de programa especificada con los valores sin cambio detodas las variables y del estado de interrupciones Si se ejecuta GOTO en el modo COMMAND despu s de que se haya corregido una l nea todas las variables se configuran a cero y todas las interrupciones son desactivadas Ejemplo 10 DEBUG NOT O0 20 IF NOT DEBUG THEN GOTO 100 30 PRINT1 Permitido debug teclee CONT para continuar 40 STOP 100 4 40 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones 5 Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo Relacionado Convierte un n mero entero en su equivalente hexadecimal de string ASCII variable 1 PHO 1 STR La puede estar el
15. Tabla de operadores l GICOS 6 2 Tablas de verdad de los operadores L QICOS 6 2 Operadores de comparaci n 6 3 Tabla de operadores de comparaci n 6 3 Cap tulo 7 Mensajes de error ARGUMENT STACK OVERFLOW 882 a dt dad 7 2 ARITHMETIC OVERFLOW coco castas ario dada dos sl o io 7 2 UNDERFLOW vesical 7 2 ARRAY SIZE SUBSCRIPT OUT OF RANGE occccccc 7 2 BAD ARSUMENT a 7 3 BAD SYNTAX o ras o tai a 7 3 CANT CONTINUE pare 7 3 CONTROL STACK OVERFLOW tai e 7 3 CORRUPTED PROGRAM ENCOUNTERED 7 3 DIVIDE BY ZERO a ias ii 7 4 EXPRESSION TOO COMPLEX xo ai EA A AA DA 7 4 INVALID UNE NUMBER tarros carre ri 7 4 anual de referencia de BASIC de FACTS Eng V Contenido MEMORY ALLOCATION eire A A AA RARAS ANA 7 4 cara RENATO N s 7 4 NOT ENOUGH FREESPAGE adi ad atan 7 5 PROGRAM ACCESS vii Se A Aa 7 5 SIRING TOO LON GEES AA E 7 5 UNABLETO VERIE AE RARA a 7 5 Cap tulo 8 Avanzado FORMATO de ALMACENAJE de COMA FLOTANTE 8 2 FORMATO de ALMACENAJE VARIABLE sin dimensi n 8 2 FORMATO de ALMACENAJE VARIABLE CON dime
16. 4 75 Cap tulo 4 D eclaraciones PUSH Operador avanzado Funci n Coloca un valor en el stack Sintaxis PUSH expresi n Veatambi n Uso PUSH EM PUJA coloca el valor de laexpres n en la parte superior del stack del argumento El valor de la ltima expres n en la lista de expresiones de la declaraci n PUSH ser el ltimo valor puesto el stack El PUSH y el POP son convenientes para pasar valores a y desde subrutinas de prop sito general Ejemplo Este ejemplo usa PUSH y POP para pasar datos a una subrutina de prop sito general que realice la tarea repetitiva de separar cuatro d gitos BC D gt 10 PUSH 700 53 gt 20 GOSUB 100 gt 30 TRANSFER 128 TRANSFER LSB gt 31 REM Env a 4 d gitos BCD al PLC gt 40 TRANSFER 129 TRANSFER MSB gt 50 INPUT VALOR PARA EL PAR DE REGISTROS 400 4012 0 gt 60 PUSH VAL 0 gt 70 GOSUB 100 gt 80 PRINT1 REGISTRO 400 LSB gt 85 PRINT1 REGISTRO 401 MSB gt 90 END gt 100 0 MSB INT D 100 gt 101 REM los dos d gitos m s significativos gt 110 LSB D INT D 100 gt 111 REM los dos d gitos menos significativos gt 120 RETURN gt RUN VALOR PARA EL PAR DE REGISTROS 400 401 9642 Registro 400 42 Registro 401 96 TRANSFER es una instrucci n usada en solamente algunos m dulos 4 76 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones READ Entradas salidas Funci n Si
17. Back_space 234 0 110 PRINT1 Longitud del string entrado INPLEN 120 PRINT1 Primer car cter del string es 121 PRINT1 LEFTS 0 1 130 RETURN RUN Entre lt Ctrl G gt Back_space 1234 1234 Longitud del string entrado 6 Primer car cter del string es el terminal suena debido al car cter BELL Entre lt Ctrl G gt Back_space 1234 1234 Longitud del string entrado 4 Primer car cter del string es 1 4 50 anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones Caso especial de una entrada de car cter de control Existe un caso especial de entrada de car cter de control cuando los caracteres de control ASCII NULL lt Ctrl gt ASCII 0 y lt Ctrl M gt ASCII 13 representan datos Estos caracteres son usados como delimitadores por toda las declaraciones que manejan strings excepto ASC Por lo tanto s lo puede ser usada la funci n ASC para procesar strings conteniendo los caracteres NULL y del CR como datos Ejemplo 10 NO_ED 1 11 REM No permite correcci n entrar caracteres de control 20 SETINPUT 0 O 5 10000 2000 30 PRINT1 Entre CHR 34 12 lt Ctrl M gt lt Ctrl gt 31 PRINT1 3 CHR 34 40 PRINT1 Tiene 5 segundos para entrar el primer car cter 50 0 60 PRINT1 Longitud de la entrada INPLEN 70 PRINT1 Declaraci n LEN dice la longitud de string 71 PRINT1 LEN 0 75 PRINT1 Valores
18. MANUAL DE REFERENCIA DE BASIC DE FACTS ENG No de art culo 5 Cubierta E 1 2 anual de referencia de BASIC FACTS Eng Advertencias MARCAS REGISTRADAS AUTOMATIONDIRECT COM es una marca registrada de Automationdirect com COPROCESSOR es una marca registrada de FACTS Engineering Inc PROPIEDAD INTELECTUAL COPYRIGHT Copyright 2004 FACTS Engineering Inc 8049 Photonics Dr New Port Richey Florida 34655 USA anual de referencia de BASIC de FACTS Eng Advertencias ADVERTENCIA Gracias por comprar el equipo de automatizaci n de FACTS ENGINEERING D eseamos su nuevo equipo de automatizaci n de FACTS ENGINEERING funcione con seguridad Cualquier persona que instala o aplica este equipo debe leer esta publicaci n y cualquiera otra publicaci n relevante antes de instalar o de hacer funcionar el equipo Para reducir al m nimo el riesgo potencial de problemas de seguridad usted debe seguir todos los c digos locales y nacionales aplicables que regulen la instalaci n y la operaci n desu equipo Estos c digos var an de rea a rea y cambian generalmente con el tiempo Es su responsabilidad determinar qu c digos deben ser seguidos y verificar que el equipo la instalaci n y la operaci n est de acuerdo con la ltima revisi n de estos c digos Como m nimo usted debe seguir todas las secciones aplicables del N ational Fire Code N ational Electrical C
19. Operador de string Funci n DATES configura y recupera la fecha del calendario respaldado por bater a Sintaxis expresi n de string variablede ring DATES Veatambi n TIMES Uso Cuando est ajustada a formato correctamente la expres n de tring configura el a o el mes el d a del mes y el d a de la semana del calendario respaldado por bater a La expres n de debe estar en una de las formas siguientes mm dd aa s por ejemplo D 9 25 88 7 mm dd yy w variable de es una variable de string que contiene la fecha del calendario respaldado por bater a devolvida DATE DATES devuelve una string de longitud variable en la forma mm dd aa El reloj del calendario respaldado por bater a tiene una precisi n de 1 minuto por mes el m dulo a 24 grados Ejemplo gt DATES 10 10 88 1 gt PRINT1 DATES Monday 10 10 88 gt DATES 2 29 gt PRINT1 DATES Monday 02 29 88 gt DATES 1 1 90 4 gt P DATES Thursday 01 01 90 gt PRINT1 El a o es 19 MID DATES LEN DATES 1 El a o es 1990 gt MON_POS INSTR DATES 1 gt DAY_POS INSTR DATES 1 gt Estamos en el mes VAL MID DATES MON_POS 2 Estamos en el mes 1 4 20 M anual referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones DBY Operador avanzado Funci n Escribe a las direcciones de memoria especiales memoria interna de la CPU Sintaxis varia
20. ltimo car cter hasta el en simo car cter de la expresi n de tring Si es mayor o el igual ala longitud dela expres n de string entonces se devuelve toda la destring Si 50 entonces REVERSES devuelve el string sin caracteres N ull REVERSE permite que usted invierta la orden de todo o una parte de una string en una sola declaraci n gt PRINT1 REVERSES S VER 20 AL REV S gt PRINT1 REVERSE N20G45 2 54 4 82 anual referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones RIGHT Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo RIGHT devuelve una string comenzando el en simo car cter desde el ltimo car cter variable de RIGHT expres n de LEFT MID REVERSE n es una expresi n y especifica el n mero de caracteres de la expres n de que se asignar a la variable de lt ring EM n debe estar en el rango 0 254 RIGHT devuelve una string que consiste en el en simo hasta el ltimo car cter dela expresi n de ring Si es mayor o el igual a la longitud de la expresi n de string entonces se devuelve toda la expres n de gring Si es 0 entonces RIGHT devuelve el car cter null RIGHT 5 permite que usted escoja el final de un string gt PRINT1 RIGHT BASIC AMPLIADO DE FACTS 5 FACTS Usando MID y LEN para alcanzar el mismo resultado que gt 0 FIN DE
21. A 3 1010 RETURN gt RUN LN10 1 LN12 TRACE OFF TRACE ON LN15 10 LN20 6 LN12 LN15 12 LN20 7 LN12 TRACE OFF TRACE ON LN30 LN100 LN1000 9999 031000 DECLARACI N PRINT 3333 LN1010 LN 20 READY gt TRACE 2 15 gt RUN Step ON press H for help LN15 10 Presione la barra de espacio LN20 2 JP I 1 M anual de referencia de BASIC de FACTS Eng 4 105 Cap tulo 4 D eclaraciones 5 5 Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo U devuelve una string que consiste en caracteres may sculos solamente variable de string UCASES expresi n de string LCASES U devuelve una string igual a la expresi n de ring excepto que todos los caracteres alfab ticos en min scula en la expres n de string se convierten en may sculas gt 10 PRINT INPUT1 Imprime resumen del a o hasta la fecha S N 0 gt 20 IF UCASES 0 S THEN GOTO 100 gt 30 PRINT1 UCASES Impresi n cancelada gt 40 END gt 100 REM informe sumario impreso del a o hasta la fecha gt RUN Imprime resumen del a o hasta la fecha S N n Impresi n cancelada READY gt 4 106 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones USING Entradas salidas Funci n Sintaxis Vea tambi n Uso Colocar formatos a valores y strings impresos con PRINT PRINT USING formato expresi n expres n PR
22. Control de flujo 4 95 Usuarios de primera vez 2 2 STORE Oo ST O Operador avanzado 4 96 STR Operador de string 4 97 STRING Gerencia de memoria 4 98 STRING TOO LONG 7 5 VAL Operador de string 4 110 Sugerencias para hacer los programas m s Variables 2 6 r pidos D 2 SYSTEM Miscel neo 4 99 WORD Operador avanzado 4 111 TAB Entradas salidas 4 100 TABLA DE CARACTERES de CONTROL 2 TABLA DE CONVERSI N ASCII C 3 4 anual de referencia de BASIC FACTS Eng
23. E EARCRCQR e vt vP o o LR m n rRr o El H andshake por software se usa a menudo con terminales ABM Commander Plus lo usa las impresoras y m dems externos cuando las transmisiones seriales son todas 7 bits ASCII Handshake Bidireccional de ardware CTS RTS El andshake bidireccional de hardware CT 5 5 funciona car cter por car cter y se usa t picamente con m dems externos o cuando hay datos de 8 bits en transmisiones seriales En este caso no puede ser usado el Control de flujo de software porque los caracteres de Control de flujo de software XON ASCII 17 y XOFF ASCII 19 pueden aparecer como datos en la 5 transacciones de comunicaci n La se al RTS es una salida del m dulo de BASIC que se hace activa al comienzo de una declaraci n PRINT Est solicitando la confirmaci n del dispositivo externo para hacer una transmisi n digamos que ABM est listo para hacer un PRIN T La se al S es una entrada al m dulo de BASIC que cuando est ON indica que el m dulo puede comenzar a transmitir al dispositivo externo le dice muy bien puede hacer PRINT En el final de la declaraci n PRIN la se al RT 5 se desactiva despu s de aproximadamente dos tiempod de un car cter para velocidades menores de 9600 Baud Si la velocidad es 9600 o m s alta entonces la se al RTS se desactiva inmediatamente despu s que se transmite el ltimo car cter en la declaraci n PRINT Si el m dulo BASI
24. ONEX1 ONPORT ONTIME PGM PRINT PRM PROGRAM POP PUSH RAM READ lt gt 2 anual de referencia de BASIC FACTS Eng REM RENUMBER RESET RESTORE RETI RETURN RND ROM RROM SAVE SETINPUT SETPORT SGN SIN SPC SQR STEP STOP STRING TAB TAN THEN TIME TO UNTIL VAL WHILE WORD XBY XFER TABLAS DE CARACTERES ASCII En este ap ndice Tabla de caracteres de control C 2 Tabla de caracteres ASCII nnna anana a aa C 3 Ap ndice Tablas ASCII TABLA DE CAR CTERES DE CONTROL C digo de control Car cter ASCII Valor Decimal C 2 anual de referencia de BASIC FACTS Eng Definici n Abreviatura NULL Comienzo del t tulo Comienzo del texto END del texto END de la transmisi n Tecla de retroceso Tabulaci n horizontal Avance de l nea Tabulaci n vertical Form Feed Alimentaci n de carro Retorno de carro Shift out Cambio hacia fuera cambiar de puesto adentro Escape de trasmisi n de datos Control de dispositivo 1 Control de dispositivo 2 Control de dispositivo 3 Control de dispositivo 4 Reconocimiento negativo IDLE s ncrona END del bloque de transmisi n Cancelaci n Final del medio Separador de archivo Separador del grupo Separador de registro Separador de unidad Ap ndice Tablas ASCII TABLA DE CONVERSI N ASCII Chr Dec Hex Chr Dec Chr Dec Chr
25. Operador de string 4 55 LEN Operador de string 4 56 G LET Miscel neo 4 57 L neas de programa 2 4 Gerencia de memoria UST 3 12 GO_PROGRAM O GOPRM Control de flujo 2 M anual referencia de BASIC de FACTS Eng e LOAD LD Operador avanzado 4 58 LOCKOUT Control de flujo 4 60 LOF Gerencia de memoria 4 61 LOG Operador matem tico 4 61 M Manteniendo el valor de las variables al faltar energ a 3 5 Memoria de datos 2 3 Memoria de programa 2 3 MEMORY ALLOCATION 7 4 MID Operador de string 4 62 Miscel neo E3 Modos de funcionamiento 2 2 MTOP Operador avanzado 4 63 NEW 3 13 N NO DATA 7 4 NOT ENOUGH FREE SPACE 7 5 N meros de coma flotante 2 5 N meros enteros 2 5 0 OCTHEX Operador de string 4 64 Control de flujo 4 67 ON GOSUB Control de flujo 4 65 ON GOTO Control de flujo 4 66 ONPORT Interrupci n 4 68 ONTIME Interrupci n 4 70 ONTIME Prioridad de la interrupci n ONPORT y ONTIME 4 71 ndice Operaci n del CRC 8 6 Operadores 2 5 Operadores de comparaci n 6 3 Operadores de string Operadores l gicos 6 2 Operadores matem ticos E 2 Palabras Reservadas B 2 PHO y 1 Entradas salidas 4 72 PICK Entradas salidas 4 73 POP Operador avanzado 4 74 PRINT Entradas salidas 4 75 PROGRAM ACCESS 7 5 PROGRAM PRM 3 13 Programa de demostraci n de Crc 8 7 Prop sito de este documento 1 2 PUSH Operador avanzado 4 76 Q Quien debe leer este
26. PRINT CHR BYTE 1 WORD 104H 9 1 D M anual de referencia de BASIC de FACTS Eng 8 5 Cap tulo 8 Avanzado Comunicaciones con CRC 16 autom tico El control por redundancia c clico CRC es un medio confiable de verificaci n para saber si hay errores de comunicaci n Un algoritmo de CRC es mucho m s eficaz que los algoritmos de paridad y verificaci n de suma Checksum BASIC ampliado de FACTS Eng utiliza un CRC de 16 bits y se refiere as como CRC 16 Esta implementaci n del CRC se puede configurar para comunicarse con otros dispositivos que usen un CRC de 16 bits tal como el protocolo M odbusRTU Operaci n del CRC El dispositivo que transmite genera dos caracteres CRC 16 para cada transmisi n y agrega esos caracteres al fin de la transmisi n El dispositivo de recepci n despu s calcula el CRC 16 en los datos entrantes y verifica que el resultado es igual que los caracteres reales CRC 16 recibidos Lafunci n CRC 16 requiere que los dispositivos de transmici n y de recepci n usen el mismo algoritmo CRC usen el mismo resto inicial y transmitan los caracteres del CRC en la misma orden Lafunci n del CRC se habilita y se deshabilita seg n lo mostrado abajo 10 SYSTEM 2 NOT 0 REM habilita la funci n del CRC EJ 10 SYSTEM 2 0 del CRC REM deshabilita la funci n del CRC Transmitiendo con CRC Cuando se habilita la funci n CRC BASIC calcula dos caracteres CRC 16 para cada declaraci n PRINT Cada car cter transmi
27. a 4 70 Prioridad de la interrupci n ONPORT ONTIME 4 71 PHO y PHL Entradas salidas oidor ey a re 4 72 4 2 M anual referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones PICK lt Entradas Salidas ica ati di 4 73 Operador avanzado osioro roots 4 74 PRINT Entradas salidas cda is dai 4 75 PUSH Operador avanzado 4 76 READ Entradas Salidas corina aon hena rc 4 77 5 _ 2 eni enaena dad 4 78 RESTORE Entradas salidas o 4 79 ess e le Made 4 80 RETURN Control de flujo E 4 81 REVERSES Operador de 4 82 RIGHTS Operador string 4 83 RND Operador matem tico ar 4 84 SETINPUT Entradas salidas naana 4 85 SETPORT Entradas salidas espias IE 4 86 SETPORT Handshake por Software 4 88 SETPORT Handshake bidireccional de Hardware CTS RTS 4 89 SETPORT Control de flujo Unidireccional del Hardware de CTS 4 89 SETPORT Ning n Handshake 4 89 SGN Operador matem tico 4 93 SIN Operador matem tico
28. anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones LET Miscel neo Funci n Sintaxis Uso Ejemplo LET asigna el valor de una expresi n a una variable LET variable expresi n expresi n es una expresi n num rica o un string cadena de caracteres cuyo valor se asigna a una variable La palabra clave LET es opcional 10 STRING 2551 254 15A 123 4 10 20 0 UNO 30 1 DOS 40 2 0 1 TRES 50 3 38 CUATRO 60 PRINT1 CHR 34 2 3 CHR 34 gt RUN UNODOSTRES8CUATRO 1234 La declaraci n siguiente es tambi n v lida 60 PRINT1 CHR 34 2 3 CHR 34 10 STRING 2551 254 20 FOR CONTEO 1 50 30 0 0 40 NEXT CONTEO 50 PRINT1 0 60 PRINT1 PRINT1 SPC 21 ENCABEZAMIENTO 70 PRINT1 PRINT1 0 gt RUN kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk ENCABEZAMIENTO kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk M anual de referencia de BASIC de FACTS Eng 4 57 Cap tulo 4 D eclaraciones LOADO o LD Operador avanzado Funci n Sintaxis Vea tambi n Uso Ejemplo Recupera un n mero de coma flotante de seis bytes desde la memoria LOADE direcci n BYTE STOREO WORD LOAD permite que el usuario recupere los n meros de coma flotante almacenados en memoria de datos con la declaraci n STORE La direcci n es la direcci n de memoria m s alta en donde se alma
29. ser generado un error INCAPAZ DE VERIFICAR anual de referencia de BASIC de FACTS Eng 7 5 Cap tulo 7 Mensajes de error 7 6 anual referencia de BASIC FACTS Eng AVANZADO En este capitulo Formato de almacenamiento de coma flotante 8 2 Formato de almacenamiento de variables sin dimensi n 8 3 Formato de almacenamiento de variables con dimensi n 8 4 Formato de almacenamiento de variables sting 8 5 Comunicaciones con verificaci n de redundancia CRC 16 8 6 Cap tulo 8 Avanzado Formato de almacenamiento de coma flotante Las declaracionesSTORE LOAD se puede usar en un programa BASIC para archivar para recuperar n meros de coma flotante en posiciones de memoria absolutas C ada n mero de coma flotante requiere seis bytes de memoria para el almacenaje Todas las variables sin dimensi n se almacenan como n meros de coma flotante en un formato BCD seg n lo mostrado en el ejemplo siguiente Ejemplo gt PUSH 1 2345678 gt STORE 30000 Localizaci n Valor Descripci n 30000 81H Exponente 7 10 1 804 10 0 824 10 2 N mero cero exponente cero 29999 00H Bit designo positivo 01H negativo 29998 78H Los dos d gitos menos significativos BC D 29997 56H Los dos d gitos menos significativos siguientes BC D 29996 34H Los dos d gitos m s significativos siguientes BC D 29995 12
30. sin aviso previo FACTS ENGINEERING no hace ninguna representaci n o garant a expresada implicada o estatutaria con respecto a y no asume ninguna responsabilidad de la exactitud delo completo de la suficiencia o dela utilidad de la informaci n contenida adjunto N o se aplicar ninguna garant a de mercadologia de aptitud para el prop sito M anual de referencia de BASIC de FACTS Eng HISTORIA DE REVISIONES DEL MANUAL DE REFERENCIA BASIC DE FACTS ENG Por favor incluya el n mero del manual y la edici n del manual ambos mostrados abajo cuando se comunique con Apoyo T cnico en relaci n a este documento N mero del Manual FA BASIC M SP Edici n Primera edici n en espa ol Fecha de edici n 12 05 Historia de Publicaciones Edici n Descripci n de revisiones Original Original issue in English a Traducci n por el Ing Luis Miranda miembro del equipo de Apoyo T cnico de Primera Edicion Automationdirect 1 2 anual de referencia de BASIC FACTS Eng CONTENIDO Cap tulo 1 Introducci n Ina A A E 1 2 Prop sito de este documento 1 2 Quien debe leer este manual 1 2 Apoyo T CNICO sour as rs res 1 2 Convenciones Usadas di dt id E 1 3 Cap tulo 2 Como comenzar con BASIC ampliado de Facts Eng Requisitos m nimos de lectura 2 2 Us
31. stack del control Los lazos FO 5 requieren 17 bytes de stack de control DO UNTIL DO WHILE y GOSUB requieren 3 bytes de stack de control Esto significa que 9 lazos FOR N EXT uno dentro de otro es el m ximo que BASIC pueden manejar porque 9 por 17 igual a 153 Si el usuario trata de usar m s stack de control que el disponible ser generado un error de DESBORDAMIENTO DE STACK DECONTROL CORRUPTED PROGRAM ENCOUNTERED Cuando se encuentra un programa corrupto en la memoria almacenada del programa entonces el END del marcador del fin de archivo se mueve a la primera l nea de programa v lida antes de la corrupci n Esto trunca el resto del programa y suprime todos los programas que lo si guen La memoria del programa podr a posiblemente ser cambiada debido al ruido el ctromagn tico tal como electricidad est tica anual de referencia de BASIC de FACTS Eng 7 3 Cap tulo 7 Mensajes de error DIVIDE BY ZERO Si setrata de hacer una divisi n por CERO por ejemplo 12 0 ocurrir el error DIVID E BY ZERO EXPRESSION TOO COMPLEX EXPRESION MUY COMPLEJA O curreun error EXPRESI N MUY COMPLEJA cuando BASIC no tiene bastante espacio del stack para evaluar una expresi n tambi n muchos par ntesis N unca hemos visto este error en el mundo real sin embargo si usted maneja generar este mensaje entonces la expresi n debe ser simplificada obteniendo resultados intermedios INVALID LINE NUMBER NUMERO D
32. ticos ABS D evuelve el valor absoluto de una expresi n INT D evuelve la porci n del n mero entero de una expresi n SGN D evuelve 1 si una expresi n es mayor de cero cero si una expresi n es igual acero y 1 si una expresi n es menos de cero anual de referencia de BASIC de FACTS Eng 3 Ap ndice E Declaraciones y operadores SQR Calcula la ra z cuadrada de una expresi n LOG Calcula el logaritmo natural de una expresi n EXP Eleva el n mero 2 7182818 ala potencia de una expresi n SIN Calcula el seno de una expresi n COS Calcula el coseno de una expresi n TAN Calcula la tangente de una expresi n ATN Calcula el arcotangente de una expresi n RND Calcula un n mero pseudo aleatorio entre 0 y 1 inclusive Gerencia de memoria CLEAR Borra la memoria de una variable Copia un bloque de memoria ABM DIM Asigna la memoria para los arreglos num ricos LOF D evuelve el tama o del programa actualmente seleccionado STRING Asigna la memoria para el almacenaje de string Miscel neo DELAY Insiere una pausa DTR Controla la salida de la l nea de handshake de hardware ERRCHK Genera la suma de comprobaci n LRC o los caracteres de verificaci n de error CRC 16 en una STRING o un bloque de memoria LET Asigna un valor a una variable REM Permite colocar comentarios no ejecutables en el programa SYSTEM Lee y configiura varios par metros del sistema TRACE Ejecuci n de programa TR
33. 0 gt RUN 210 30 5 10305 READY gt 4 48 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones de los errores de INPUT Si no se entran datos con IN PUT para cada variable num rica de una lista de entrada entonces las variables en la lista no se cambian Si se entra un car cter alfanum rico para una variable num rica entonces aparece el mensaje TRY AGAIN TRATE OTRA VEZ Cuando se entran m s datos num ricos que variables en la lista del N PUT aparece el mensaje terminaci n de IN PUT generalmente un retorno de carro EXTRA IGNORED ignorados y todos los datos son ignorados hasta el pr ximo car cter Us Debido las limitaciones antedichas es casi siempre mejor entrar datos num ricos en un string y despu s convertir el string en un n mero Ejemplo REM Puede haber un loop sin fin si los datos no se entran correctamente 10 INPUT1 Entre la hora hora minuto seg HORA MINUTO SEG 20 PRINT1 EL TIEMPO ACTUAL 5 MIN SEG RUN Entre la hora hora minuto seg 10 30 47 INPUT must be a number TRY AGAIN Entre la hora hora minuto sec 10 30 47 EL TIEMPO ACTUAL ES 10 30 47 REM Un m todo mejor es siempre entrar datos en un string 10 TRYS 0 15 INPUT1 Entre la hora Hora minuto segundo 0 20 TRYS TRYS 1 25 HORA VAL 0 30 IF HORA gt 0 AND HORA lt 23 THEN GOTO 50 35 PRINT La hora debe ser lt 23
34. 0 CHAR 1 UCASES MID 1 EL CHAR 1 gt 90 REM Para programa si INPUT es igual a la contrase a gt 100 REM contin a el programa principal comienza aqu 4 28 anual referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones ERRCHK Miscel neo Funci n Sintaxis Vea tambi n Uso Ejemplo Verifica el error de un string o un bloque de la memoria de ABM ERRCHK expr n K n mero de caracteres tipo ERRCHK direcci n inicial direcci n final tipo ERRCHK direcci n inicial K direcci n final tipo SYSTEM ERRCHK hace m s r pida la construcci n y recepci n de mensajes para la mayor a de protocolos de comunicaci n ASCII La vcerificaci n de las fallas comienza con el en simo car cter de la variable especificada de la string expr Si la expresi n opcional no se especifica ERRCHK comienza con el primer car cter en el string El n mero de caracteres en el string en debe ser especificado Verifica el error de memoria del m dulo BASIC especificando la direcci n inicial y yasea la direcci n final o la direcci n final para verificar errores El tama o de bloque m ximo que puede ser comprobado es 65535 bytes El tipo especifica el m todo 1 2 o 3 de verificaci n de fallas 1LRC control por redundancia longitudinal de bytes especificados 2 CRC control por redundancia c clica Polinomio X164x 154x241 3 Check Sum la suma de bytes especifi
35. 0 POS 3 480 ERRCHK 0 2 K 50 1 REM calcula LRC para escribir datos 490 ASC 0 POS 1 DBY 25 500 PRINT2 USING 531 0 INPUT2 1 550 si ASC 1 1 6 THEN Y Y 1 REM Registro del topet n si el EM resp es ack 560 GOTO 220 El control por redundancia c clico es el m s confiable de los tres m todos de verificaci n de fallas N ormalmente se usa el CRC 16 ya inclu do en BASIC para comunicaciones Esto se describe en el cap tulo AVAN ZADO del manual de referencia de BASIC ampliado de FACTS Eng El tipo de ERRCH K es til para verificar integridad de la memoria del programa y de los datos ERRCH K tambi n se usa para realizar un c lculo CRC 16 sobre una porci n de un string despu s de que se haya hecho un IN PUT El ejemplo siguiente busca en un string un car cter de comienzo de un mensaje seusa para calcular los caracteres CRC 16 resto de string 300 REM construya un string de muestra con car cter inicial de texto STX 310 REM 320 0 0123456789 CHR 2 0123456789 330 REM 340 REM Encuentre donde se localiza el car cter STX 350 REM 360 POS INSTR 0 CHR 2 1 370 REM 380 REM Calcula el c digo de error CRC 16 de string 0 que 390 REM comienza con el n mero despu s del car cter de STX 400 REM 410 ERRCHK 0 POS K 10 2 420 PRINT1 STRING CON CRC gt MID 0 POS 10 430 PRINT1 CHR DBY 25 CHR DBY 26 anual de referencia de BASIC d
36. 10 m ximo gt 20 0 1JAN2FEB3MAR4APR5MAY6JUN7JUL8AUGISEP100CT11 gt 21 0 0 NOV12DEC13 gt 30 MES 10 gt 40 START INSTR 0 STR MES 1 gt 50 STP INSTR 0 STR MES 1 gt 60 PRINT1 EL MES ES gt 61 PRINT1 MID 0 START STP START gt RUN El mes es OCT READY gt 4 62 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones MTOP Operador avanzado Funci n Sintaxis Uso Ejemplo L mitar la memoria disponible por el int rprete BASIC variable MTOP MTOP direcci n D espu s de reset BASIC asigna normalmente un valor a MT OP leyendo valor almacenado al principio dela memoria del programa AUTOSTART 4 Vea el manual de usuario espec fico del m dulo para el comportamiento de BASIC no usar ninguna memoria variable m s all de la direcci n asignada a Si la direcci n es mayor que la ltima direcci n de memoria v lida entonces ser generado un error MEMORY ALLOCATION Si MTOP se usa en un programa debe ser la primera declaraci n en el programa porque BASIC almacena strings y variables sin dimensi n desde MTOP para abajo gt PRINT MTOP 32767 valor prefijado gt MTOP 16383 asigna un valor nuevo gt PRINT MTOP 16383 REM almacena el valor nuevo de MTOP en la pr xima energizaci n gt AUTOSTART mode program baud 16383 anual de referencia de BASIC de FACTS Eng 4 63 Cap tulo 4 D ec
37. 1330 REM ARCHIVA LA TABLA DE STRING 2 1340 COPY TBL 0 K SIZE TBL 2 1350 REM OBTIENE LA TABLA DE STRING 1 1360 COPY TBL 1 K SIZE TBL O 1365 REM IMPRIMA TABLA DE STRING 1 1370 FOR I 0 TO 9 1380 PRINT2 1 1390 NEXT 1400 REM OBTIENE LA TABLA DE STRING 2 1410 COPY TBL 2 K SIZE 1 0 1415 REM IMPRIMA TABLA DE STRING 2 1420 FOR 1 0 TO 9 1430 PRINT2 1 1440 NEXT anual de referencia de BASIC de FACTS Eng 4 17 Cap tulo 4 D eclaraciones COS Operador matem tico Funci n Sintaxis Uso Ejemplo Calcula el coseno de la expresi n COS Expres n Calcula el coseno dela expresi n la exprej n est en radianes Los c lculos se realizan con 7 d gitos significativos La expresi n debe estar entre 0 200000 PRINT COS 3 14 4 7071067 PRINT COS 0 1 CR Entradas salidas Funci n Sintaxis U sado en la declaraci n PRINT para generar un retorno de carro PRINT CR Vea tambi n PRINT SPC TAB USING O Uso Ejemplo La funci n CR es una abreviatura CHR 13 El CR causar que sea enviado un car cter de retorno de carro 5 11 13 al puerto serial cuando se encuentra en la declaraci n PRINT No seenviar ning n car cter de avance de l nea Lafunci n CR parecer que no trabaja correctamente con las impresoras y los terminales que agregan autom ticamente un car cter avance de l nea cuando se recibe el car cter de retorno de carro La funci n CR
38. 5 Control de flujo Funci n esetea los stacks de control y de argumentos Sintaxis CLEAR S Veatambi n CLEAR CLEAR Uso La declaraci n CLEAR S se usa para resetear stacks de control y de argumentos BASIC Esta declaraci n se puede usar para salir prematuramente de un subrutina GOSUB RETURN de un lazo de control FOR N EXT DO UNTIL o DO WHILE D espu s de ejecutar una declaraci n CLEAR S el usuario usar normalmente una declaraci n GOTO para saltar de nuevo al cuerpo principal del programa CLEAR S cancela todas las rutinas de GO SUB y lazos de control Ejemplo gt 10 PRINT1 Prueba de multiplicaci n gt 30 INPUT Cu ntos segundos desea Ud S gt 40 ONTIME S 200 gt 50 FOR 1 2 9 gt 60 N INT RND 10 gt 70 N i gt 80 TIME 0 gt 90 INPUT 0 gt 95 VAL 0 gt 100 IF R lt gt N I THEN PRINT1 INCORRECTO GOTO 60 gt 110 PRINT1 ESO ES CORRECTO gt 130 NEXT gt 140 PRINT1 PRINT1 ESO ES TODO gt 150 END gt 200 CLEAR S gt 210 PRINT1 USTED TOM MUCHO TIEMPO gt 220 GOTO 20 4 14 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones COMERR Operador avanzado Funci n Bit de error de la funci n CRC 16 Verificaci n de error Sintaxis verdad o falo ERR puerto de acceso Uso Si est activada la verificaci n de error CRC 16 COMERR ser verdadero cuando se ha detectado un error CRC 1
39. ON GOTO n mero de l nea n mero de l nea ON GOSUB La exprej n selecciona el n mero de l nea del programa donde la ejecuci n continuar sin condici n Si la expresi n eval a como cero entonces la ejecuci n contin a en la l nea de programa especificada por el primer n mero de l nea en la lista Si el valor de la expresi n es mayor o igual al n mero del n mero del nea en la lista entonces aparece un mensaje de error BAD SYNTAX 05 REM Muestre mensajes en una sola l nea 10 FORI 1 4 15 PRINT2 0 REM Borra lo que est en la pantalla y vuelve a la l nea 20 ON I 1 GOTO 100 110 120 130 30 NEXT 40 END 100 PRINT2 Atenci n 105 DELAY 2 GOTO 30 110 PRINT2 Ciclo autom tico de la M quina comienza ahora 115 DELAY 4 GOTO 30 120 PRINT2 Proceso comienza en el modelo 1 125 DELAY LEN 1 10 GOTO 30 130 PRINT2 Presione el bot n RESET para cancelar 140 DELAY 3 5 GOTO 30 4 66 anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones ONERR Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo Especifica la l nea de programa a que debe ir si ocurre un error aritm tico ONERR n mero de l nea SYSTEM Si ocurre un error aritm tico despu s de que se ejecute la declaraci n de ONERR BASIC pasar control al n mero de l nea del programa especificado en la ltima declaraci n ON ERR La declaraci n ONERR atrapa
40. PRM 0 gt P 32767 LOF 1279 28345 READY gt 32767 Parte superior de la memoria de datos 1279 memoria de datos usada por int rprete LOG Operador matem tico Funci n Sintaxis Uso Ejemplo Calcula el logaritmo natural de la expresi n con base e LOG Expresi n Calcula el logaritmo natural de la expresi n La expres n debe ser mayor de 0 Este c lculo se realiza con 7 d gitos significativos PRINT LOG 12 2 484906 PRINT LOG EXP 1 1 anual de referencia de BASIC de FACTS Eng 4 61 Cap tulo 4 D eclaraciones MID Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo MID devuelve una cadena de caracteres comenzando con el en simo car cter variable de ring ID expresi n de n LEFT REVERSE RIGHTS ID devuelve una string que comienza el en simo car cter de la expresi n de string m es una expresi n y especifica el n mero de caracteres de la expresi n de string que se asignar a la variable de tring deben estar en el rango 0 254 Si se omite m o hay menos que m caracteres a la derecha en simo car cter de la expresi n de la secuencia entonces todos los caracteres restantes de la expred n de string se asignan ala variable de string Si n es 0 o mayor que la longitud de la expres n de string MID devuelve el car cter N ull gt 10 STRING 2551 254 REM asigna longitud de
41. RTS en el puerto 1 est conectada con una linea de entrada del handshake de hardware de un dispositivo externo Por ejemplo sta pod a ser la entrada de CTS DSR deun dispositivo gt STOP REM El dispositivo externo de transmitir gt DTR1 0 gt REM permite transmitir al dispositivo gt DTRi 1 Previene el flujo excesivo en el buffer buffer gt IF INLEN1 gt 127 THEN DTR1 0 ELSE DTR1 1 anual de referencia de BASIC de FACTS Eng 4 27 Cap tulo 4 D eclaraciones END Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo Para la ejecuci n del programa END STOP La declaraci n EN D se usa para parar la ejecuci n de un programa BASIC El comando CONT no funcionar para terminar la ejecuci n de programa si se usa la declaraci n EN D BASIC terminar autom ticamente el programa despu s de ejecutar la ltima l nea de programa REM hace funcionar el programa en memoria de datos en la energizaci n AUTOSTART 1 0 9600 Mode 1 RUN CLEAR Program 0 Baud 9600 READY gt 05 REM previene el acceso al programa y a datos a gt 06 REM personal desautorizado gt 10 LOCKOUT 1 gt 15 0 secreto REM contrase a gt 17 REM configure el timeout de INPUT a 2 segundos gt 20 SETINPUT 1 1 0 LEN 0 2000 2000 gt 30 INPUT 1 40 CHAR 0 gt 50 DO gt 60 CHAR CHAR 1 gt 70 IF LEN 0 CHAR 1 THEN LOCKOUT 0 END gt 80 WHILE MID
42. Sintaxis PRINT USIN G expr 1 expres n de Uso El valor expr esla cantidad de caracteres en la exprej n string que ser n impresos PRINT comienza siempre al principio del string Esta funci n se puede usar para imprimir los strings que contienen los caracteres null ASCII 0 y retorno de carro ASCII 13 Ejemplo 10 REM asigna el espacio para 10 strings 20 REM 254 caracteres cada string m ximo 30 REM STRING 254 1 10 1 254 40 STRING 2551 254 50 0 0123456789 60 PRINT1 0 65 PRINT1 Imprima una porci n de un string 70 PRINT1 51 5 0 75 0 ABC CHR 10 77 PRINT1 BASIC marca el fin de string con un 78 PRINT1 ASC 0 LEN 0 1 80 PRINT1 0 83 PRINT1 Imprime m s all del fin del marcador del string 85 L LEN 0 4 90 PRINT1 USING ILY 0 100 ASC 0 1 0 105 PRINT1 Una impresi n normal no muestra un car cter null 110 PRINT1 0 120 PRINT1 PRINT con formato de string lo har 121 PRINT1 USING 134 0 gt RUN 0123456789 Imprima una porci n de un string 01234 BASIC marca el fin de string con un 13 ABC Imprime m s all del fin del marcador del string ABC 56789 Una impresi n normal no muestra un car cter null PRINT con formato de string lo har BC M anual de referencia de BASIC de FACTS Eng 4 109 Cap tulo 4 D eclaraciones VAL Operador de string Funci n Sintaxis Vea tambi n Uso VAL devuelve el equivalent
43. Vea tambi n Uso Ejemplo STR vuelve el equivalente de string de una expresi n matem tica variable de tring ST matem tica VAL STR convierte la expresi n matem tica en una string decimal equivalente que se asigne variable de string P STR 123 4 EM 123 4 P STR 002 002 STR 3 1415926 10 6 0000031415926 STR 80H 128 STR 12 E10 120000000000 anual de referencia de BASIC de FACTS Eng 4 97 Cap tulo 4 D eclaraciones STRING Gerencia de memoria Funci n Sintaxis Uso Ejemplo Especial Asignar la memoria para almacenaje de string STRING total longitud La declaraci n STRING asigna la memoria para las variables alfanum ricas de string casi de la misma manera que la declaraci n DIM asigna la memoria para las variables num ricas de arreglos La declaraci n STRING especifica la cantidad total de bytes de memoria de datos que ser n asignados para el almacenaje de string y la longitud m xima de cada string La longitud debe estar en el rango 2 254 Cada STRING requiere un byte de memoria por cada car cter en la STRING y adem s un byte adicional Laf rmula siguiente se puede usar para determinar la memoria total necesitada para almacenar una cantidad dada de strings con una longitud de string m xima particular total longitud 1 cantidad 1 En vista de la cantidad de memoria de datos disponible por el usuario para
44. antes y despu s del punto determinan el n mero de d gitos significativos que ser n impresos La coma puede ser omitida si se desea mostrar solamente un n mero entero La cantidad m xima de caracteres 4 es ocho en total Si el valor que se mostrar no cabe en el formato actualmente especificado entonces BASIC mostrar un car cter de signo de interrogaci n seguido por el valor en el formato USIN G 0 gt 10 PRINT1 USING gt 20 FOR l 0 PRINT1 TO 30 STEP 5 gt 30 SQR I 3 gt 40 NEXT gt RUN 0 11 180 31 622 58 094 89 442 2125 2164 31677 Colocando formato a n meros exponenciales Sintaxis Uso PRINT USING Fx expresi n num rica Esta funci n del formato PRINT har que las exprejones num ricas subsecuentes sean mostradas en un formato exponencial fijo de notaci n de coma flotante El valor x determina cu ntos d gitos significativos ser n impresos El valor m nimo es y el valor m ximo es 8 Ejemplo gt 10 PRINT1 USANDO F3 gt 15 FOR J 1 TO 2 gt 20 FOR K 1 TO 5 gt 30 PRINT1 J K SPC 2 gt 40 NEXTS K gt 45 PRINT1 gt 50 NEXT 1 00 EO 2 00 EO 3 00 EO 4 00 EO 5 00 EO 2 00 EO 4 00 EO 6 00 EO 8 00 1 00 1 gt P 7 SPC 2 4 4 SPC 2 U F3 5 SPC 2 USING F8 0 7 00 EO 4 000 EO 5 00 EO 0 0000000 EO 4 108 anual de referencia de BASIC de FACTS Eno Cap tulo 4 D 5 Formato de strings
45. anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones RETURN Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo M arcar el final de una subrutina RETURN GOSUB RETURN se usa para marcar el final de una subrutina y causa que el flujo del programa se reanude la declaraci n que sigue a la declaraci n GO SUB ejecutada recientemente La secuencia GOSUB RETURN puede ser inc 4 unas dentro de otra nested Es decir las subrutinas pueden llamar otras subrutinas conforme a la limitaci n del tama o del stack de control gt 10 FOR 1 1 5 gt 20 GOSUB 50 gt 30 NEXT gt 40 END gt 50 PRINT1 1 SPC 1 gt 60 RETURN gt RUN 12345 gt 10 FOR 1 1 TO 5 GOSUB 50 gt 20 I NEXT END gt 30 gt 40 RETURN gt 50 GOSUB 30 PRINT1 1 SPC 1 A SPC 1 gt 60 RETURN gt RUN 112439416525 anual de referencia de BASIC de FACTS Eng 4 81 Cap tulo 4 D eclaraciones REVERSES Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo REVERSES vuelve una cadena de caracteres comenzando con el ltimo car cter variable de gring REVERSE expresi n de string LEFTS MID RIGHTS n es una expresi n y especifica el n mero de caracteres de la expresi n de string que se asignar a la variable de ring debe estar en el rango 0 a 254 REVERSES devuelve una string o cadena de caracteres que consiste en el
46. caracter stica conducida interrupci n del contador de tiempo consume solamente el 0 4 del tiempo total de la CPU Se puede f cilmente medir el tiempo de la velocidad de ejecuci n de una secci n de un programa BASIC usando el temporizador de los m dulos 5000 TIME 0 REM Hora actual reseteada en segundos 5020 SYSTEM 4 0 REM Resetea la hora corriente en milisegundos 5030 REM Comienza el c lculo del tiempo 5040 FOR 1 1 TO 1000 5050 GOSUB 100 REM Mide el tiempo de ejecuci n de la subrutina en la l nea 100 5060 NEXT 1 REM Termina la medici n de tiempo 5070 T TIME Rem Guarda el tiempo requerido para 1000 ejecuciones 5080 PRINT Tiempo requerido para ejecutar la subrutina es T 1 655 5090 PRINT milisegundos Ejemplo gt 50 GOTO 5000 gt 100 127 2 gt 110 gt RUN El tiempo requerido para ejecutar la subrutina es 1 655 milisegundos Abajo est n algunos tiempos de ejecuci n t picos El tiempo requerido para ejecutar el lazo FOR NEXT de medici n de tiempo en las l neas 5000 a 5090 mostrados arriba fue restado de los valores abajo En todos los casos fue ejecutada una instrucci n RETURN en la l nea 110 Tiempos de ejecuci n t picos D 2 O peraci n Tiempo ms 100 A 16 2 3 17 100 PRINT STRING de prueba REM en 1200 baud 90 1 100 PRINT STRING de prueba REM 2400 baud 44 4 100 PRINT STRING de prueba REM 4800 baud 21 5 100 PRINT STRING de prueba REM e
47. de carro Selecciona un programa archivado Ejecuta un reset del software Borra las tablas variables y ejecuta el programa seleccionado Almacena el programa seleccionado en el archivo del programa abilita y deshabilita la parade del programa con lt CTRL C gt Reset los stacks de control y stacks de argumento Ejecuta c lculos en un lazo hasta que la prueba en la parte inferior del lazo sea VERDADERA Ejecuta c lculos en un lazo mientras la prueba en la parte inferior del lazo sea VERDADERA Para la ejecuci n de un programa Comienza la ejecuci n de un programa especificado Ejecuta una subrutina Transfiere la ejecuci n a la l nea de programa especificada Ejecuci n condicional de declaraciones Fuerza la ejecuci n de un programa Llama una subrutina que comienza en una de varios n merosde l nea posibles Salta a uno de variosn meros de l nea posibles Especifica la l nea de programa para ir si ocurre un error aritm tico M arca el final de una subrutina Para la ejecuci n de un programa 2 M anual referencia de BASIC de FACTS Eng Ap ndice E Declaraciones y operadores RR Entradag salidas BIT S D escifra las entradas del PLC y codifica las salidas del PLC CR Utilizado en la declaraci n PRINT para hacer salir un retorno de carro DATA Especifica las expresiones para las declaraciones READ INLEN Vuelve el n mero de caracteres que
48. declaraci n INPUT no ser n repetidos Cuando 0 INPUT repetir todoslos caracteres recibidos El valor por defecto es 0 eco no edit es un solo car cter un 0 o un 1 Si no edit es 1 entonces los caracteres backspace ASCII 8 ConTroL D ASCII 4 y Delete ASCII 127 estar n deshabilitados y todos los caracteres de control ASCII 0 a 31 ser n IN PUTS se ignoran los caracteres de XO N XO FF cuando el andshake del software est activado Si no edit es O se permite modificar INPUTS y el resto de los caracteres de control ser n ignorados Esto permite borrar un car cter de entrada anterior con INPUT El valor por defecto es 0 permite BS D EL el teminador es cualquier car cter ASCII 0 255 INPUT para cuando se recibe el car cter terminador Si teminador es 0 entonces la verificaci n del car cter final de la entrada es desactivado El adaptador por defecto es un retorno de carro ASCII 13 la longitud es una expresi n que especifica la cantidad m xima de caracteres por string que recibir IN PUT La entrada IN PUT se detiene si la cantidad de caracteres recibidos esigual alalongitud El rango delalongitud es 0 255 Si lalongitud es 0 255 entonces se aceptan 255 caracteres y un car cter BELL ASCII 7 ser repetido si se transmiten m s de 255 caracteres El valor por defecto de la longitud es 0 epea primer es una expresi n de n mero entero 0 65535 que especifica el tiempo m xi
49. dulos Vea al manual de usuario espec fico del m dulo para c digos de sistema adicionales nicos a ese m dulo C digo DESCRIPCI N Direcci n del comienzo del PRM 0 primer programa donde se modifica Re imprime el ltimo mensaje de error en modo de comando evuelve el n mero de l nea del ltimo error en modo RUN 2 Si es verdad entonces agrega caracteres de verificaci n de error CRC 16 a las declaraciones PRINT y verifica CRC 16 en INPUTS de strings COMERRn es verdadero si la verificaci n de error de IN PUT falla 3 Si es verdad sale el bit menos significativo de CRC 16 primero Si esfalso sale el bit mas significativo de CRC 16 M SB primero 4 Valor de milisegundos del temporizador era D BY 71 5 Valor de ERRCH K 6 Direcci n de la primera posici n de memoria libre en el banco 1 sta es la localizaci n del primer byte despu s del final de los programas archivados 7 Selecciona el puerto 1 como el puerto de programaci n si expr eval a como 0 Si expr es 1 entonces el puerto 2 se convierte en el puerto de programaci n Este es el equivalente M M AN D durante la ejecuci n del programa 8 D evuelve el n mero de l nea siguiente en el programa BASIC Si SYSTEM 8 est en la ltima l nea del programa devuelve 0 Vea la declaraci n GO PROGRAM anual de referencia de BASIC de FACTS Eng 4 99 Cap tulo 4 D eclaraciones Entradas salidas Funci n Sintaxis Ve
50. el almacenaje variable una forma de asignar la memoria para almacenaje de strings es asegurarse de que es bastante Si la declaraci n STRING se usa en el programa debe estar despu s de la declaraci n pero antes de DIM Esto es porque STRING primero borra la memoria hasta MT OP antes de asignar el espacio de almacenaje del string La nica manera de desasignar la memoria para el almacenaje de string es con una declaraci n de string 0 0 NEW CLEAR y RUN borra las variables de string pero no libera la memoria asignada por STRING Asignar la memoria para 100 strings con hasta 79 caracteres en cada secuencia gt P 79 1 100 1 8001 gt 10 STRING 8001 79 Si van a ser conservadas las variables y los datos del programa durante una p rdida de energ a AUTOSTART mode 2 RUN sin CLEAR entonces se debe entrar la declaraci n de string una vez como comando antes de hacer funcionar el programa REM asigna expl citamente memoria para 99 44 strings gt 44 1 99 1 4456 READY gt STRING 4456 44 4 98 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones SYSTEM Miscel neo Funci n Leer y configurar informaci n del sistema Sintaxis SYSTEM c digo expr var SYST EM c digo Uso Se usa el comando SYSTEM para tener acceso a varios datos del sistema que se pueden alcanzar usando una declaraci n o comando BASIC Los c digos de sistema abajo se apoyan en todos los m
51. entonces aparecer un mensaje de error BAD ARGUMENT El operador PICK devuelve la porci n especificada de la expresi n y la asigna a una variable num rica PICK devuelve los valores verdaderos OFFFFH falsos 0 de bits para uso en expresiones de comparaci n porci n puede especificar una posici n de bit un nibble grupo de 4 bits un BYTE grupo de 8 bits o una palabra 16 bits Use para especificar una de 16 posiciones de bit donde 0 15 U se N n para especificar uno de cuatro nibbles donde 0 3 Use para escoger el byte m s significativo o use L para escoger el byte menos significativo U se B para especificar una conversi n de palabra hexadecimal aBCD Desmembrar un valor de 16 bits 10 Registro 1120H 20 PH1 Registro REG en hexadecimal 30 PRINT1 1r bit PICK REG N 0 SPC 5 40 PRINT1 3r bit PICK REG N 2 50 PRINT1 Valor en binario FOR BT 0 TO 15 60 IF PICK REG B BT THEN 62 ELSE GOTO 64 62 P NOT P PRINT1 1 GOTO 70 64 PRINT1 GOTO 0 70 NEXT BT 80 IF THEN 0 impar ELSE 0 par 90 PRINT1 La palabra contiene una cantidad 0 de bits 1 95 PH1 REG o REG tratado como BCD 96 PRINT1 PICK REG B decimal 100 HB PICK REG H REM intercambia los bytes 110 PICK REG H PICK REG L PICK REG L HB 120 PRINT Registro con bytes intercambiados REG gt RUN anual de referencia de BASIC de FACTS E
52. expr puede ser una string o expresi n o constante num rica Se pueden hacer salir varios valores en una sola declaraci n PRINT si son separados comas N ormalmente se env a un car cter de retorno de carro y de avance de l nea en el fin de cada PRINT Esta funci n puede ser suprimida agregando una coma en el final de la declaraci n PRIN T Las declaraciones PRINT del programa se pueden comenzar y parar desde dispositivos externos con XOFF lt CTRL S gt XON lt CTRL Q gt o con la entrada 5 del handshake de hardware Vea la p gina 4 84 de SETPORT para m s informaci n sobre Control de flujo del puerto serial gt 10 FOR 1 1 TO 3 PRINT1 1 NEXT 1 PRINT1 5 gt RUN 123 5 READY gt PRINT1 2 16 1 BYTES DE MEMORIA 65 535 3 65535 BYTES de MEMORIA 65535 READY gt Use el operador para imprimir los c digos especiales de 8 bits que no son Una parte del conjunto de caracteres est ndares ASCII mostrado el ap ndice D pero esto depende del aparato receptor Por ejemplo PRINT 219 imprimir un signo dollar en una PC IBM UsePRINT USING n 1 para imprimir los primeros caracteres de una variable string cuando los caracteres delimitadores de string ASCII null 5 10 y retorno de carro 5 11 13 est n contenidos dentro del string como valores de datos o use R para imprimirlos expl citamente anual de referencia de BASIC de FACTS Eng
53. igual que TRACE 0 1 51 PARAR igual queTRACE 1 CONT 2 CONT igual que TRACE 0 CONT Antes de entrar un n mero de l nea en el aviso de TRACE haga OFF a la declaraci n TRACE apretando 0 ABM Commander Plus Versions 4 11 y m s nuevas autom ticamente apagan al modo de TRACE de paso nico siempre que usted modifique edit un listado de programa Se puede entrar cualquier declaraci n o CO M M AND deBASIC en el aviso de TRACE de paso nico El uso t pico esPRINT o asignar nuevos valores a las variables Usted puede especificar opcionalmente el n mero de l nea de programa para comenzar a hacer TRACE Si el n mero de l nea es omitido entonces TRACE comienza en la l nea corriente Especificar un n mero de l nea para comenzar la declaraci n TRACE elimina la necesidad de modificar el programa declaraciones ST Use la declaraci n TRACE 2 n mero de l nea en el aviso de TRACE para reanudar la ejecuci n hasta que se alcanza el n mero de l nea Entreun comando TRACE o coloquelas declaracionesT RACE en el programa para activar lafunci n deDEBUG ON y OFF seg n lo requerido 10 FOR 1 1 10 12 IF 1 gt 4 AND I lt 7 THEN TRACE 1 ELSE TRACE 0 15 J 1 2 20 NEXT 25 TRACE 1 30 GOTO 100 4 104 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones 40 PRINT1 ESTA L NEA NUNCA SE EJECUTA 100 GOSUB 1000 120 END 1000 9999 PRINT1 DECLARACI N PRINT
54. imprimir cadenas de texto con caracteres retorno de carro y null embutidos gt PRINT muestre una l nea repetidamente CHR 13 PRINT una l nea repetidamente gt 0 CHR 13 gt PRINT LEN 0 0 4 12 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones CLEAR Control de flujo Funci n Sintaxis Vea tambi n Uso CLEAR borra el contenido de las tablas de variables CLEAR CLEAR SCLEAR La declaraci n CLEAR se usa para configurar todas las variables incluyendo strings y arreglos arrays con dimensi n a cero para deshabilitar interrupciones para resetear ST AC KS de control y para cancelar la declaraci n EM ONERR La declaraci n CLEAR no afecta el temporizador de software el reloj de calendario respaldado por bater a o resetea la memoria asignada por la declaraci n STRING CLEAR Interrupci n Funci n Sintaxis Vea tambi n Uso D eshabilita interrupciones de programa CLEAR 5 CLEAR CLEAR 5 La declaraci n CLEAR resetea el bit de interrupci n BASIC e deshabilita las interrupciones de programa permitidas por las declaraciones ONTIME y ONPORT Esta declaraci n se puede usar para prevenir interrupciones durante ciertas secciones de un programa BASIC ONTIME y ONPORT deben ser ejecutados otra vez antes de que sean activadas las interrupciones respectivas anual de referencia de BASIC de FACTS Eng 4 13 Cap tulo 4 D eclaraciones CLEAR
55. las instrucciones y todos los operadores se pueden entrar sin el n mero de l nea y pueden ser ejecutadas inmediatamente Esto una herramienta debugging eliminaci n de errores de gran importancia gt PRINT1 21 196 3 4122 3 gt FOR l 0 TO 12 P 2 NEXT 124816 32 64 128 256 512 1024 2048 4096 gt B 10 gt CONT gt PHO 97 61H gt 0 2 gt ASC 0 1 gt 63 Los comandos que no se pueden incluir en l neas de programa ser n presentados en CAP TULO 3 COMANDOS DE SISTEMA Algunos comandos t picos del sistema son RUN LIST SAVE y NEW D eclaraciones Una declaraci n consiste en una instrucci n Por ejemplo PRINT INPU LET GOTO y puede incluir n meros variables operadores y n meros de l nea Los programas de aplicaciones se construyen con declaraciones L neas de programa 1 2 3 Cada l nea de programa contiene una declaraci n Se pueden entrar declaraciones m ltiples en una sola l nea si son separadas por dos puntos La ejecuci n de las l neas de programa ocurre cuando se manda al m dulo a hacer funcionar un programa Vea AUTOSTART RUN PROGRAM Unal nea de programa no puede contener m s de 79 caracteres 2 4 M anual referencia de BASIC de FACTS Eng Cap tulo 2 Como comenzar BASIC 4 Lasl neas de programa no necesitan ser entradas en orden num rica porque BASIC usar los n meros de l nea para pedir orde
56. m nimos de lectura 2 2 Usuarios de primera veZ 2 2 Modos de funcionamiento 2 2 REE Aa a rie a qa 2 2 Uso general de la memoria 2 3 Me m ona de datos 10 uona Aaa 2 3 Memoria de programa 2 3 Definici n de comandos dd 2 4 a 2 4 Declaraciones a it o 2 4 uineas de piograma 130 AAA AAA 2 4 N meros de Coma flotante 2 5 N meros entos EPS rro 2 5 Operadores Te A A AS 2 5 Vanables a 2 6 EXPresiones bebas A e E 2 7 Cap tulo 2 Como comenzar con BASIC Requisitos m nimos de lectura Los usuarios que usan por la primera vez este programa ya familiares con la programaci n de 2 BASIC deben repasar por lo menos los comandos AUTOSTART NEW LIST SAVE DELPRM Tambi n repasar las declaraciones SETPORT SETINPUT y el manual de usuario espec fico al m dulo que ser utilizado Usuarios primerizos Se recomienda que los usuarios que usan por la primera vez este programa comience
57. manual 1 2 R READ Entradas salidas 4 77 Recepci n con CRC 8 6 REM Miscel neo 4 78 REN UM BER 3 14 Requisitos m nimos de lectura 2 2 RESET 2 2 3 15 Resto inicial 8 7 RESTORE Entradas salidas 4 79 RETI Interrupci n 4 80 anual de referencia de BASIC de FACTS Eng 3 ndice EA RETURN Control de flujo 4 81 Tabla de operadores de comparaci n 6 3 REVERSES Operador de string 4 82 Tabla de operadores l gicos 6 2 Operador de string 4 83 Tabla de operadores matem ticos de RND Operador matem tico 4 84 argumentos 5 2 RUN 3 15 Tabla del modo de reset de Autostart 3 4 Tablas de verdad de operadores L gicos 6 2 TAN Operador matem tico 4 101 S TIME Interrupci n 4 102 SAVE 3 16 TIMES Operador de string 4 103 SETINPUT Entradas salidas 4285 errores 1104 SETPORT Entradas salidas 4 86 Transmitiendo con 19 SETPORT Control de flujo Unidireccional del Hardware de CTS 4 89 U SETPORT Handshake bidireccional de Hardware CTS RTS 4 89 UCASE Operador de string 4 106 SETPORT Handshake por Software 4 88 UNABLE TO VERIFY 7 5 SETPORT Ning n Handshake 4 89 USING Colocando formato a n meros SGN Operador matem tico 4 93 4 108 S mbolos Reservados B 2 USING Colocando formato a n meros SIN Operador matem tico 4 94 exponenciales 4 108 SPC Entradas salidas 4 94 USING Entradas salidas 4 107 SQR Operador matem tico 4 95 Uso general de la memoria 2 3 STOP
58. nea especificado despu s de completar la declaraci n corriente espu s de que se ejecute una declaraci n RETI la subrutina que maneja la interrupci n la ejecuci n se reanuda con la declaraci n que segu a la ltima declaraci n ejecutada antes de que ocurriera la interrupci n gt 10 TIME 0 gt 20 ONTIME 2000 100 gt 30 INPUT UN NUMERO x gt 40 PRINT1 X TIME gt 50 END gt 100 PRINT1 INTERRUPCI N gt 110 RETI gt RUN UN N MERO 210 ESPERA POR LO MENOS 2 SEGUNDOS INTERRUPCI N 10 3 945 gt 10 TIME 0 DBY 71 0 REM Temporizador en cero gt 20 CLOCK 1 REM comienza el contador de tiempo gt 15 ONTIME 1 100 REM permite la interrupci n en la l nea 100 gt 30 REM nada en este ejemplo gt 40 UNTIL INFINITO 4 70 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones oe gt END 50 gt 100 PRINT1 PROGRAMA INTERRUMPIDO PERI DICAMENTE 110 REM La Procima inrterrupci n ocurrir en 3 segundos despu s gt 115 IF TIME gt 65000 THEN TIME TIME 65000 gt 120 ONTIME TIME 3 100 gt 130 RETI Prioridad de la interrupci n ONPORT y ONTIME BASIC ampliado de FACTS Eng establece una prioridad m s alta para la interrupci n de ONTIME que para las interrupciones ONPORT Es decir una interrupci n de ONTIME puede interrumpir una interrupci n de ON PORT Esta prioridad fue establecida para poder lograr tareas basadas en tiempo cr tico tales como poder
59. o deshabilitar el programa con una contrase a seg n lo mostrado en el ejemplo la declaraci n END La declaraci n LOCKOUT tambi n se usa para recuperar con seguridad anomal as del programa BASIC y de condici nes de entradas eventos externos 05 REM se recupera de una condici n de error no atrapada 10 LOCKOUT NOT 0 REM Fuerza ejecuci n de programa 20 INPUT1 C digo a enviar al PLC CODE 30 DUMMY TRANSFER CODE 40 LOCKOUT 0 REM Deshabilita LOCKOUT gt RUN C digo a enviar al PLC 2300 ERROR BAD ARGUMENT IN LINE 30 30 DUMMY TRANSFER CODE AAN X READY C digo a enviar al PLC 2255 4 60 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones LOF Gerencia de memoria Funci n Sintaxis Uso Ejemplo D evuelve el tama o del programa seleccionado LOF LOF le dice al usuario cu ntos bytes de memoria ocupa el programa actualmente seleccionado LO F se puede usar en tanto en el modo RUN y el modo COMMAND LOF se puede usar para comparar el tama o del programa que est siendo modificado con el espacio libre disponible en el archivo de almacenaje del programa LOF se puede usar para determinar el n mero de bytes de memoria RAM que est disponible para el almacenaje de strings y variables num ricas LOF no define el n mero de bytes de memoria usados corrientemente para el almacenaje de strings y variables num ricas gt
60. protegida BASIC de MTOP a 32767 WORD se puede tambi n usar para recuperar valores de n meros enteros en cualquier lugar en la memoria Almacenar valores en memoria permanente despu s de archivar programas en el banco 1 1000 MEMORIA1 SYSTEMI 6 REM Primera localizaci n libre 1010 FOR IDX 1 TO 100 1020 WORD 1 1 REG I 1030 NEXT IDX Recupera los valores almacenados en memoria permanente despu s de archivar programas en el banco 1 1000 MEMORIA2 SYSTEM 6 REM primera localizaci n libre 1010 FOR IDX 1 TO 100 1020 REG I WORD MEMORIA2 1030 NEXT IDX anual de referencia de BASIC de FACTS Eng 4 111 Cap tulo 4 D eclaraciones O l nea columna Entradas salidas Funci n Sintaxis Vea tambi n Uso 1 Ejemplo 2 Colocaci n de cursor usando secuencias de escape AN SI l nea columna PRINT CR SPC TAB USING Este operador se usa en declaraciones PRINT para generar una secuencia de escape requerida para colocar el cursor en un terminal compatible AN SI o de laDEC VT100 Lal nea especifica la posici n vertical y la columna especifica la posici n horizontal respecto a la pantalla Este operador de colocaci n del cursor se usa a menudo para poner f cilmente el texto en un terminal de interface de operador Las dos declaraciones PRIN T siguientes son equivalentes L NEA 5 COLUMNA 50 PRINT1 E L NEA COLUMNA DERECHA superior PRINT1 CHR 2
61. que 0 entonces ser generado el mensaje de ERROR PROGRAM ACCESS Este mensaje de error tambi n ser generado si se hace una tentativa de realizar cambios a un programa en la memoria de programa anual de referencia de BASIC de FACTS Eng 3 13 Cap tulo 3 Comandos del sistema RENUMBER Funci n Sintaxis Uso Ejemplo REN UM BER un rango de l neas de programa RENUMBER comenzar terminar incremento comenzar de nuevo RENUMBER le permitir agregar l neas de programa a una secci n del programa donde previamente no hab a lugar para colocar mas lineas Todas las l neas de programa desde la l nea de programa comenzar hasta la l nea de programa terminar y todas las referencias a estas l neas dondequiera en el programa se le asignar un nuevo n mero de l nea incremento es opcional y especifica la diferencia entre n meros de l nea consecutivos incremento por defecto tiene un valor de 10 Si un n mero de l nea comenzar de nuevo es definido entonces se especifica que el programa entero es vuelto a numerar la cantidad del incremento La l nea comenzar de nuevo es el primer n mero de l nea del programa con un nuevon mero En este caso los par metros comenzar y terminar se ignoran pero se deben incluir en el comando RENUM BER gt LIST 10 STRING 8001 79 REM STRING hace un CLEAR 20 DEBUG 0 30 LOCKOUT 0 40 1 50 IF DEBUG THEN GOTO 101 100 GOTO INLEN1 0 101 DIM REG 20
62. rango de 0 65535 El 1 es opcional y si inclu do causa que H suprima ceros a la izquierda gt PRINT1 10 gt PRINT1 HEX 65535 FFFF gt HEX 800 0320 gt 10 000 los ceros izquierda suprimidos gt 800 1 320 gt HEX 10 1 Para convertir un string ASCII hexadecimal un n mero entero agregue 0 al principio del string y de un H al final del string y use VAL Equivalente decimal de un string hexadecimal VAL 0 FFFF H 65535 anual de referencia de BASIC de FACTS Eng 4 41 Cap tulo 4 D eclaraciones IDLE Interrupci n Funci n Suspende la ejecuci n de un programa hasta una interrupci n Sintaxis IDLE Vea tambi n ONPORT ONTIME RETI Uso Las declaraciones LE fuerzan a BASIC a parar la ejecuci n de un programa hasta que se genera la interrupci n especificada ya sea con una declaraci n ONTIME u ONPORT Una vez que la interrupci n ocurre la rutina de interrupci n es ejecutada y la ejecuci n del programa contin a con la declaraci n inmediatamente despu s de ID LE O bserve que si BASIC incorpora una rutina de interrupci n ID LE y el usuario ejecuta una declaraci n CLEAR en la rutina de interrupci n el usuario debe volver a permitir la interrupci n antes de salir de la rutina Si esto no se hace entonces BASIC va a quedar parado hasta hacer un reset En caso de nece
63. se separa del valor del n mero entero para poder hacer interrupciones peri dicas de O N TIM E sin ninguna p rdida en exactitud Ejemplo gt TIME 0 gt PRINT1 TIME 725 gt SYSTEM 4 0 gt PRINT1 TIME 0 gt SYSTEM 4 500 gt PRINT1 TIME 5 4 102 anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones TIMES Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo TIMES configura y recupera el tiempo de reloj de calendario respaldado por bater a TIMES expresi n de string variable de tring DATES Cuando est ajustado a formato correctamente expres n de configura las horas los minutos y segundos opcionales de reloj del calendario respaldado por bater a en forma militar 0 23 La de ring debe estar en la forma siguiente hh mm ss por ejemplo TIM E 1 4 32 La variable de string contiene el tiempo de reloj del calendario respaldado bater a devuelto por E E devuelve una string de longitud fija en la forma hh mm ss ss El reloj del calendario respaldado por bater a tiene una precisi n 1 minuto por mes con el m dulo en un ambiente a 24 grados gt TIMES 14 02 00 configura la hora a 2 02 el P M gt TIMES 13 configura el reloj una hora atrasada gt TIMES 13 02 33 21 gt TIMES 0 7 configura el reloj 7 minutos despu s de medianoche gt 10 REM rutina p
64. una variable de un s lo car cter Asimismo una variable con dimensi n puede requerir 35 m s tiempo de procesar El tiempo para una variable de un car cter es t picamente menos de 1 milisegundo Un m todo m s r pido de solucionar el problema proporcionar a menudo el aumento m s significativo de velocidad Por ejemplo se podr an usar c lculos exponenciales para descifrar el estado de los puntos de entradas y salidas del PLC Sin embargo la declaraci n realizar t picamente la misma tarea 10 veces m s r pidamente anual de referencia de BASIC de FACTS Eng D 3 Ap ndice D Velocidad de ejecuci n de programas D 4 anual de referencia de BASIC FACTS Eng LISTA DE DECLARACIONES Y OPERADORES En este ap ndice Lista de declaraciones 5 E 2 Ap ndice E Declaraciones y operadores Comandos AUTOSTART Selecciona el modo de operaci n de los m dulos despu s de un reset DELPRM CONT EDIT LIST NEW NULL PROGRAM RESET RUN SAVE Control de flujo BREAK S CLEAR DO UNTIL DO WHILE END GO PRM GOSUB GOTO IF LOCKOUT ON GOSUB ON GOTO ONERR RETURN STOP Borra un programa almacenado Reanuda la ejecuci n de programa ueve un programa archivado al PROGRAMA 0 para modificar EDIT uestra el programa corrientemente seleccionado Borra el PROGRAMA 0 y las variables Agrega caracteres nulos despu s de que cada retorno
65. 1 generar un error si el espacio de almacenaje de string no ha sido asignado por STRING TRANSFER solo existe en algunos m dulos BAD SYNTAX MALA SINTAXIS Un errorBAD SYNTAX significa quefue entrado un comando declaraci n u operador BASIC inv lido y BASIC no puede interpretar la entrada El usuario debe comprobar y cerciorarse de que todo fue tecleado correctamente U error de BAD SYNTAX puede tambi n ser generado si una palabra clave reservada se usa como parte de una variable vea el ap ndice CAN T CONTINUE NO PUEDE CONTINUAR La ejecuci n de programa puede ser parada entrando un lt CTRL C gt trav s del puerto del comando o ejecutando una declaraci n STO P N ormalmente la ejecuci n de programa puede ser reanudada tecleando el comando CONT Sin embargo si el usuario corrige el programa despu s de que pare la ejecuci n y despu s entra el comando CONT ser generado un error CAN T CONTINUE Se debe teclear lt CTRL C gt durante la ejecuci n de programa o debe ser ejecutada una declaraci n ST OP antes de que el comando CONT trabaje CONTROL STACK OVERFLOW LoserroresdeDESBORDAMIENTO DE STACK DECONTROL ocurrir n normalmente 9 seejecuta un RETURN antes deun GOSUB deun WHILE o UNTIL antes de que DO o deun NEXT antes de un FOR Un error de DESBORDAMIENTO DE STACK de CONTROL tambi n ocurrir si el puntero del stack de control esforzado fuera delos l mites 158 bytes de memoria se asignan para el
66. 40 IF TRYS 3 THEN GOTO 100 REM salta si el operador 45 GOTO 15 50POS_MIN INSTR 0 1 55 1 MID 0 POS_MIN 60 MINUTO VAL 1 70 POS_SEG INSTR 1 1 80 SEG VAL MID 0 POS_SEG 90 PRINT1 El tiempo actual es HR MINUTO SEG 95 TIMES STR HR STR MIN STR SEG 100 anual de referencia de BASIC de FACTS Eng 4 49 Cap tulo 4 D eclaraciones Especial Ejemplo Cuando hay m s datos num ricos presentes que variables en la lista del entonces se genera el mensaje EXTRA IGNORED ytodoslos datos seignoran hasta la pr ximo car cter determinaci n IN PUT generalmente un retorno de carro 10 INPUT A gt RUN 2234 42 10 EXTRA IGNORED Entrada no est ndar de caracteres ASCII Los caracteres de control ASCII 0 31 por defecto hacen eco pero secargan en variables Para entrar con IN PUT caracteres de control use SETIN PUT para configurar no editON Para entrar c digos especiales de 8 bits que no son una parte del uso est ndar del conjunto de caracteres ASCII ASCII 128 255 useSETPORT para seleccionar 8 bits de datos Ejemplo REM Hace que el eco sea ON y el car cter de control INPUT ON 10NO_ED 1 20 NO_ECHO 0 30 SETINPUT NO_ECHO NO_ED 40 GOSUB 100 45 REM Deshabilita entrada de caracter de control permite modificar 46 REM entrada 50 SETINPUT NO_ECHO 0 60 PRINT1 GOSUB 100 70 END 100 INPUT Entre lt Ctrl G gt
67. 535 entonces los operadores l gicos pueden usar los resultados de operaciones de comparaci n para formar expresiones de comparaci n complejas Ejemplos gt 10 IF X lt Y AND X gt Z OR X 0 THEN gt 10 IF NOT A OR B AND C THEN En el primer ejemplo de arriba fueron utilizados par ntesis para causar que el resultado de la operaci n OR l gico sea usado como uno los argumentos en la operaci n AN D l gica A menudo las expresiones complejas se pueden escribir con pocos par ntesis si el usuario entiende la precedencia de operadores Vea el CAPITULO 2 para repasar la precedencia de operadores en expresiones Cuando tenga dudaS sobre precedencia de operadores se recomienda que sean usados par ntesis anual de referencia de BASIC de FACTS Eng 6 3 Cap tulo 6 O peradores l gicos y de comparaci n 6 4 anual de referencia de BASIC FACTS Eng MENSAJES DE ERROR En este cap tulo Los mensajes de error descritos en este cap tulo son ARGUM ENT STACK OVERFLOW A A A 7 2 ARITHMETIC OVERFLOW aia o al RS AS A 7 2 ARITHMETIC UNDERFLOW La A 7 2 ARRAY SIZE SUBSCRIPT OUT RANGE e A 7 2 BADARGUMENT sustraer rear 7 3 BADESTNITAS Ad A AAA E O 7 3 CAN TPEONTINUE otra A as 7 3 CONTROLESTACK OVERFLOW osa ERE 7 3 CORRUPTED PROGRAM ENCOUNTERED ococccccccccc 7 3 DIVIDE BY ZERO o EA ASA 7 4 EXPRESSION TOO COMPLEX c
68. 6 despu s de una declaraci n INPUT1 INPUT2 o COMERR es falso cuando el CRC 16 calculado es igual a los dos caracteres CRC 16 recibidos Si se encuentra un error de paridad el car cter es ignorado causando un error 16 COMERR se hace OFF falso en comienzo de una declaraci n INPUT NOTA verdadero cero falso diferente a cero Ejemplo Vea el CAP TULO 8 AVANZADO anual de referencia de BASIC de FACTS Eng 4 15 Cap tulo 4 D eclaraciones COPY Gerencia de memoria Funci n Copia un bloque de memoria del m dulo BASIC Sintaxis COPY direcci n inicial direcci n final direcci n de COPY direcci n inicial K n mero de bytes direcci n de destino Uso Copia un bloque de memoria del m dulo BASIC comenzando en la direcci n inicial de la fuente hasta la direcci n final a la memoria del m dulo BASIC comenzando en la direcci n de O pcionalmente se puede especificar el n mero de bytes de memoria para copiar como una expresi n en par ntesis a continuaci n de El tama o de bloque m ximo que puede ser copiado es 65535 bytes NOTA Vea el manual de usuario espec fico del m dulo para el mapa de memoria del m dulo que usted est usando Ejemplo Este ejemplo crea tablas de variables de string que se almacenan en la parte superior del banco 1 del almacenaje de datos CO PY se usa para almacenar y para recuperar lastablas de variable de string Esto
69. 7 L NEA COLUMNA DERECHA superior Las declaraciones PRINT siguientes de control de cursor dan al usuario m s control sobre la pantalla del ABM Commander Plus PRINT1 1 1 REM coloca el cursor en las coordenadas 1 1 PRINT1 CHR 27 2 REM Borre la Pantalla PRINT1 CHR 27 2L REM Apague el Cursor PRINT1 CHR 27 2K REM Enciende el Cursor 4 112 M anual de referencia de BASIC de FACTS Eng OPERADORES MATEM TICOS En este cap tulo Tabla de operadores matem ticos 5 2 Cap tulo 5 O peradores matem ticos Tabla de operadores matem ticos Los operadores matem ticos descritos en este cap tulo son OPERADOR DESCRIPCION FORMA GENERALIZADA EJEM EJEMPLO Divisi n expresi n expresi n SANT 2 3 66666667 Elevaci n expresi n expresi n PRINT 2 3 potencia 8 B 2 DLO5 Micro PLC User M anual 6th Edition OPERADORES L GICOS Y DE COMPARACI N En este cap tulo Tabla de operadores 9 Tabla de operadores de comparaci n Cap tulo 6 O peradores l gicos y de comparaci n Tabla de operadores matem ticos Los operadores l gicos y de comparaci n descritos en este cap tulo son L GICOS DECOMPARACI N AND XOR NOT lt gt lt lt OPERADORES L GICOS Los operadores l gicos realizan sus funciones en n meros ente
70. ACE O peradores de string ASC Cambia o devuelve el c digo ASCII de un car cter en una STRING CHR Convierte un c digo ASCII en una sola cadena de caracteres DATES Configura y recupera la fecha del reloj del calendario INSTR Busca en una STRING una STRING patr n LCASE D evuelve una STRING que consiste en caracteres min sculos solamente LEFTS D evuelve una cadena de caracteres de n que comienza con el primer car cter LEN D evuelve el n mero de caracteres en un car cter de string D evuelve una cadena de caracteres que comienza el en simo car cter E 4 anual de referencia de BASIC FACTS Eng Ap ndice E Declaraciones y operadores 1 5 TIMES 5 5 VAL 5 Avanzado BYTE CALL CBY COMERR DBY LOAD O MTOP STORE WORD D evuelve una cadena de n caracteres que comienza con el ltimo car cter D evuelve el equivalente de string de una expresi n matem tica Configura y recupera la hora minutos y segundos del reloj del calendario D evuelve una STRING que consiste en caracteres may sculos solamente D evuelve el equivalente num rico de una expresi n de string Convierte un n mero octal en su equivalente string hexadecimal ASCII Lee o escribe un valor de byte en la memoria variable de almacenaje Invoca un subrutina de Assembler o de lenguaje de m quina Lee el contenido de la direcci n de memoria en la memoria del almacenaje de progra
71. ASCII para todos los caracteres INPUT 80 FOR POS 1 INPLEN 90 PRINT ASC 0 POS SPC 2 100 NEXT POS gt RUN Entre 12 lt Ctrl M gt lt Ctrl gt 3 Tiene 5 segundos para entrar el primer car cter 3 Declaraci n LEN dice la longitud de string Longitud de la entrada 5 Declaraci n LEN dice la longitud de string 2 Valores ASCII para todos los caracteres INPUT 49 50 13 0 51 anual de referencia de BASIC de FACTS Eng 4 51 Cap tulo 4 D eclaraciones INSTR Operador de string Funci n Sintaxis Uso Ejemplo INSTR busca en un string por un string patr n posici n IN STR string base expresi n patr n de INSTR vuelve la posici n del patr n de gring en el string base Si no se encuentra la expresi n patr n de string en la b squeda en la base entonces la posici n ser 0 Si cualquier string tiene una longitud de 0 entonces IN STR vuelve un 0 Ambos strings pueden ser expresiones de string 10 STRING 2551 254 20 INPUT Entre expresi n de string a buscar 0 30 1 Contrase a 40 POS INSTR 0 1 50 IF POS 0 THEN PRINT1 ACCESO NEGADO END 60 PRINT1 contrase a est correcta gt RUN Entre expresi n de string a buscar CONTRASE A ACCESO NEGADO READY gt RUN Entre expresi n de string a buscar Contrase a Contrase a est correcta 10 STRING2551 254 20 0 LunMartMiercJuevViernSabDom 30 INPUT Entre el d a de la s
72. BASIC es 99999999E 127 Por ejemplo 1E 70 1E 70 causar a un error ARITM TICO DE DESBORDAMIENTO ARITHMETIC UNDERFLOW Si el resultado de una operaci n aritm tica excede el l mite m s bajo de un n mero de coma flotante de BASIC ocurrir un ERROR ARITM TICO DE DESBORDAMIENTO DE CAPACIDAD INFERIOR El n mero m s peque o de coma flotante BASIC es 18 127 Por ejemplo 1E 80 1E 80 causar a un error ARITM TICO DE DESBORDAMIENTO DE CAPACIDAD INFERIOR ARRAY SIZE SUBSCRIPT OUT OF RANGE TAMA O DEL ARREGLO SUB NDICE FUERA DE RANGO Si un arreglo tiene declarada la dimensi n por una declaraci n DIM y luego usted trata de tener acceso a una variable que est afuera de los l mites de la dimensi n ser generado un error deTAMA O DEL ARREGLO Este error tambi n ocurrir si usted trata de hacer una nueva dimensi n de un arreglo Ejemplo gt DIM A 10 gt PRINT A 11 ERROR ARRAY SIZE SUBSCRIPT OUT OF RANGE READY gt 7 2 M anual de referencia de BASIC de FACTS Eng Cap tulo 7 Mensajes de error oO o o o_ _ _ E qGq OOE QKER e a _ _ BAD ARGUMENT MAL ARGUMENTO Cuando el argumento de un operador no est dentro de los l mites del operador ser generado un ERROR DE ARGUMENTO Por ejemplo A T RAN SFER 257 generar a un error de BAD ARGUMENT porque el argumento para la declaraci n TRAN SFER selimita al rango 0 a255 PRINT ASC 2
73. Baud ninguna paridad la palabra de 8 bits 1 bit de STOP andshake por software XON XOFF y el modo de multi nodos RS 422 485 SETPORT 1 9600 N 8 1 S M Ejemplo El ejemplo siguiente muestra la caracter stica AAR reconocimiento autom tico de la direcci n incorporado de hardware Estaci n esclava 1000 string2551 254 Rem 10 254 strings 1010 RA 2 REM Activa AAR y define nuestra direcci n remota en 2 1030 SETPORT 1 9600 A RA 8 1 N M 1040 REM interrumpe programa principal para entrar INPUT los datos para RA 1050 INLEN1 0 ONPORT 1 1070 1060 GOTO 1240 REM ejecuta el programa principal 1070 REM Apaga el eco ENTRA INPUT todo ASCII sin car cter de t rminaci n 1080 datos REM tama o de bloque m ximo de 254 bytes 1090 REM espera para siempre por el primer car cter 1100 REM Entra datos hasta que el espacio entre caracteres gt 1 vez el tiempo del car cter 1110 SETINPUT 1 1 0 0 0 11 9 600 1120 REM entra el bloque de datos de la estaci n maestra 1130 INPUT 0 1140 GOSUB 1230 REM procesa los datos de la estaci n maestra 1150 REM si la direcci n de broadcast no responde 1160 IF ASC 0 1 255 THEN GOTO 1190 1170 REM env a respuesta a la estaci n maestra aqu 1180 PRINT1 CHR 1 CHR 6 CHR RA REM UN ACK 1190 REM interrupci n al programa principal de los datos de ENTRADA para RA 1200 ONPORT 1 1070 1220 RETI REM vuelve al programa principal 1230 RETURN REM Nada a procesar en
74. C ve la se al CTS el plazo de 1 segundo de hacer la se al RTS ON entonces la se al RTS se hace OFF y el modo de andshake se cambia a ninguno Control de flujo unidireccional de H ardware de CTS El Control de flujo unidireccional de hardware CTS funciona car cter por car cter y se usa t picamente con m dems externos La se al CT S es una entrada al m dulo de BASIC que el m dem hace OFF para mandar al m dulo parar el env o de datos El m dem hace ON la se al CTS para instruir al m dulo BASIC de reanudar el env o de datos El Control de flujo unidireccional de hardware CTS es exactamente como el Control de flujo bidireccional de hardware RT S CT 5 excepto que la se al RTS del m dulo est siempre ON Ning n andshake Al interconectar dispositivos que no apoyan ning n tipo de handshake el usuario debe tener cuidado que los caracteres no se pierdan en una transmisi n Las impresoras por ejemplo se pueden interconectar f cilmente al m dulo BASIC seleccionando una velocidad suficientemente lenta para dar un tiempo adecuado para que la impresora contin e anual de referencia de BASIC de FACTS Eng 4 89 Cap tulo 4 D eclaraciones Ejemplo 05 REM Configure el puerto 1 para comunicaci n con un terminal 10 SETPORT 1 9600 7 1 5 14 REM configura el puerto 2 para comunicaci n con 16 REM un transmisor binario 20 SETPORT 2 1200 O 8 1 N Ejemplo Configure el puerto 1 9600
75. CK del soldador estar en 1 cuando haya RETURN 1008 REM ninguna respuesta del soldador 1 1010 PRINT1 0 1012 REM DEBUG NOT 0 para supervisar la actividad del puerto 1 1020 IF DEBUG THEN PRINT2 0 anual de referencia de BASIC de FACTS Eng 3 3 Cap tulo 3 Comandos del sistema AUTOSTART Funci n Selecciona el modo de funcionamiento de los m dulos despu s de un reset Sintaxis AUTOSTART programa baud MT OP Uso Cuando el AUTOSTART esentrado sin argumentos generar un mensaje en EJ ingl s que recuerda al usuario la sintaxis de AUTO START modo es un n mero 0 1 2 o 3 que selecciona un procedimiento particular para hacer reset seg n lo mostrado en la tabla siguiente Tabla del M odo de Reset de AUTOSTART Pone el m dulo en modo de comando despu s de un reset del m dulo y se Modificar usa a trav s del desarrollo de programa Use la velocidad de tranmisi n BAUD almacenada y entre en el modo de COMANDO El contenido de las tablas de variables no son colocadas en cero Hace funcionar un programa especificado despu s del reset del m dulo Coloca en cero las CLEAR coloca en cero el contenido de las tablas de variables y ejecuta el variables programa especificado por program RUN Hace funcionar un programa especificado despu s del reset del m dulo Este Mantiene las variables modo tambi n mantiene el contenido de las variables al fallar la energ a despu s de la ejecuc
76. D eclaraciones Los ceros en el byte de la m scara definen posiciones de bit que no importan en el byte remoto de la direcci n para permitir al m dulo recibir los datos para un grupo de direcciones Al habilitar lafunci n AAR se fuerza una estructura de datos de 11 bits con una palabra de 8 bits y 1 bit de STOP El noveno bit de paridad se usa para distinguir entre la direcci n y los bytes de datos El hardware en el m dulo de ASCI BASIC comprueba el noveno bit de paridad Si esun 1 entonces el byte de la direcci n recibido se compara a la direcci n remota modificada opcionalmente con la m scara O bserve que esta comparaci n de la direcci n ocurre en hardware no en software Si esigual entonces el byte de direcci n y los bytes de datos subsecuentes se cargan en buffer de entrada los bits de datos especifican la cantidad de bits de datos y deben ser 7 u 8 La paridad recibida se ignora en el puerto 2 y el puerto 3 para palabras de 8 bits los bits de stop especifican el n mero de bits de stop y deben ser 1 o 2 Observe que 7 bits de datos y 2 bits de stop son iguales que 7 bits de datos marcan paridad y 1 bits de stop Asimismo 8 bits de datos y 2 bits de stop son iguales que 8 bits de datos marcan paridad y 1 bit de stop el Handshake es un solo car cter que especifica el Control de flujo de la comunicaci n seg n lo mostrado abajo SoT Handshake de software FF en base a car cter por car cter H and
77. Dec Hex 0 sP 32 20 40 i 96 60 0 64 a SBBA 4 1 2 3 4 5 6 7 8 9 B D E F A YN Om lt AO DOIUZ ENS xe A lt AE CrTO050D0733 gt T70 020000w 8 98 6 6 6 666 amp 64 amp amp amp 6 6 4 amp 256 8885955 88 a Los caracteres 128 hasta 255 dependen de cada aparato y es por eso son listados este ap ndice anual de referencia de BASIC de FACTS Eng 3 VELOCIDAD DE EJECUCI N DE PROGRAMAS BASIC En este ap ndice Velocidad de ejecuci n de programa BASIC Ap ndice D Velocidad de ejecuci n de programas Se pretende que este ap ndice suministre al usuario algunas ideas de como determinar la velocidad de ejecuci n del programa BASIC ampliado de FACTS Eng Debido a la cantidad de posibilidades de programaci n ser a impr ctico proporcionar una lista de declaraciones de BASIC y los tiempos de ejecuci n Sin embargo ser n mostradas velocidades t picas para ejecutar tareas comunes Finalmente se presentan algunas sugerencias para programaci n para aquellas aplicaciones donde es importante una ejecuci n a la velocidad m xima BASIC ampliado de FACTS ENGINEERING esun BASIC interpretativo completo altamente eficiente Laeficacia de la puesta en pr ctica es ejemplificada por el hecho que la
78. E LINEA INVALIDA Este error ocurre normalmente cuando el programa trata deir aun n mero de l nea que no existe El error se podr a causar por cualesquiera delas declaraciones que usan n merode l nea por ejemplo GOTO GOSUB ONPORT y otros El error puede tambi n ocurrir cuando el programa en el buffer de EDIT PROGRAM 20 se corrompe Para verificar al programa cero entre lo siguiente gt PRM 0 seleccionar el programa cero gt P LOF Longitud de PRINT del programa SI LOF devuelve la cantidad de bytes de la longitud del programa entonces el programa cero no est corrupto SI LOF genera el mensaje N VALID LINE NUM BER entoces algo ha cambiado el contenido del programa cero Para corregir el error genere un comando NEW recargue una copia de respaldo del programa MEMORY ALLOCATION ASIGNACION DE MEMORIA Se generan los errores de ASIGNACI N DE MEMORIA cuando el usuario trata de tener acceso a los strings est fuera los l mites definidos de string o cuando hay memoria escasa para el almacenaje variable Adem s si la parte superior del valor dela memoria MT OP se asigna un valor que no contiene ninguna memoria de datos ocurrir un error de asignaci n de memoria NO DATA SIN DATOS Si se ejecuta una declaraci n READ y no existe ninguna declaraci n de DATOS o se han le do todos los datos y una instrucci n del RESTORE no fue ejecutada ser generado el mensaje deerror NO DATA IN LINE XXX 7 4
79. G 100 10 REM asigna la memoria para los strings gt 40 INPUT CU L ES SU NOMBRE 1 REM String de entrada gt 50 1 00 1 1 1 gt 60 BYTE 16385 1 ASC 1 1 REM almacena c digos ASCII gt 70 UNTIL ASC 1 13 END REM Fin de entrada gt 80 BYTE 16384 1 1 gt 90 REM almacena la longitud del string para se alar el proximo libre gt 91 REM localizaci n de memoria 4 10 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones CALL Operador avanzado Funci n CALL invoca un subrutina assembler o lenguaje de m quina Sintaxis CALL direcci n Uso La declaraci n de CALL se usapara llamar un programa del lenguaje assembler la direcci n es la posici n de memoria inicial de la rutina del lenguaje assembler Las rutinas del lenguaje assembler se deben situar en memoria de programa Los usuarios que entienden la arquitectura y el lenguaje assembler de la familia y el microcontrolador de Intel MCS 51 para agregar una funci n creada especial mente deben consultar la f brica para ayuda adicional de informaci n y de la aplicaci n Generalmente todos los recursos de sistema e interrupciones son usados por BASIC Las rutinas llamadas deben hacer PUSH todas las direcciones de memoria internas usadas La mayor a de los productos permiten bajar programas de assembler o de la lenguaje ala memoria RAM repaldada por bater a Esto permite la adici n de funciones creadas por el usu
80. H Los dos d gitos m s significativos BC D 8 2 M anual de referencia de BASIC de FACTS Eng Cap tulo 8 Avanzado Formato de almacenamiento de variables sin dimensi n Las variables requieren 8 bytes de memoria para el almacenaje Se usan dos bytes para describir el nombre de la variable mientras que se usan 6 bytes restantes para almacenar el n mero de coma flotante seg n lo descrito previamente El ejemplo siguiente muestra c mo ser a almacenada la variable CHAR Ejemplo gt STRING 0 0 gt CHAR 12345 gt P WORD 104H 32767 Localizaci n Valor 32766 52H 32765 119 32764 80H 32763 0 32762 0 32761 50H 32760 34H 32759 12H Descripci n El valor ASCII para el ltimo car cter usado para definir una variable En este ejemplo el valor ASCII para el car cter R 8 El valor ASCII para el primer car cter usado para definir una variable m s 26 veces la cantidad de caracteres en el nombre de la variable que mayor que 2 67 26 4 2 119 Exponente de la coma flotante Bit de signo Los dos d gitos menos significativos BC D Los dos d gitos menos significativos siguientes BCD Los dos d gitos m s significativos siguientes BCD Los dos d gitos m s significativos BC D anual de referencia de BASIC de FACTS Eng 8 3 Cap tulo 8 Avanzado Formato de almacenamiento de variables con dimensi n Las variables con dimensi n requieren 8 bytes de memoria para el almacenaje El ejemplo s
81. IL permiten que el usuario ejecute en varias ocasiones las l neas de programa entre declaraciones DO hasta UNTIL La expresi n de comparaci n cuando es igual a cero representa FALSO y contin a la ejecuci n de instrucciones en el lazo si no es as termina la ejecuci n de instrucciones en el lazo El n mero m ximo de lazos uno dentro del otro que BASIC puede ejecutar es 52 Al tratar de ejecutar las declaraciones DO UN TIL en COMMAND generar un mensaje de error BAD SYNTAX Ejemplo LAZO DO UNTIL gt 10 gt 20 1 1 1 gt 30 PRINT1 gt 40 UNTIL 5 gt 50 PRINT1 gt RUN 12345 LAZOS UNO DENTRO DE OTRO DO UNTIL gt 10 DO l 1 1 DO C C 1 gt 20 I C gt 30 UNTIL C 3 C 0 PRINT1 gt 40 UNTIL gt RUN 112233 122436 132639 24 anual referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones DO WHILE Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo Ejecuta un lazo mientras prueba en la parte inferior del lazo que sea VERDAD DO WHILE expresi n de comparaci n DO UNTIL Las declaraciones DO WHILE permiten que el usuario ejecute en varias ocasiones las l neas de programa entre las declaraciones DO y WHILE Cuando la expresi n de comparaci n es igual a cero representa FALSO ejecuci n del lazo termina si es as la ejecuci n del lazo contin a El n mero m ximo de lazos DO WHILE uno dentro de otro que BASIC puede
82. INPUT Entrada de caracteres ASCII no est ndares 4 50 INPUT Caso especial de entradas del car cter de control 4 51 INSTR Operador de string 4 52 INT Operador matem tico 4 53 LCASE Operador de sring 4 54 LEFT Operador de string 4 55 LEN Operador de string 4 56 DA A A 4 57 LOAD E LD E Operador avanzado 4 58 LOCKOUT Control de flujo 4 60 LOF Gerencia de memoria 4 61 LOG Operador matem tico 4 61 MID Operador de sring 4 62 MTOP Operador avanzado 4 63 Operador de string 4 64 M anual de referencia de BASIC de FACTS Eng Contenido ON GOSUB Control de JO ers ii A A ata aa 4 65 Control serios ras 4 66 ONERR Control de flujo dani e AAA AAA 4 67 ONPORE INtSTUBCI N case a 4 68 ONTIME Interubci n cineasta de ed 4 70 ONTIME Prioridad de la interrupci n ONPORT y
83. INT CR SPC Q L nea columna El formato especifica c mo ser impresa la lista de expresones Pueden ser especificados tres formatos diferentes PRINT configura el formato del punto decimal el punto no la coma como esla norma en Estados U nidos para notaci n exponencial o decimal y se usa para imprimir una columna de n meros con todas los puntos alineados La impresi n del formato de string se usa para imprimir una string de longitud fija incluyendo caracteres delimitadores de string NULL y retorno de carro Una vez que se especifica un formato PRINT ser usado en todas las declaraciones subsecuentes de la declaraci n PRIN T o hasta que se encuentra unaPRINT USING 0 La declaraci n PRINT USING 0 hace que sean mostrados n meros en el rango de 0 2 al 99999999 en la notaci n decimal Los n meros fuera de este rango ser n exhibidos en la notaci n exponencial Pueden aparecer varias declaraciones U SIN G en una sola declaraci n PRINT Use una coma despu s de la declaraci n USING para prevenir el mensaje de error BAD SYNTAX anual de referencia de BASIC de FACTS Eng 4 107 Cap tulo 4 D eclaraciones Colocando formato a n meros Sintaxis uso Ejemplo PRINT USING expres n num rica PRINT USING har que el valor de todas las exprejones num ricas subsecuentes sean impresas con un n mero fijo de d gitos antes y despu s la coma La cantidad de caracteres de signo libra
84. Los programas se pueden tambi n salvar al disco duro usando el programa de configuraci n y software de documentaci n inclu do Commander Plus en una PC compatible de La memoria de datos y la memoria del programa son ambas respaldadas por bater a Se usam dos bater as encapsuladas de litio contenidas en el soquete de RAM para mantener la memoria Estas bater as no son reemplazables y se puede esperar mantener datos y programas en RAM por m s de 10 a os emoria de datos La memoria de datos es el segmento de memoria que se utiliza para la edici n de programas y desarrollo Todoslos programas almacenan variables esta memoria Esta memoria tambi n se refiere como banco 0 o PROGRAMA 0 El lenguaje BASIC ampliado de FACTS Eng orientado a un ambiente de control est contenido en 32K o 64K bytesdeROM no direccionables vea el manual de usuario espec fico del m dulo Una porci n de la memoria de datos es reservada para el uso del int rprete BASIC La cantidad de memoria reservada depende del tipo espec fico del m dulo El PROGRAMA 0 es el programa almacenado en la memoria de datos Puede ser ejecutado autom ticamente por el comando AUTOSTART o por otro programa por ejemplo 1000 GO_PROGRAM 0 El PROGRAMA 0 puede ser una copia protegida por medio de la declaraci n LOCKOUT del programa Todos los m dulos suministran al usuario una porci n de memoria designada memoria de programa Se u
85. Operador avanzado 4 11 Declaraciones definici n 4 5 CAN T CONTINUE 7 3 DELAY Miscel neo 4 22 CBY Operador avanzado 4 11 DELPRM 3 9 CHR Operador de string 4 12 DIM Gerencia de memoria 4 23 ndice EA nr DIVIDE BY ZERO 7 4 4 35 DO UNTIL Control de flujo 4 24 GOSUB Control de flujo 4 38 DO WHILE Control de flujo 4 25 GOTO Control de flujo 4 40 DSR Miscel neo 4 26 DTR Miscel neo 4 27 H E Operador de string 4 41 EDIT 3 10 END Control de flujo 4 28 Entradas salidas lista de comandos 2 IDLE interrupci n 4 42 ERASE 3 11 THEN ELSE Control de flujo 4 43 ERRCHK Miscel neo 4 29 INKEY Operador de string 4 44 Errores de BASIC 7 2 INLEN Entradas salidas 4 46 Examinando los caracteres CRC 16 8 7 Entradas salidas 4 47 PXP Operador matem tico 4 32 INPUT Caso especial de entradas del Expresiones 2 7 car cter de control 4 51 EXPRESSION TOO COMPLEX 7 4 INPUT Entrada de caracteres ASCII est ndares 4 50 INPUT Entradas salidas 4 48 F INPUT Manejo del error de INPUT 4 49 FOR NEXT STEP Control de flujo 4 33 INSTR Operador de string FORMATO DE ALMACENAJE DE INT Opeador maternatigo FLOTANTE 8 2 Interrupciones E 2 FORMATO DE ALMACENAJE VARIABLE CON Introducci n 1 2 DIMENSI N 8 3 INVALID LINE NUM BER 7 4 FORMATO DE ALMACENAJE VARIABLE DE STRING 8 4 FORMATO DE ALMACENAJE VARIABLE SIN L 4 LCASES Operador de string 4 54 LEFT
86. REM ENTRE un car cter sin repetir en el plazo de 60 segundos 10 SETINPUT 1 0 0 1 60000 20 INPUT2 Apriete cualquier tecla para continuar 0 4 86 anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones SETPORT Entradas salidas Funci n Configurar un puerto de comunicaciones Sintaxis SETPORT puerto baud paridad bits de datos bitsdestop multidrop Vea tambi n INPUT SETINPUT Uso SET PORT especifica la velocidad en Baud la estructura y el Control de flujo mensaje que le recuerda al usuario la sintaxis y las opciones de SETPORT Puesto que cada puerto serial tiene un buffer independiente de 255 car cteres se pueden recibir los datos desde los dispositivos seriales externos al mismo tiempo que el m dulo de BASIC est realizando otra tarea tal como un c lculo de lazo de PID o est entrando valores de memorias de la CPU En algunos usos intensivos de comunicaci n el n mero de caracteres en cada buffer de entrada se debe examinar por el programa principal peri dicamente para poder entrar datos con INPUT antes de que se llene un buffer vea la declaraci n INLEN puerto indica qu puerto serial se est configurando El puerto es el nico argumento deSETPORT queno esopcional y debe ser 1 2 o 3 dependiendo de qu m dulo tiene usted Cada uno de los puertos puede ser configurado diferentemente y conserva su configuraci n hasta que se ejecuta otra declaraci n de SETPOR
87. RN 1010 REM El dispositivo en el puerto 2 est listo READY para m s datos 1020 PRINT2 4 26 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones DTR Miscel neo Funci n Sintaxis Vea tambi n Uso Ejemplo 1 Ejemplo 2 Ejemplo 3 Controla la salida de la l nea del handshake de hardware expresi n variable DSR especifica el puerto serial 1 2 expresi n hace OFF ala l nea RTS el puerto especificado cuando es igual EM a sino sehace ON variable muestra el estado corriente dela l nea RTS ya sea VERDAD o FALSO DTR2 se usa con el m dem a bordo cuando se tiene un m dem para forzarlo inmediatamente al estado de comando incluso si estaba en l nea El control de programa por el usuario de esta clavija permite cambiar puertos sin colgar el tel fono o perder comunicaci n DTR2 debe ser verdad para permitir el m dem DTR2 1 Cuando el handshake de hardware es habilitado por la declaraci n SET PORT el protocolo del m dem RTS CT S controla autom ticamente la declaraci n PRINT Con el handshake de hardware deshabilitado se puede poner en ejecuci n un H andshake definido por el usuario con DTR M dem en el puerto 2 gt REM Apaga DTR para el puerto 2 para forzar al m dem off line gt 2 0 gt REM Enciende DTR para el puerto 2 para activar el m dem gt 2 1 La l nea de salida
88. SEGMENTO gt PRINT1 MID 0 LEN 0 6 SEGMENTO note que hay un espacio antes de la S de SEGMENTO anual de referencia de BASIC de FACTS Eng 4 83 Cap tulo 4 D eclaraciones RND Operador matem tico Funci n Calcular un n mero pseudo aleatorio en el rango entre 0 y 1 incluso 0 y 1 Sintaxis RND Uso D evuelve un n mero pseudo aleatorio en el rango entre 0 1 inclusive El operador RND utiliza una semilla binaria de 16 bits genera 65536 n meros pseudo aleatorios antes de repetir la secuencia Los n meros generados est n espec ficamente entre 0 65535 y 65535 65535 inclusive A diferencia de la mayor a de los programas BASIC el operador RN D en este BASIC no requiere un argumento o un argumento simulado D e hecho si se pone un argumento despu s del operador RND se genera un error de SINTAXIS Ejemplo PRINT 30278477 4 84 anual referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones SETINPUT Entradas salidas Funci n Configurar la declaraci n IN PUT Sintaxis SETIN PUT no hay eco no edit terminador longitud epera primer epera ltimo Veatambi n INPUT SETPORT Uso SETINPUT establece los par metros operacionales para las declaraciones mensaje que recuerda al usuario la sintaxis de SETIN PUT En ingl s no hay eco el nico par metro de SETIN PUT queno esopcional y debe ser un un 1 Si no hay eco es 1 entonces los caracteres recibidos por la
89. SIC FACTS Eng Cap tulo 4 Declaraciones LEFT Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo LEFT vuelve una cadena de n caracteres comenzando con el primer car cter variable de string LEFT expres n de n MID REVERSES RIGHT esuna expresi n y especifica la cantidad de caracteres de la expres n de string que se asignar a la variable de tring n debe estar en el rango 0 254 LEFT vuelve una string que consiste en una cadena de caracteres desde el primer car cter hasta el en simo de la expres n de string Si es mayor o igual que la longitud dela expres n de lt ring entonces toda la expresi n de lt ring se asigna variable de string Si 0 entonces LEFT devuelve un string sin caracteres gt PRINT1 LEFT PUEDE HACERLO 3 HACERLO NO HACERLO READY gt 4 55 Cap tulo 4 D eclaraciones LEN Operador de string Funci n Sintaxis Uso Ejemplo LEN devuelve la cantidad de caracteres en una string LEN expresi n de LEN devuelve la cantidad de caracteres en la de string 0 254 10 STRING 2551 254 REM asigna 10 longitud m xima 20 INPUT Entre por favor un string 0 30 PRINT1 La longitud de string es LEN 0 gt RUN Entre por favor un string OK Un string La longitud de string es 13 READY gt 0 ABCDEFGHIJK gt LEN LEFTS 0 INSTR 0 5 READY 4 56
90. T Si no se usa SETPORT entonces los puertos seriales toman los valores siguientes ninguna paridad 7 bits de datos 1 bit de STOP y ning n handshake La velocidad por defecto es establecida por AUTOSTART baud es una expresi n que especifica la tasa de transacciones de comunicaci n SETPORT no verifica que la velocidad especificada sea v lida Las velocidades t picas son 300 600 1200 2400 4800 9600 19200 38400 57600 115 200 Vea su manual de usuario espec fico del m dulo para determinar a qu velocidades puede funcionar su m dulo la paridad es un solo car cter o A direcci n remota m scara que especifica el estado del bit de paridad seg n lo mostrado abajo para un puerto serial Cuando SETPORT seentra sin argumentos se genera un paridad impar E Paridad par N ing n bit de paridad si el bit de paridad es 7 bits de datos entonces seignoran los caracteres recibidos y 0 en caracteres transmitidos A permite la funci n autom tica del reconocimiento de direcci n o Automatic Address Recognition La direcci n remota es una expresi n en el rango de 0 a 255 que especifica la direcci n de estaci n remota o esclava del m dulo la m scara M ask es opcional Si la m scara no se especifica entonces el m dulo recibir solamente datos despu s del recibo del byte remoto o del byte 255 de la direcci n de Broadcast anual de referencia de BASIC de FACTS Eng 4 87 Cap tulo 4
91. TO n mero de l nea GOPRM n mero del programa n mero de l nea o el comando RESET para comenzar el programa El arranque del m dulo puede ser simplificado agregando comandos BASIC sin n meros de l nea al principio del archivo de texto a ser transferido al m dulo Cuando es bajado el archivo el m dulo ejecutar los comandos Vea el ejemplo abajo Ejemplo NEW Rem Limpie el programa 0 DELPRM1 REM Borre el programa 1 AUTOSTART 2 1 REM Coloque el modo AUTOSTART STRING 8001 79 REM Asigna almacenaje de string DIM REG 128 Rem Dimesiona un ARRAY arreglo 10 REM Comienzo del programa anual de referencia de BASIC de FACTS Eng 3 5 Cap tulo 3 Comandos sistema Strings Ejemplo Arreglos Ejemplo Ya que el modo 2 no coloca en cero las tablas de variables se deben asignar expl citamente strings con la declaraci n del modo de comando STRING Para asignar la memoria para las strings entre simplemente un comando de string seg n lo mostrado en los ejemplos de abajo o incluya el comando STRING sin un n mero de l nea al principio del archivo detexto que contiene el programa para a ser bajado Si las tablas de variables son posteriormente colocadas en cero entonces se deben entrar otra vez un comando STRING Los contenidos de las tablas de variables ser n borradas con Ejecutando un comando RUN NEW o las declaraciones CLEAR MTOP o STRING gt STRING 2551 254 asigna la memoria para 10 strings cada
92. a de eliminar errores DEBUG EM Comienza ayuda de calibraci n Ayuda completada de calibraci n anual de referencia de BASIC de FACTS Eng 4 37 Cap tulo 4 D eclaraciones GOSUB Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo 1 Ejemplo 2 Ejecuta una subrutina GOSUB n mero de l nea GO_PROGRAM GOTO RETURN GOSUB hace que BASIC transfiera control directamente a la l nea de programa especificada por el n mero de l nea Cuando se encuentra la declaraci n RETURN en la subrutina BASIC retorna el control del programa a la declaraci n inmediatamente despu s GO SUB SUBRUTINA gt 10 FOR 1 1 TO 5 gt 20 GOSUB 50 gt 30 NEXT gt 40 END gt 50 PRINT1 I SPC 1 gt 60 RETURN gt RUN 12345 READY gt UNA SUBRUTINA DENTRO DE OTRA gt 10 FOR 1 1 TO 5 GOSUB 50 gt 20 I NEXT END gt 30 1 gt 40 RETURN gt 50 GOSUB 30 PRINT1 I SPC 1 A SPC 1 gt 60 RETURN gt RUN 112439416525 READY gt 4 38 anual de referencia de BASIC de FACTS Ejemplo 3 Ejemplo 4 Cap tulo 4 Declaraciones Terminaci n prematura de una subrutina sin CLEAR S gt 10 GOSUB 20 gt 20 1 1 1 IF 1 100 THEN END gt 30 GOTO 10 gt RUN ERROR CONTROL STACK OVERFLOW IN LINE 20 EM READY gt P l 52 Salida prematura de una subrutina usando CLEAR S gt 10 GOSUB 20 gt 20 1 1 1 IF 1 100 THEN END gt 30 CLEAR S GOTO 10 gt RUN
93. a es una f rmula que eval a a un n mero Una expresi n puede tener operadores n meros y variables U na expresi n puede simplemente ser un n mero o una variable ella puede ser compleja por ejemplo B SQR B 2 4 A C 2 A 2 Expresiones de comparaci n Una expresi n de comparaci n es una expresi n l gica que prueba la relaci n entre dos operandos Las expresiones de comparaci n implican el uso de igual lt gt no igual gt mayor lt menor gt mayor que o igual y lt menor que o igual Una expresi n de comparaci n puede tan simple como IF B gt 20 THEN o tan compleja como COS B 2 gt SQR SIN C AND NOT B gt C 3 Precedencia de operadores en expresiones Las reglas para evaluar una expresi n son simples Cuando una expresi n se explora de izquierda a derecha una operaci n serealiza hasta que se encuentra un operador de precedencia m s baja o igual La precedencia de operadores desde m s alta a m s baja del BASIC es A O peradores incluidos en par ntesis B exponenciaci n N egaci n D Multiplicaci n y divisi n E Adici n y substracci n Expresiones de comparaci n gt lt gt lt G AND l gico AND H OR l gico OR 1 OR exclusivo l gico anual de referencia de BASIC de FACTS Eno 2 7 COMANDOS DEL SISTEMA En este cap tulo Comandos da ITEM ic A A AA A 3 2
94. a tambi n Uso Ejemplo Especial Utilizado en la declaraci n PRINT para especificar la posici n PRINT TAB expresi n PRINT CR SPC USING G L nea columna La declaraci n TAB especifica en qu posici n comenzar a imprimir el siguiente art culo en la lista de la declaraci n PRINT El valor de la expresi n debe ser menor de 256 Si el cursor posici n de PRINT corriente est m s all dela posici n deT AB especificada la TAB esignorada y PRIN T comienza en el cursor gt 10 PRINT TAB 4 TEMPERATURA TAB 19 PRESI N gt RUN TEMPERATURA PRESI N READY gt 10 STRING 8001 79 gt 20 FOR 1 1 TO 3 gt 30 INPUT 1 gt 40 NEXT gt 50 FOR 1 1 TO 3 gt 60 PRINT1 1 3 91 gt 70 NEXT gt RUN 2A 2CDE 2GHIJK 3A 6CDE9GHIJK tercer TAB ignorado AA denota la posici n de TAB no impresa La posici n actual del cursor para prop sitos de AB es determinada contando la cantidad de caracteres impresos desde el ltimo retorno de carro Al enviar secuencias de escape a un terminal de operador pueden ser evitados problemas usando SPC en vez deT para posici n de salidas La declaraci n TAB se puede usar con la funci n de cursor de la pantalla ANSI que es linea columna La posici n actual del cursor no es espec fica al puerto Para prevenir problemas de imprima con PRINT un retorno de carro para resetear la posici n actual del cursor a cero antes de c
95. abilite la acci n BREAK o lt CTRL C gt agregando una declaraci n BREAK 0 al programa o alos programas 3 Fuerce la ejecuci n dle programa agregando una declaraci n LO CKOUT N OT 0 al programa 4 Entre el comando apropiado de AUTO START Para impedir que haya m s modificaciones EDIT en la ejecuci n del programa vea la declaraci n BREAK Tambi n el LOCKOUT puede ser desactivado y se puede permitir BREAK bajo control de software Vea la descripci n de la declaraci n EN D para un ejemplo A 2 anual de referencia de BASIC de FACTS Eng PALABRAS RESERVADAS En este ap ndice Lista de palabras reservadas B 2 Ap ndice B Palabras reservadas Palabras reservadas Lo que sigue es la lista alfab tica de todas las palabras reservadas para uso por el int rprete BASIC ampliado de FACTS Eng Aunque no se utilizan todas las palabras claves enumeradas en el sistema de instrucci nes del m dulo ASCII BASIC las variables pueden no contener cualquiera de las palabras mostradas Palabras reservadas ATN AUTOSTART BIT BYTE BREAK CALL CBY CLEAR CLOCK COMERR CONT COS CR DATA DBY DELAY DELPRM DIM DO DSR DTR EDIT END ERASE EXP FOR GOPRM PROGRAM GOSUB GOTO S mbolos reservados 0 gt lt gt AND IDLE IF INLEN INPLEN INPUT INSTR INT LEN LET LOCKOUT LOF LOG MTOP NEW NEXT NOT EN ONERR
96. adassalidas a 4 18 DATA gt EntradassalidaS AS A A a A 4 19 DATES Operador de string gt o ca a 4 20 DBY Operador avanzado 4 21 DHAY Miscel neo Sveze A a A 4 22 DIM Gerencia de memoria 4 23 DO UNTIL Control de flujo 4 24 DO WHILE Control de flujo 4 25 ctra id aS 4 26 DTR MIScCelaneo estao aa e aos do a 4 27 EN D Controldeflujo uri e a 4 28 Cap tulo 4 D eclaraciones ERRCHK 1 amp id AA ita 4 29 EXP Operador matem tico 4 32 FOR NEXT STEP Control de flujo 4 33 GO_PROGRAM Control de flujo 4 35 GOSUB Control de flujo rear pese 4 38 Controld flujo siema AAA 4 40 HEXS Operador de NJ ii AA 4 41 IDLE inter p i n ae lerek a ad 4 42 IF THEN ELSE Control de flujo 4 43 INKEY Operador de ring cia A e 4 44 INLEN Entradas salidas Gara dene ie a 4 46 INPLEN Entradas salidas r
97. amente iP errores aritm ticos El usuario puede examinar la posici n de memoria de datos BYTE 257 101 en una rutina de gesti n de errores para determinar que condici n de error ocurri Condici n de Error C digo de Error DIVISION POR CERO DESBORDAMIENTO OVERFLOW DESBORDAMIENTO INFERIOR UNDERFLOW MAL ARGUMENTO gt 10 ONERR 100 1 4 gt 20 10011 gt 30 l i 2 gt 40 GOTO 20 gt 100 IF BYTE 257 10 THEN PRINT1 ERROR DIVISI N POR CERO gt 1101 BYTE 257 20 THEN PRINT1 OVERFLOW gt 120 IF BYTE 257 30 THEN PRINT1 UNDERFLOW gt 130 IF BYTE 257 40 THEN PRINT1 MAL ARGUMENTO gt 140 END gt RUN 25 50 ERROR DIVISI N POR CERO anual de referencia de BASIC FACTS Eng 4 67 Cap tulo 4 D eclaraciones Funci n Sintaxis Vea tambi n Uso ONPORT Interrupci n Especifica el n mero de l nea para gerenciamiento de eventos del puerto serial ONPORT n n mero de l nea IDLE RETI ONPORT habilita la interrupci n del flujo normal del programa BASIC al recibir un car cter en el puerto serial especificado por El n mero de l nea es la l nea inicial de programa para la subrutina que maneja la interrupci n de ONPORT La declaraci n ONPORT permite ocurrir solamente una sola interrupci n del programa BASIC Los eventos futuros en el puerto serial especificado no se atrapan interrupci n permitida hasta que se ejecuta otra declaraci n ON PORT P
98. ap tulo 4 D eclaraciones INKEY Operador de string Funci n Entra un solo car cter sin hacer eco desde el buffer del puerto de entrada Sintaxis variable de IN KEY puerto Veatambi n INPUT Uso IN KEYS quita el primer car cter en el buffer buffer de la entrada especificada por el puerto y lo asigna a variable 5 vuelve un retorno de carro ASCII 13 si el buffer de entrada est vac o INLEN puerto 0 Para distinguir entre un buffer vac o y un car cter de retorno de carro real simplemente aseg rese que hay caracteres esperando en el buffer de entrada antes de ejecutar IN KEYS INLEN puerto se puede usar para verificar 5 hay caracteres esperando en el buffer Ejemplo 1000 REM Ejemplo de 1010 REM El TXD del puerto 1vuelve a RXD 1015 REM 1020 SETPORT 1 9600 N 8 1 S M 1022 REM 1025 REM Agrega una coma en el final de la declaraci n PRINT para 1026 REM suprimir el CR LF 1027 REM CR LF no suprimido en este ejemplo 1028 REM 1030 PRINT1 CHR 0 CHR 13 a CHR 13 CHR 0 b 1040 PRINT2 INLEN1 caracteres en buffer de la entrada 1050 FOR 1 1 TO INLEN1 1060 1 INKEYS1 1070 IF 5 5 1 0 THEN PRINT2 Null I GOTO 1090 1080 IF ASC I 1 13 THEN PRINT2 CR I GOTO 1090 1082 IF ASC I 1 10 THEN PRINT2 LF I GOTO 1090 1085 PRINT2 1 1090 NEXT PRMO READY gt RUN 8 characters in input buffer Null 1 CR 2 a 3 4 44 M anual
99. ara configurar el reloj una hora a m s o a menos gt 20 PRINT1 configure el reloj una hora a m s a menos gt 21 INPUT1 0 gt 30 0 UCASES 0 REM ASEGURA MAY SCULAS gt 40 IF 0 THEN FWD 1 GOTO 100 gt 50 IF 0 THEN FWD 0 GOTO 100 gt 60 END gt 100 HORA VAL TIMES gt 110 IF FWD THEN HORA HORA 1 ELSE HORA HORA 1 gt 120 IF HORA lt 0 THEN HORA 23 gt 130 IF HORA gt 23 THEN HORA 0 gt 140 STRS HORA MID TIMES 3 anual de referencia de BASIC de FACTS Eng 4 103 Cap tulo 4 D eclaraciones TRACE Eliminar errores Funci n Sintaxis Uso Ejemplo M ostrar el flujo de ejecuci n del programa y asignaciones de variables TRACE modo n mero de l nea La expresi n de modo en TRACE debe ser igual a0 aloa2 El modo 0 desactiva a la funci n TRACE El modo 1 exhibe el n mero de l neas y asignaciones de variables durante la ejecuci n del programa Para cancelar el modo 1 entre TRACE 0 CONT o coloque una declaraci n TRACE 0 en el programa El modo 2 exhibe el siguiente n mero del nea cualquier asignaci n de variable y luego el aviso de TRACE de un paso nico ala l nea siguientec y parar presione el espaciador Para exhibir las teclas de control de un paso nico de TRACE s lo presione Las teclas de control RACE en una etapa son ESPACIADOR paso nico igual queTRACE 2 CONT 0 PARAR
100. ario sin quemar o colocar datos en un EPROM Operador avanzado Funci n Leer el contenido de la direcci n de memoria en la memoria de almacenaje de programa Sintaxis variable CBY direcci n Uso El operador CBY se puede usar para asignar el contenido de las posiciones de memoria individuales en memoria de programa a una variable Ya que la memoria de programa no se puede escribir directamente no se le puede asignar un valor al operador de CBY anual de referencia de BASIC de FACTS Eng 4 11 Cap tulo 4 D eclaraciones CHR Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo Especial Ejemplo Convierte un c digo ASC II en una sola cadena de caracteres o un string variable de gring CH R c digo ASC devuelve una cadena de caracteres nica que corresponde a un c digo ASCII CH R es til para crear strings que contienen los caracteres que no se imprimen y los caracteres que no se pueden entrar desde el teclado c digo debe estar en el rango 0 a 255 Secuencia de escape AN SI usando CH R gt 0 CHR 27 2J limpia la pantalla El car cter delimitador de string retorno de carro c digo ASCII 13 y c digo ASCII 0 se pueden imprimir PRINT con CH R CH R muestra una longitud de string cero para estos c digos Use el operador ASC para entrar caracteres null y retorno de carro dentro de una cadena de texto Use PRINT USING icount 1 para
101. ble D BY direcci n DBY direcci n byte de datos Vea tambi n SYSTEM Uso D BY se usa para recuperar o asignar un byte de datos a uno delos 256 bytes memoria especial dentro del m dulo BASIC Ladirecci n debe estar entre 0 y 255 incluyendo estos n meros NOTA Las posiciones de memoria direccionadas por el operador DBY son reservadas para uso del int rprete BASIC y pueden haber cambiado con nuevas revisiones de firmware En lo posible se debe usar la declaraci n SYSTEM equivalente Resumen del uso de DBY MEMORIA USO de BASIC LOCALIZACI N DBY 21 La cuenta de car cter null configurada por el comando NULL DBY 23 El formato de la declaraci n PRINT configurado por USIN G DBY 24 Direcci n de memoria del programa de destino menos un para la declaraci n PGM byte menos significativo Tambi n la base de tiempo DELAY DBY 25 Direcci n de informaci n fuente para la declaraci n PGM byte menos significativo Tambi n byte menos significativo del CRC 16 DBY 26 Direcci n de memoria del programa de destino menos un para la declaraci n dePGM byte m s significativo Tambi n byte m s significativo Crc 16 DBY 27 Direcci n de la informaci n de la fuente para la declaraci n de PGM byte m s significativo Tambi n conteo del car cter RTS OFF delay para el handshake de hardware DBY 30 N mero de bytes a escribir en la declaraci n byte menos significativo DBY 31 N mero de byte
102. cados se divide por 256 el resto del n mero entero es el Check sum Los caracteres de verificaci n de error se almacenan en SYST EM 5 M SB PICK SYSTEM 5 LSB PICK SYSTEM 5 L El check sum es un m todo simple de verificaci n de fallas que es usado por muchos dispositivos El checksum de tipo ERRCHK es compatible con protocolo de OPTOMUX 100 REM Este ejemplo enciende y apaga a los 16 canales de un 110 REM m dulo de 16 salidas en la ranura 1 112 REM Este programa es compatible con los 120 REM CPU 305 OPTO O CPU 305 130 SETPORT 1 9600 N 8 1 140 SETPORT 2 9600 N 8 1 N M 150 STRING 2551 254 160 SETINPUT 1 1 0 0 100 10 170 REM Env a el comando de reset al BRIDGE CPU 180 1 01A GOSUB 2000 210 REM Hace y env a el comando de ENCENDER 16 salidas anual de referencia de BASIC de FACTS Eng 4 29 Cap tulo 4 D eclaraciones Ejemplo 220 0 01K GOSUB 2000 230 REM Construye y env a el string para apagar a 16 salidas 240 0 011 GOSUB 2000 250 END 2000 REM Env a el comando OPTOMUX 1 y obtiene la respuesta 2 2020 REM 2030 REM Calcula el checksum para la string de comando 2040 ERRCHK 1 1 K LEN S 1 3 2050 REM Agrega la checksum a la string de comando 2060 1 1 HEXS DBY 25 1 2070 PRINT1 COMMAND gt 0 2080 PRINT2 gt 0 2090 INPUT2 2 PRINT1 RECIBIDO gt 2 2110 IF 2 lt gt A THEN ERR NOT 0 ELSE ERR 0 2120 RETURN E
103. cena el n mero La ejecuci n de la declaraci n pone un n mero en el stack del argumento del cual BASIC puede asignarlo a una variable con la declaraci n POP Puesto que un n mero de coma flotante requiere seis bytes de almacenaje la declaraci n ST 32767 archivar a el ltimo n mero empujado PU SH ed al stack en las direcciones 32767 32766 32765 32764 32763 y 32762 Ya que BASIC almacena strings y variables sin dimensi n en memoria desde M TOP para abajo el usuario debe configurar una porci n de memoria libre que se usar por las declaraciones ST y LD Asigna una regi n protegida de memoria para almacenaje de variables gt MTOP 28000 REM configura y almacena el nuevo valor MTOP gt AUTOSTART modo programa baud 28000 PUSH 1234 56 N mero del lugar en que se almacenar en stack gt STO 28000 7 Almacena n mero en memoria de datos sobre MTOP gt LDO 28007 Recupera carga el n mero almacenado gt POP NUM Asigna el n mero recuperado a una variable gt PRINT NUM 1234 56 gt 05 REM almacena en memoria de datos n meros de coma flotante gt 10 DIM D 3 D 1 907 701 gt 20 D 2 3256 gt 30 D 3 39 2E 9 gt 40 INDICE 1 gt 50 FOR MEM 28007 TO 28007 2 6 STEP 6 gt 51 REM MEM apunta al valor gt 60 PUSH D INDICE gt 70 STO MEM REM almacena el valor gt 80 INDICE INDICE 1 gt 90 NEXT MEM 4 58 M anual de referencia de BASIC de FACTS Cap t
104. datos DATA D espu s de RESTORE la siguiente variable de READ ser asignada al valor de la om expresi n en la primera declaraci n de DATA en el programa 10 Rem Usando DATA READ RESTORE 11 REM para definir una pseudo funci n 20 REM el argumento de la funci n se pasa a la funci n en WRD 30 WRD 4598 40 RESTORE READ MSB LSB 50 PRINT El par de registros 413 412 es MSB LSB 60 WRD 248 70ORESTORE READ ALTO BAJO 80 PRINT Los dos d gitos m s significativos BCD son ALTO 90 PRINT Los dos d gitos menos significativos BCD son BAJO 120 DATA INT WRD 100 WRD INT WRD 100 100 gt RUN El par de registros 413 412 es 45 98 Los dos d gitos m s significativos BCD son 2 Los dos d gitos menos significativos BCD son 48 anual de referencia de BASIC de FACTS Eng 4 79 Cap tulo 4 D eclaraciones RETI Interrupci n Funci n M arcar el final de una subrutina de manejo de interrupci n Sintaxis RETI Veatambi n IDLE Uso RETI se usa para salir de las subrutinas de interrupci n especificadas por las declaracionesONTIME o ON PORT realiza una funci n similar a la declaraci n RETURN y adem s identifica el final dela subrutina de interrupci n para poder reconocer otra vez interrupciones Si el usuario no ha ejecutado la declaraci n la subrutina de interrupci n ser n ignoradas todas las interrupciones futuras vea tambi n CLEAR 1 4 80 M
105. declara el valor del incremento es 1 La variable ndice en la declaraci n N EXT es opcional y si falta se asume ser la variable ndice usada en la ltima declaraci n FOR Puede ser ejecutado un m ximo de 9 lazos FOR NEXT uno dentro de otro gt 10 FOR l 3 TO gt 20 NEXT PRINT1 gt RUN 3 2 10123 READY gt gt 10 FOR 1 3 TO 3 STEP 2 gt 20 PRINT1 NEXT PRINT1 gt RUN 3 1 1 3 READY gt M anual de referencia de BASIC de FACTS Eng 4 33 Cap tulo 4 D eclaraciones Muestre una regi n de la memoria del modo COMMAND gt FOR 1 32768 TO 32768 5 PHO CBY I NEXT 30H 7FH Muestre el n mero decimal representado por la novena hasta la duod cima posici n de bit de un n mero binario gt FOR 1 9 12 P 2 l NEXT 4 512 1024 2048 4096 4 34 M anual referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones GO_PROGRAM o GOPRM Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo Ejemplo Comenzar la ejecuci n de un programa con un n mero especificado GO_PROGRAM n mero de programa n mero de l nea GOSUB GOTO El n mero de programa identifica el programa almacenado para comenzar a ejecutarse y debe estar en el rango 0 255 GOPRM 0 especifica el programa en la memoria de datos y GOPRM 1 especifica el primer programa en el archivo de la memoria del programa Si el n mero de programa d
106. diferente en el m dulo F0 CP128 anual de referencia de BASIC de FACTS Eng 3 7 Cap tulo 3 Comandos del sistema CONT Funci n Reanuda la ejecuci n de programa Sintaxis CONT Veatambi n TRACE STOP EJ Uso CONT se utiliza t picamente durante DEBUG eliminaci n de errores del programa Si la ejecuci n de programa es parada tecleando un lt CTRL C gt o por la declaraci n STOP CONT entonces hace que se reanude la ejecuci n del programa donde fue parado Antes de reanudar la ejecuci n del programa los valores de variables pueden ser exhibidos o pueden ser cambiados Si se cambia el programa ste no puede ser continuado Ejemplo gt 10 DO gt 20 1 1 1 PRINT1 gt 30 WHILE 10 gt RUN 1 OU0DODN Apriete las teclas CTRL C STOP EN LA L NEA 30 READY gt 1 1 gt 0 CONT 0 READY gt 3 8 M anual de referencia de BASIC de FACTS Eng Cap tulo 3 Comandos del sistema DELPRM Funci n Sintaxis Uso Ejemplo Borra un programa almacenado DELPRM n mero de programa el n mero de programa esel n mero del programa almacenado que se suprimir Los n meros de programa son asignados por el comando SAVE EN Los n meros corresponden a la orden en la cual los programas fueron archivados D espu s de que se haya hecho con xito la operaci n de borrar el programa se muestra el n mero de programas almacenados y la cantidad de bytes de almacenaje de programas restantes El n m
107. e FACTS Eng 4 3 1 Cap tulo 4 D eclaraciones E EXP Operador matem tico Funci n Eleva el n mero e 2 7182818 a la potencia de la expresi n Sintaxis EXP expresi n Uso Eleva el n mero 2 7182818 a la potencia de la expres n Ejemplo PRINT EXP 1 4 2 7182818 PRINT EXP LOG 2 2 4 32 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones FOR TO STEP NEXT Control de flujo Funci n Sintaxis Uso Ejemplo Ejecuta un lazo con ndice ascendente o descendente con incremento autom tico FOR ndice ndiceinicial TO ndicefinal STEP incremento NEXT ndice A diferencia de muchosBASICS las declaracionesFOR TO STEP NEXT se pueden ejecutar en tanto el modo RUN yCOMMAND Estas declaraciones permiten que el usuario ejecute las l neas de programa entre las declaraciones FOR y NEXT por un n mero especificado de veces Cuando se ejecuta la declaraci n se asigna el valor de ndice inicial la variable ndice Cuando se ejecuta la declaraci n NEXT se agrega el valor incremento al ndice Luego ndice es comparado el valor de ndice final Si el incremento es positivo y el ndice es menor o igual al ndice final entonces setransfiere el control ala declaraci n que sigue la declaraci n FOR El ndicetambi n continuar incrementando si el incremento es negativo y el ndice es mayor o igual al ndice final La declaraci n STEP es opcional y si no se
108. e GOPRM especifica un n mero mayor que la cantidad de programas almacenados en la memoria de programa entonces la declaraci n se ignora Si el modo de reset del AUTOSTART 652 si opcionalmente se especifica el n mero de l nea entonces todas las variables y strings se conservan despu s de una declaraci n de GOPRM GOPRM se podr a usar para dividir una tarea de programaci n grande en programas m s peque os separados Las ventajas de esta forma de programaci n son 1 Programas m s peque os se gecutar n m s r pidamente menos l neas explorar 2 Programasm s peque os trandieen m sr pidamente modificadonesr pidas 3 Programas m s peque os son m s f ciles de documentar 4 Las variables de programa pueden ser locales o compartidas globales 5 Algunos de los programas m s peque os se pod an usar en varias aplicaciones 02 REM Programa principal en memoria de datos PROGRAM 0 04 REM El programa REG entra valores y configura registros 10 REG 3 20 5 REM El programa ALRM muestra alarmas 22 REM El programa PRO muestra par metros de proceso y 24 REM valores corrientes de valores predefinidos 30 PRO 2 1000 IF SETUP THEN GO_PROGRAM REG 2000 IF ALARM THEN GO_PROGRAM ALRM 3000 IF DISPLAY THEN GO_PROGRAM PRO GO_PROGRAM tiene acceso subrutinas en otros programas PRMO READY gt LIST anual de referencia de BASIC de FACTS Eng 4 35 Cap tulo 4 D
109. e de string 1010 1 2 1020 1 Tercera variable de string 1030 K24 1 1040 k24 Segunda variable de string 4 Cuando es importante la velocidad de ejecuci n no todas las variables son creadas iguales A El programa BASIC toma m s tiempo para procesar variables con dimensi n que lo que hace para procesar variables que tienen solamente caracteres Vea el APENDICE D VELOCIDAD DE EJECUCI N DE PROGRAMA BASIC B El programa BASIC toma m stiempo para procesar variables con muchos caracteres quelo que hace para procesar variables que tienen s lo un car cter Vea el APENDICE D VELOCIDAD DE EJECUCI N DE PROGRAMA BASIC 5 Aunque no es t pico de muchos programas BASIC los nombres de variables no pueden contener cualquiera de las palabras claves que constituyen el sistema de instrucciones de 2 6 M anual referencia de BASIC de FACTS Eng Cap tulo 2 Como comenzar BASIC BASIC LasvariablesBEND y LETOFF no podr an ser usadas puesto que estas contienen las palabras claves EN D y LET EL AP NDICE B PALABRAS RESERVADAS enumera todas las palabras reservadas que no se pueden usar como parte de un nombre de una variable Como regla general los nombres de variables sin vocales ser n aceptables puesto quela mayor a de las palabras claves contienen por lo menos una vocal Las excepciones a esto son las palabras claves CHR CR DTR RND SGN y SQR Expresiones 1 Expresiones matem ticas Una expresi n matem tic
110. e num rico de una expresi n de string variable de string VAL expresi n de STR VAL convierte la de tring en un n mero equivalente Si la expresi n de s lt ring contiene caracteres no num ricos entonces VAL vuelve el n mero hasta el cuando haya un car cter no num rico Si la expresi n de string comienza con un car cter no num rico entonces VAL retorna un 0 10 INPUT1 Entre por favor la referencia 1 0 20 IF VAL 0 gt 0 AND VAL 0 lt 4096 GOTO 50 30 PRINT1 La referencia debe estar en el rango 0 a 4095 40 GOTO 10 50 SP1 VAL 0 10 0 M10X23 4Y6 8Z1 2 20 XPOS INSTR 0 1 30 YPOS INSTR 0 1 40 ZPOS INSTR 0 2 1 50 X VAL MID 0 XPOS 60 Y VAL MID 0 YPOS 70 Z VAL MID 0 ZPOS 80 PRINT1 2 23 4 6 8 1 2 READY gt RUN 160 23 160 23 READY gt 4 110 anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones WORD Operador avanzado Funci n Sintaxis Vea tambi n Uso Ejemplo WORD lee desde o escribe dos bytes a una posici n de memoria espec fica var WORD direcci n WORD direcci n expr BYTE LOADO STORE O La direcci n es una expresi n en el rango de 0 65535 representando una posici n de memoria de dos bytes WORD recupera o asigna un valor de n mero entero 0 a65535 WORD se puede usar para almacenar valores de n meros enteros en una regi n de memoria
111. eclaraciones 1000 REM Muestra subrutinas GO_PROGRAM 1010 REM 1020 REM Pantallas de ayuda del usuario se almacenan en un programa archivado 1030 REM Esto reduce el tama o del programa principal 1040 REM Se simplifica la mantenci n de ambos programas 1050 REM 1060 REM inicializa los nombres de programa la localizaci n de programa 1070 REM 1080 HELP_PROG 3 1090 MAIN_PROG 0 1100 REM 1110 REM Inicializa el n mero de l neas de la subrutina de ayuda 1120 REM 1130 SETUP_HELP 2000 1140 DEBUG_HELP 4000 1150 CAL_HELP 6000 1160 REM 1170 REM El programa principal comienza aqu 1180 REM 1190 RESUME SYSTEM 8 GO_PROGRAM HELP_PROG SETUP_HELP 1200 PRINT2 Completada la ayuda de configuraci n 1210 RESUME SYSTEM 8 GO_ PROGRAM HELP_PROG DEBUG_HELP 1220 PRINT2 Ayuda completada de eliminar errores DEBUG 1230 RESUME SYSTEM 8 GO_PROGRAM HELP_PROG CAL_HELP 1240 PRINT2 Ayuda completada de calibraci n 1250 END PRM 3 READY gt LIST 2000 PRINT2 Comienza Ayuda de configuraci n 3999 GO_PROGRAM MAIN_PROG RESUME 4000 PRINT2 Comienza ayuda de DEBUG 5999 GO_PROGRAM MAIN_PROG RESUME 6000 PRINT2 Comienza ayuda de calibraci n 7999 GO_PROGRAM MAIN_PROG RESUME 4 36 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones PRM O READY gt RUN Comienza Ayuda de configuraci n Completada la ayuda de configuraci n Comienza ayuda de DEBUG Ayuda completad
112. eferencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones ON GOSUB Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo Llama la subrutina comenzando en uno de varios n meros de l neas posibles ON expresi n GOSUB n mero de l nea n mero de l nea ON GOTO La expres n selecciona el n mero del nea inicial para una llamada de subrutina Si la expres n eval a como cero entonces la ejecuci n contin a en la l nea de programa especificada por el primer n mero del nea en la lista D espu s de que se ejecute una declaraci n RETURN en la subrutina la ejecuci n se reanuda con la declaraci n que sigue ON GO SUB Si el valor de la expresi n es mayor que o igual al n mero den mero del nea en la lista entonces ser generado el mensaje de error BAD SYNTAX 10 IF MODELO lt 0 OR MODELO gt 3 THEN GOSUB 100 20 ON MODELO GOSUB 1000 2000 3000 4000 100 REM subrutina para entrar el n mero de modelo 150 RETURN 1000 REM Construya arreglos para la fabricaci n MODELO 0 1999 RETURN 2000 REM Construya arreglos para probar MODELO 1 2999 RETURN 3000 REM Construya arreglos para supervisar MODELO 2 3999 RETURN 4000 REM Construya arreglos para construir el MODELO 3 4999 RETURN anual de referencia de BASIC de FACTS Eng 4 65 Cap tulo 4 D eclaraciones ON GOTO Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo Saltar a uno de varios n meros de l nea posibles
113. el m s alto Esto no es un manual de c mo escribir el programa de l gica BASIC Ladder Qui n debe leer este manual Este manual contiene informaci n importante para los que instalen mantengan y o hagan funcionar qualquiera de los modulos oprocessor C P128 Apoyo T cnico Apoyo de FACTS Eng Por Tel fono 1 800 783 3225 en Estados Unidos o Por fax 727 375 5441 Lunes Viernes 9 00 a m 6 00 p m E T En Internet www facts eng com Apoyo de AutomationD irect Por Tel fono 770 844 4200 Por fax 770 886 3199 Lunes a Viernes 9 00 a m 6 00 p m E T En Internet www automationdirect com uestros grupos de apoyo t cnico trabajar n con usted para contestar sus preguntas Si no puede encontrar la soluci n para su aplicaci n o si por cualquier otra raz n usted necesita ayuda t cnica adicional por favor llame a Apoyo T cnico Estamos disponibles los d as de semana de 9 00 a m hasta las 6 00 p m H ora del Este de Estados U nidos Adem s le invitamos a que visite nuestro sitio en Internet donde puede encontrar informaci n t cnica y no t cnica sobre nuestros productos y nuestras empresas 1 2 anual referencia de BASIC de FACTS Eng Cap tulo 1 Introducci n MM Convenciones usadas EN argumentos Los argumentos de una instrucci n o declaraci n son mostrados en it lico CTRL C El tecleado de un conjunto de teclas ser indicado de esta forma RENUMBER Una instrucci n o declaraci n que se u
114. emana 1 40 IF INSTR 0 1 0 THEN GOTO 30 50 PRINT1 Este d a es la posici n INSTR 0 1 gt RUN Entre el d a de la semana Mierc Este d a es la posici n 8 READY gt P INSTR 0 Mart 3 4 52 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones INT Operador matem tico Funci n Calcula la porci n entera del n mero entero de la expresi n Sintaxis INT expresi n Uso Calcula la porci n entera del n mero entero de la expres n Ejemplo PRINT INT 3 7 PRINT INT 100 876 100 anual de referencia de BASIC de FACTS Eng 4 53 Cap tulo 4 D eclaraciones LCASES Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo LCASES devuelve una string que consiste solamente de caracteres min sculos variable de tring LCASE de string UCASES LCASES vuelve una string igual a la expresi n de string excepto que todos los caracteres alfab ticos may sculos en la expred n de gring se convierten en min sculas gt 10 PRINT1 Imprima informe sumario del a o hasta la fecha gt 11 INPUT1 y n 0 gt 20 IF LCASES 0 y THEN GOTO 100 gt 30 PRINT1 LCASES Impresi n cancelada gt 40 END 100 REM Imprime informe sumario del a o hasta la fecha gt RUN Imprima informe sumario del a o hasta la fecha y n N Impresi n cancelada READY gt 4 54 anual de referencia de BA
115. ero de programas almacenados no incluye el programa 0 DELPRM se puede utilizar para borrar cualquiera de los programas almacenados Tecleando DELPRM 0 tiene el mismo efecto que teclear N EW READY gt DELPRM 4 7 stored programs 28381 bytes free gt anual de referencia de BASIC de FACTS Eng 3 9 Cap tulo 3 Comandos del sistema EDIT Funci n Sintaxis Uso Ejemplo Lleva un programa archivado al PROGRAMA 0 para modificar o EDIT EDIT El comando se usa para copiar el programa corrientemente seleccionado el archivo del programa al PROGRAM 0 para modificar EDIT ejecuta un comando N EW antes de copiar el programa Seleccione un programa del archivo del programa con el comando PROGRAM El programa original estar a n almacenado en el archivo de programa Para borrar el programa original use DELPRM gt 1 1 READY gt LIST 10 REM Ejemplo de comando EDIT 20 FOR X 1 TO 5 30 PRINT1 HOLA 40 NEXT X 1 READY gt EDIT PRMO READY gt LIST 10 REM Ejemplo de comando EDIT 20 FOR X 1 TO 5 30 PRINT1 HOLA 40 NEXT X PRMO READY gt 20 FOR X 1 TO 10 REM Aqu se cambia la l nea 20 gt LIST 10 REM Ejemplo de comando EDIT 20 FOR X 1 TO 10 30 PRINT1 HOLA 40 NEXT X 3 10 M anual de referencia de BASIC de FACTS Eng Cap tulo 3 Comandos del sistema ERASE Funci n Sintaxis Uso Suprimir o borrar un rango de n meros de
116. es til cuando se necesitan m s de 254 variables de string o cuando necesita ser reducida la cantidad de memoria asignada para los strings 1000 REM 1010 REM INTERCAMBIO DE VARIABLES DE STRING 1020 REM AMPLIA EL N MERO DE LAS VARIABLES de STRING 1030 REM PARA AHORRAR MEMORIA LOS STRINGS SE PUEDEN 1035 REM DEFINIR LITERALMENTE DURANTE EL PROCESO DE 1040 REM TRANSFERENCIA DEL PROGRAMA Y GUARDADO 1045 REM EN MEMORIA USANDO COPY 1050 REM ASIGNA LA MEMORIA 1060 REM PARA 10 254 STRINGS 1070 STRING 2551 254 1080 REM Cantidad de bytes en un banco de memoria 1090 65535 1100 REM Cantidad total de bytes de espacio de almacenaje de string 1110 SIZE MTOP WORD 104H 1120 REM Comienzo del espacio de almacenaje de string 1130 TBL 0 WORD 104H 1140 REM Direcci n inicial de la tabla de string 1 al final del banco 1 1150 TBL 1 BANK 2 1 SIZE 1160 REM Direcci n inicial de la tabla de string 2 al final del banco 1 1170 TBL 2 BANK 2 1 SIZE 2 1180 REM HACE ARREGLO DE STRING DE PRUEBA TABLA 1 4 16 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones 1190 FOR I 0 TO 9 1200 FOR J 1 TO 254 1210 ASC J 1 48 1220 NEXT J 1230 PRINT2 1 1240 NEXT 1250 REM ARCHIVA LA TABLA DE STRING 1 1260 COPY TBL 0 K SIZE TBL 1 1265 REM ARREGLO DE STRING DE PRUEBA TABLA 2 1270 FOR 1 0 9 1280 FOR J 1 TO 254 1290 1 J 1 65 1300 NEXT J 1310 PRINT2 1 1320 NEXT
117. eshabilita gt 10 IF BREAK THEN BREAK 0 gt REM si lt CTRL C gt no est activado entonces lo habilita gt 10 IF NOT BREAK THEN BREAK 1 anual de referencia de BASIC de FACTS Eng 4 9 Cap tulo 4 D eclaraciones BYTE Operador avanzado Funci n Leer o escribir un valor de un byte en memoria variable de almacenaje Sintaxis variable BYTE direcci n BYTE direcci n Byte de datos Veatambi n LOADO STOREOQ WORD Uso La declaraci n BYT E se usa para recuperar o para asignar un byte de datos en el rango de 0 a 255 una direcci n la memoria variable de almacenaje respaldada por bater a El rango de direcciones v lidas es espec fico al m dulo El rango de memoria reservado para uso por el int rprete de BASIC no debe ser escrito el usuario Un alternativa a usar el modo 2 del AUTO START para conservar datos con falta de energ a es almacenar un valor en memoria de datos Para hacer esto el usuario debe asignar una cierta memoria libre memoria no usada por BASIC que se almacenen los datos U se el operador MT OP descrito m s adelante en este cap tulo para suministrar al usuario memoria libre para el almacenaje de datos Ejemplo Almacenar una string en MTOP gt MTOP 16383 asigna 16K de memoria de datos Esto es equivalente a 16384 registros de datos retentivos de 8 bits del gt AUTOSTART modo programa baud 16383 almacena el nuevo valor para MTOP gt 30 STRIN
118. esperan en un buffer almacenador intermediario de entrada o despeja especificado INPLEN D evuelve la cantidad de caracteres IN PUT INPUT Carga variables con datos del puerto 1 2 0 3 PHO PH 1 Imprime n meros hexadecimales de 2 y 4 d gitos E PICK O pera en n meros enteros de 16 bits en un byte nibble o bit PRINT Transmite datos para fuera del puerto serial especificado POP Recupera un valor del stack PUSH Pone un valor el stack READ Asigna a declaraci n DATA valores constantes a las variables RESTORE Permite que valores constantes en una declaraci n DATA sean le dos otra vez SETINPUT Configura declaraci n INPUT LINE INPUT m s SETPORT Configura un puerto de comunicaciones SPC U sado en la declaraci n PRINT para colocar una cantidad de espacios TAB U sado en la declaraci n PRIN T para especificar la posici n donde imprimir USING Coloca en formatos predefijnidos valores impresos y strings y x Colocaci n de cursor usando una secuencia de escape AN SI Interrupciones CLEAR D eshabilita las interrupciones del programa IDLE Suspende la ejecuci n de programa hasta la interrupci n ONPORT el n mero de l nea inicial para la direcci n del evento del puerto serial ONTIME Interrupci n por tiempo del flujo de programa normal arca el final de una subrutina que maneja una interrupci n TIME Configura y recupera el valor del temporizador de software controlado por CLOCK O peradores matem
119. este ejemplo 1240 REM Comienza el lazo principal del programa 1250 DO 1260 REM Nada 1270 UNTIL 1 0 4 90 M anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones Estaci n Principal 1000 RA 1 REM Activa AAR y establece nuestra direcci n remota 1020 SETPORT 1 9600 A RA 8 1 N M SETPORT 2 9600 N 8 1 1030 REM con AAR permitido el primer byte de una declaraci n PRINT tendr 1040 REM el noveno bit ON ste es la direcci n de la estaci n esclavo 1050 El bloque de los datos puede ser imprimibles 1052 REM ASCII o ASCII hexadecimal 1060 PRINT1 CHR 2 Mensaje para la estaci n 2 solamente 1070 STA 2 GOSUB 1120 REM Obtiene un ACK reconocimineto del esclavo 2 1080 PRINT1 CHR 3 Mensaje para la estaci n 3 solamente 1090 STA 3 GOSUB 1120 REM consigue un ACK del esclavo 3 1100 PRINT1 CHR 255 Mensaje para todas las estaciones 1110 GOTO 1030 REM Lazo 1120 REM espera por la respuesta de esclavos 1130 SETINPUT 1 1 0 254 200 11 9 600 1140 INPUT 0 1150 IF INPLEN 0 THEN PRINT2 ninguna respuesta de estaci n STA RETURN 1160 IF ASC 0 2 6 THEN GOTO 1162 ELSE GOTO 1170 1170 1162 PRINT2 ACK DEL ESCLAVO ASC 0 3 RETURN Avanzado Usando m scara para definir grupos de direcciones de estaci n esclava El reconocimiento autom tico de direcci n AAR reduce el tiempo dela CPU requerido para mantener comunicaciones seriales Puesto que la CPU se interrumpe solame
120. hexadecimal deben comenzar con un d gito v lido de modo que puedan ser distinguidos de variables es entrado 4 Cuando los operadores l gicos de BASIC tales como OR requieren un n mero entero BASIC truncar la parte fraccionaria del n mero dejando la porci n del n mero entero para la operaci n 5 Los n meros enteros requieren seis bytes de memoria para el almacenaje O peradores 1 Los operadores realizan una funci n predefinida Los operadores tales como RND y LOF vuelven un n mero y no requieren un argumento Los operadores tales como SIN y ABS requieren un argumento en el cual se realice la operaci n Algunos operadores que requieren dos argumentos para realizar la operaci n son AN D sumar restar igual 2 Los operadores se distinguen por su tipo Los dostipos generales de operadores son Matem ticos B L gicos y de comparaci n M anual de referencia de BASIC de FACTS Eng 2 5 Cap tulo 2 Como comenzar con BASIC Variables 1 Una variable debe comenzar con una letra y puede contener hasta 79 caracteres o n meros incluyendo el car cter sublineado _ Las variables v lidas son 2 501 1 RELAY10 INP103 REG410 TMRACCUMM1 TMRPRESET1 puesto que ambas variables tienen la misma longitud ambas comienzan con T y ambasterminan con 1 NOTA Solamente la cantidad de caracteres en el nombre de la variable y de los primeros y ltimos caracteres es significativa para
121. i n de una declaraci n de GO_PROGRAM No hace CLEAR a las tablas de variables y ejecuta el programa especificado por program EDIT Despu s de que un reset el m dulo espere que el usuario env e un car cter El usuario debe colocar de una barra de espacio al puerto de comando El m dulo configurar la una barra de espacio velocidad de puerto a la velocidad del dispositivo que envi el car cter de barra de espacio Observe que el puerto 2 no apoya el modo 3 del AUTOSTART si el puerto 2 es el puerto del comando ser usado el modo 0 si se selecciona 3 Interpreta el primer car cter recibido como car cter de espacio para determinarse baud Entra el modo COMMAND sin colocar a cero las variables El m dulo se env a desde la f brica en el modo 3 para una selecci n f cil de velocidad de transmisi n baud es una expresi n que especifica la tasa de transferencia de datos en la comunicaci n El comando AUTOSTART no verifica que la velocidad especificada sea v lida Las velocidades t picas son 300 600 1200 2400 4800 9600 y 19200 La velocidad almacenada por AUTOSTART ser la tasa por defecto usada para ambos puertos La velocidad para cualquier puerto se puede cambiar el programa usando la declaraci n MTOP es una expresi n que especifica la posici n de memoria respaldada por bater a que el BASIC ampliado puede usar para almacenaje de una variable El valor prefijado paraMT OP se define en los man
122. i n espec fica en variable de string La declaraci n ASC asigna el c digo ASCII 0 255 al car cter en cualquier posici n espec fica en variable de string El rango v lido para la posici n es 1 a 255 N ormalmente las funciones de administraci n de strings MID INSTR LEFT y RIGHTS ser an usadas para manipular strings Un caso especial existe cuando se deben manipular dentro de strings los caracteres de control ASCII lt Ctrl gt ASCII 0 y CR retorno de carro lt Ctrl M gt ASCII 13 Estos caracteres son usados como delimitadores por toda declaraci n que manaja strings excepto ASC Por lo tanto solamente puede ser usada la funci n ASC para procesar strings con los caracteres NULL y retorno de carro dentro del string BASIC agrega un car cter de retorno de carro ASCII 13 para identificar final o terminaci n de un string 0 123 gt 0 2 65 REM C digo ASCII para gt 0 1 gt 0 1 gt ASC 0 3 SPC 2 CHR ASC S 0 3 513 4 6 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones ATN Operador matem tico Funci n Calcula el arcotangente de la expresi n Sintaxis ATN expres n Uso Calcula el arcotangente de la expresi n El resultado est en radianes Los c lculos se realizan con 7 d gitos significativos El operador ATN devuelve un resultado en el rango 1 2 3 1415926 2 y 1 2 Ejem
123. iables o en un cierto punto en el programa con excepci n del principio use GOTO Ejemplo gt 10 FOR J 1 TO 3 PRINT1 J gt 20 PRINT1 COMIENZO gt RUN 1 2 3 COMIENZO READY gt anual de referencia de BASIC de FACTS Eng 3 15 Cap tulo 3 Comandos del sistema SAVE Funci n Sintaxis Uso Ejemplo Almacena o archiva el programa seleccionado en el archivo de programa SAVE El comando SAVE se usa para almacenar el programa actualmente seleccionado en la memoria de datos PROGRAMA 0 o archivo del programa en el espacio libre siguiente en el archivo del programa Los programas se almacenan secuencialmente en el archivo de programa C ada vez que se ejecuta el comando SAVE la cantidad y el n mero de programas archivados ser aumentado en uno La cantidad de programas almacenados es limitada solamente por el tama o de los programas y de la cantidad de memoria de almacenamiento de programa disponible Cuando se entra el comando SAVE BASIC mostrar el n mero de archivo del programa en la pantalla Este n mero es usado por PROGRAM y GO_PROGRAM recuperar o para ejecutar un programa en el archivo gt 0 gt LIST 10 PRINT1 PROGRAMA DE PRUEBA gt SAVE Saving Program 7 7 Stored programs 51154 bytes program storage bytes free gt GOPRM 7 PROGRAMA DE PRUEBA gt NEW borra el programa 0 gt PRM 0 gt LIST Si se borr gt PRM 7 selecciona e
124. icaciones 4 68 anual de referencia BASIC de FACTS Eng Cap tulo 4 Declaraciones menos sensitivas al tiempo de respuesta podr a tambi n verificar regularmente considerar si hay algunos caracteres esperando en el buffer de entrada usando la declaraci n INLEN IF INLEN2 gt 0 THEN GOSUB anual de referencia de BASIC de FACTS Eng 4 69 Cap tulo 4 D eclaraciones ONTIME Interrupci n Funci n Sintaxis Vea tambi n Uso Ejemplo Interrupci n basada en tiempo del flujo de programa normal ONTIME tiempo predefinido n mero de l nea IDLE SYSTEM TIME ONTIME permite la interrupci n del flujo de programa normal BASIC cuando el valor de TIM E es mayor o el igual al valor del tiempo predefinido El tiempo predefinido puede ser cualquier valor entre 0 005 a 65535 995 segundos El n mero de l nea es la l nea de programa inicial para la subrutina que maneja la interrupci n ONTIME se ala el final de la subrutina La declaraci n ONTIME permitir solamente una sola ocurrencia de interrupci n del programa BASIC N o ocurrir n futuras interrupcionesT IM E hasta que se ejecuta otra declaraci n ON TIM E Por lo tanto otra declaraci n deONTIME ser a inclu da normalmente en la subrutina de la interrupci n Un n mero de l nea O deshabilita la interrupci n de ON TIME Una interrupci n permitida por ONTIME causa que la ejecuci n del programa contin e en el n mero de l
125. identificar nicamente a la variable En vez de usar nombres de variables tales REGO REG1 REG10 REG20 use un arreglo con dimensi n en ingl s ARRAY tal 2 Las variables de arreglo incluyen una expresi n o un sub ndice de una dimensi n en el rango de 0 254 incluidos en par ntesis V ariables v lidas de arreglos son K 9 ARRAY PRESION OUT INT A K BASIC ampliado de FACTS Eng no incluye arreglos de suscritos dobles tales como A X Y BASIC puede representar un arreglo de dos dimensiones como un arreglo codificado de una dimensi n Para convertir el arreglo de dos dimensiones ARRAY l nea columna en un arreglo de una dimensi n comience la declaraci n de dimensi n DIM ARRAY l nea columna Luego en vez de usar la notaci n ndicedobleB J use la expresi n de un ndice equivalente El programa STATS ABM de BASIC en el subdirectorio ILIBRARY contiene un programa ejemplo de estad stica que usa el concepto de un arreglo suscrito doble 3 Las variables de string son una forma especial de variables de arreglo y son representadas por el car cter de signo del d lar y una expresi n inclu dos en par ntesis La dimensi n de las variables de string se extiende a partir de 0 254 Use la declaraci n STRING para asignar la memoria para las variables de string Las variables v lidas de string son 1000 0 Primera variabl
126. iguiente muestra como ser a almacenada la variable ARRAY 2 Ejemplo gt STRING 0 0 gt ARRAY 2 12 8 gt P WORD 104H 32767 Localizaci n Valor Descripci n 32766 217 El valor ASCII para el ltimo car cter usado para defin r nombre dela variable de arreglo m s 128 En este ejemplo el valor ASCII para EJ el car cter Y 89 128 217 32765 143 El valor ASCII el primer car cter usado defin r una variable m s 26 vecesd la cantidad de caracteres en el nombre de la variable mayor que 2 65 26 5 2 143 32764 11 Cantidad m xima de elementos en la variable con dimensi n Por defecto ste es 11 ARRAY 0 hasta ARRAY 10 32763 6 El byte menos significativo de la direcci n base para d ARREGLO 32762 4 El byte m s significativo de la direcci n base para el ARREGLO 8 4 anual de referencia de BASIC FACTS Eng Cap tulo 8 Avanzado Formato de almacenamiento de variables string La declaraci n de string define la longitud m xima de string y la memoria asignadas para el almacenaje del string La STRING 2551 254 asigna la memoria 10 254 cadenas de caracteres 10 25441 1 2551 Las variables de string se almacenan a partir de WORD 104H hasta M TOP seg n lo mostrado el ejemplo siguiente Ejemplo gt la STRING 21 9 asigna la memoria para dos strings de nueve caracteres gt 0 UNO gt 1 DOS gt PRINT CHR BYTE WORD 104H U gt
127. ite colocar comentarios no ejecutables REM Comentarios La declaraci n REM se usa para agregar comentarios a un programa Todo lo que est en una l nea despu s de la instrucci n REM seignora en BASIC El hecho de que la declaraci n REM es ejecutable en el modo COMMAND puede ser til en ciertas aplicaciones Si se usa una computadora para cargar programas en el m dulo ASCII BASIC las declaracionesREM sin el n mero de l neas se podr an incluir en la versi n del programa de la computadora con todo no aparecer an en el programa del m dulo BASIC Esto permitir a que el programa principal fuera documentado sin consumir memoria en el sistema del m dulo ABM Commander Plus lleva este concepto un paso m s adelante y es que opcionalmente carga programas sin todos los comentarios en el programa Las l neas de programa que comienzan con REM comentarios se reducen apenas al n mero de l nea y REM de modo que el n mero de l nea se puede usar en declaraciones GOTO yGOSUB gt 10 REM hace salir el c digo gt 20 PRINT1 CD gt 30 IF INLEN2 0 THEN GOTO 30 REM Espera por una entrada 4 78 M anual de referencia BASIC de FACTS Eng Cap tulo 4 Declaraciones RESTORE Entradas salidas Funci n Sintaxis Vea tambi n Uso Ejemplo Permite que los valores constantes de la declaraci n DATA se puedan leer con la declaraci n READ otra vez RESTORE DATA READ Coloca el puntero usado por READ al inicio de los
128. itos hexadecimales mientras que la declaraci n 0 suprime los dos ceros a la izquierda si el n mero que seimprime es menor de 256 0100H El car cter H seimprime despu s del n mero para identificar el n mero como hexadecimal Los valores impresos por las declaraciones PH 0 y 1 se truncan a un n mero entero Si el n mero que se imprime no est dentro del rango de un n mero entero v lido 0 65535 inclusive entonces BASIC colocar el formato por defecto de la declaraci n PRINT Ejemplo gt 5 FOR 1 1 TO 2 gt 10 INPUT N MERO HEXADECIMAL H gt 20 PRINT1 H gt 30 INPUT N MERO DECIMAL D gt 40 1 gt 45 PRINT gt 50 NEXT gt RUN N MERO HEXADECIMAL 20A5H 165 N MERO DECIMAL 2250 FAH N MERO HEXADECIMAL 232H 50 N MERO DECIMAL 2257 101H 0101H 4 72 anual referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones PICK Entradas salidas Funci n Sintaxis Vea tambi n Uso Ejemplo O pera en n meros enteros de 16 bits en un byte o nibble o bit PICK variable porci n expres n variable PICK expres n porci n BITS La instrucci n PICK asigna el valor de la expres n ala porci n especificada de una variable num rica Solamente la porci n especificada de la variable es afectada por PICK El resto delos bits cambia Si el valor delaexpres n cabe en la porci n especificada de la variable
129. l nea en el programa ERASE n mero del nea inicial n mero del nea final Se usa el comando ERASE de remover l neas de programa desde el n mero de l nea inicial al n mero del nea final EN hacer un cambio de programa importante con ERASE puesto que no hay comando de UNERASE Nota Recomendamos guardar el programa al disco o archivar una copia en el archivo de programa antes de para deshacer lo que ha sido hecho Ejemplo gt LIST 10 REM ejemplo de BORRAR o ERASE 20 SI DEBUG THEN GOSUB 200 30 INLEN2 0 40 INLEN1 0 50 REM comienzo del programa principal gt ERASE 10 40 gt LIST 50 REM Comienzo del programa principal anual de referencia de BASIC de FACTS Eng 3 11 Cap tulo 3 Comandos del sistema LIST Funci n Sintaxis Uso Ejemplo Lista o muestra el programa seleccionado LIST l nea de comienzo l nea final El comando LIST se usa para mostrar el programa actualmente seleccionado LIST inserta espacios en el programa despu s de los n meros de l nea y antes y despu s de instrucciones para mejorar el aspecto y la legibilidad del programa LIST se puede usar de cuatro maneras LIST exhibe el programa entero LIST l nea de comienzo muestra el programa desde la l nea de comienzo hasta el final del programa LIST l nea de comienzo l nea de comienzo muestra solamente una sola l nea de programa LIST l nea de comienzo l nea final muestra las l neas desde la l nea de c
130. l PROGRAMA 7 otra vez gt EDIT lo mueve al PROGRAMA 0 gt PRM 0 READY gt LIST 10 PRINT1 PROGRAMA DE PRUEBA EI PROGRAMA 0 fue almacenado en archivo de memoria de programa como PROGRAMA 7 Luego el programa almacenado fue recuperado para modificar o EDIT Vea DELPRM para borrar un programa almacenado en el archivo de programa 3 16 M anual de referencia de BASIC de FACTS Eng DECLARACIONES En este cap tulo Declaraciones ESA AAA A AAA AA 4 5 ABS Operador matem tico 4 6 ASC Operadorde tring irritar 4 6 Operador matem tico 4 7 BIT y BITS Entradas salidas gt ias a e Va 4 8 BREAK Control de flujo nod 4 9 BYTE Operador avanzado 4 10 Operador avanzado ocupo A A 4 11 CBY Operador avanzado oo sesi socian ei Aa ias 4 11 CARS Operador de string 4 12 CLEAR Control de flujo AA 4 13 CLEAR I inter pci N oien e Dart 4 13 CLEAR S Control de flujo vercion rr aa aai 4 14 COMERR Operador avanzado 4 15 COPY Gerencia de memoria 4 16 COS Operador matem tico 4 18 CR Entr
131. l aviso de es una constante opcional de string Si se omite el aviso de String ser mostrado un signo de interrogaci n en la pantalla los datos Si se pone una coma antes de la primera variable que sigue un INPUT entonces no ser enviado el aviso del signo de interrogaci n La operaci n de INPUT es controlada por la declaraci n de SETIN PUT INPUT y SETINPUT pueden realizar m s funciones que las declaraciones INPUT yLINE INPUT encontrada en otros programas BASIC La capacidad de entrar sin eco es nica al BASIC ampliado de FACT S Eng la capacidad para redefinir el car cter de terminaci n de IN PUT por ejemplo en vez de CR y para controlar el tiempo que INPUT esperar datos vea SETINPUT lista de variables de string funciona igual que las declaraciones m ltiples de INPUT sin embargo INPLEN solamente devolver el n mero de caracteres entrados en la ltima variable de string Si se usa una lista de variables num ricas entonces cada n mero entrado se debe separar por una coma Se debe entrar un retorno de carro para se alar el fin de la listas de variables num ricas Este m todo de entrada de datos no se recomienda para la mayor a de las aplicaciones gt 10 INPUT NUM D1 REM Entre un RETURN despu s de cada gt 20 INPUT D REM Aviso cuando no hay coma gt 30 SETINPUT 1 REM permite no eco gt 40 INPUT 0 gt 30 PRINT NUM SPC 1 D1 SPC 1 D SPC 2
132. l control por redundancia longitudinal LRC se usa en una gran cantidad de protocolos porque es m s confiable que un simple CHECKSUM y m s f cil de colocar en ejecuci n El tipo LRC de ERRCHK es compatible con los protocolos DirectN ET lo mismo que HOSTLINK CCM2 de GE DYNAMIC RTU 110 REM El ejemplo siguiente se usa para calcular LRC para 120 REM un mensaje de HOSTLINK que escriba a los registros 130 REM 400 461 El programa requiere un cable del puerto 2 140 REM del m dulo de BASIC del ASCII a la CPU 335 150 REM 160 SETPORT 1 9600 N 8 1 SETPORT 2 9600 N 8 1 175STRING 2551 254 DIM WT 100 190 SETINPUT 1 1 0 0 100 10 200 Y 1 REM escribe un 1 a cada registro 220 FOR 1 1 TO 50 WT I Y NEXT 230 REM env a un mensaje Enquire a la CPU 335 240 PRINT2 CHR 78 CHR 21H CHR 5 250 INPUT2 1 REM Consigue Investiga El 290 0 CHR 1 01810041003200 CHR 17H REM Construye encabezamiento 310 ERRCHK 0 2 K 14 1 REM calcula el encabezamiento LRC 330 ASC 0 17 DBY 25 REM agrega LRC a la stringdel encabezamiento 350 PRINT2 USING 171 0 REM env a el jefe fuera del puerto 2 360 INPUT2 1 380 IF ASC 1 1 6 THEN GOTO 190 4 30 anual de referencia BASIC de FACTS Eng Avanzado Ejemplo Cap tulo 4 Declaraciones 390 REM Hace el string de datos de Write 400 0 CHR 2 420 FOR POS 2 TO 51 ASC 0 POS WT POS 1 NEXT POS 460 ASC
133. laraciones 5 Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo Relacionado Avanzado Convierte un n mero octal de base 8 en su equivalente string hexadecimal ASCII variable de string 0CTHEX expres n 1 HEXS PHO PH 1 La expresi n debe estar en el rango de 0 a 177777 El 1 es opcional y si es inclu do hace que 5 suprima ceros a la izquierda PRINT1 OCTHEX 10 0008 PRINT1 OCTHEX 177777 FFFF P OCTHEX 7777 1 REM ltima direcci n de memoria V de usuario 1000 con ceros a la izquierda suprimidos 700 1 1C0 OCTHEX 10 1 8 Para convertir una string hexadecimal ASCII en un n mero decimal agregue un 0 al principio del string y una al fin del string y use VAL VAL 0 OCTHEX 7777 1 H 4096 U se este comando para convertir una direcci n octal conocida de M emoria V en el equivalente hexadecimal Esta declaraci n es til para las tablas de look up y otros tipos de accesos de memoria calculados del PLC Asuma que un operador suministra la direcci n inicial de memoria V de una tabla de look up Este valor es 1400 La direcci n hexadecimal equivalente es STRADDR VAL 0 0OCTHEX 1400 1 H El valor del d cimo elemento en la tabla de look up especificada es TBL 9 S405_ STRADDR 9 El d cimo elemento en la tabla est en la direcci n octal de memoria V1411 4 64 M anual de r
134. ma Bit de error CRC 16 Escribe a posiciones de memoria especiales memoria interna de CPU Recupera un n mero de coma flotante de seis bytes de memoria Limita la memoria disponible para el int rprete BASIC Almacena un n mero de coma flotante de seis bytes en la direcci n de memoria especificada Lee en o escribe a una posici n de memoria espec fica de dos bytes M anual de referencia de BASIC de FACTS Eng 5 NDICE A CLEAR Control de flujo 4 13 CLEAR interrupciones 4 13 AXline columna Entradas salidas 4 112 CLEAR S Control de flujo 4 14 ABS Operador matem tico 4 6 Colocando el m dulo CoProcessor en Apoyo T cnico 1 2 funcionamiento A 2 ARGUM ENT STACK OVERFLOW 7 2 Comandos Lista E 1 ARITHMETIC OVERFLOW 7 2 Comandos 2 4 ARITHMETIC UNDERFLOW 7 2 COMERR Operador avanzado 4 15 ARRAY SIZE SUBSCRIPT OUT OF RANGE 7 2 COMMAND 3 7 ASC Operador de string 4 6 COMUNICACIONES CON CRC 16 8 6 ATN Operador matem tico 4 7 CONT 3 8 AUTOLN 3 3 Control de flujo 1 AUTOSTART 3 4 CONTROL STACK OVERFLOW 7 3 Convenciones usadas 1 3 B COPY Gerencia de memoria 4 16 CORRUPTED PROGRAM ENCOUNTERED 7 3 BAD ARGUMENT 7 3 COS Operador matem tico 4 18 BAD SYNTAX 7 2 CR Entradas salidas 4 18 Bit y BITS Entradas salidas 4 8 D BREAK Control de flujo 4 9 BYTE Operador avanzado 4 10 DATA Entradas salidas 4 19 DATES Operador de string 4 20 C DBY Operador avanzado 4 21 Declaraciones uso general 2 4 CALL
135. mantener un control de PID Para evitar que una interrupci n de ON TIM E ocurra durante un subrutina de interrupci n de ONPORT paretemporariamente el temporizador de software Ejemplo Prevenci n de interrupciones de ON TIME 10TIME 0 DBY 71 0 REM pone a cero el temporizador 100 1000 REM maneja la entrada del operador 110 2 2000 Muestra TIME DATES 200 REM lazo principal del programa REM 500 200 GOTO REM Finaliza el lazo principal del programa 1000 ONTIME 0 REM deshabilita la interrupci n de ONTIME 1010 REM procesa la entrada del operador 1400 IF INLEN1 gt 0 THEN GOTO 1010 REM Vaya a 1010 si necesario 1410 ONPORT1 1000 REM habilita el pr ximo ONPORT interno 1510 ONTIME 2 2000 Rem Reactiva el ONTIME interno 1520 RETI REM Final de subrutina de entrada del operador 2000 PRINT Q 1 50 DATE SPC 2 TIMES 2010 TIME 0 DBY 71 0 REM Pone a cero el temporizador 2020 ONTIME 2 2000 REM Habilita ONTIME 2030 RETI REM Final de subrutina de interrupci n de ONTIME anual de referencia de BASIC de FACTS Eng 4 7 1 Cap tulo 4 D eclaraciones PHO y 1 Entradas salidas Funci n Imprime n meros hexadecimales de 2 y 4 d gitos Sintaxis 0 expr expr Vea tambi n OCTHEX Uso Las declaraciones de PH 0 y de PH 1 funcionan igual que la declaraci n PRINT excepto que los valores salen en formato hexadecimal 4 La declaraci n 1 imprime siempre cuatro d g
136. mo en milisegundos que la declaraci n IN PUT esperar el recibo del primer car cter Si un car cter no se recibe dentro del tiempo especificado entonces BASIC reanudar la ejecuci n con la declaraci n que sigue la declaraci n INPUT Si epea primer es 0 entonces la declaraci n IN PUT esperar indefinidamente un car cter ste es el valor por defecto epera ltimo es una expresi n de n mero entero 0 a 65535 que especifica el tiempo m ximo en milisegundos que la declaraci n IN PUT esperar el recibo de cada car cter subsecuente a haber recibido el primero Si no se recibe otro car cter dentro del tiempo especificado entonces BASIC reanudar la ejecuci n con declaraci n que sigue ala declaraci n IN PUT Si ltimo es 0 entonces la declaraci n IN PUT no tendr un time out Este es el valor defecto subsecuentes IN PUT Cuando est lN PUT sin argumentos ser generado un 4 anual de referencia de BASIC de FACTS Eng 4 85 Cap tulo 4 D Ejemplo 1 Ejemplo 2 Ejemplo 3 Ejemplo 4 10 REM INPUT no tiene eco de los caracteres 20 SETINPUT 1 10 REM siempre entre con INPUT 3 caracteres 20 SETINPUT 0 0 0 3 10 TERM 61 REM configura el caracter de terminaci n de INPUT 11 REM como 20 ESPERA1 3000 REM Time out si no hay INPUT en 3 segundos 30 ESPERA2 100 REM Time out si no m s INPUT en 1 segundo 40 SETINPUT 1 0 TERM 79 ESPERA1 ESPERA2 05
137. n 9600 baud 10 7 100 PRINT STRING de prueba REM en 19 200 baud 5 65 100 PRINT STRING de prueba Rem en 38 400 baud 3 25 100 A 2 7 18 48 100 BITS A REM descifra un registro de E S de 8 Bits 57 anual de referencia de BASIC de FACTS Eng Ap ndice D Velocidad de ejecuci n de programas Sugerencias para hacer m s r pidos sus programas Durante la ejecuci n de programa cuando BASIC ampliado de FACTS ENGINEERING encuentra una nueva l nea dereferencia tal como GO SU B 6000 explora el programa entero que comienza en el n mero de l nea m s bajo Por lo tanto las l neas referidas con frecuencia se deben poner tan cerca del inicio del programa como sea posible Por ejemplo un GOSUB con una declaraci n RETURN en el final de un programa largo podr a necesitar 8 milisegundos para ejecutarse GOSUB con una declaraci n RETURN LM m s cerca del comienzo del programa en el mismo programa 1 RETURN podr a requerir solamente 1 5 milisegundos para ejecutarse Las variables que se encuentran primero durante la ejecuci n de un programa BASIC se asignan en el comienzo de la tabla variable D efiniendo Z como la d cima variable un programa caus la declaraci n IF Z THEN END para ejecutarse en 1 30 milisegundos Definiendo Z primero en el programa hace la misma declaraci n ejecutarse en 1 11 milisegundos se gana el 15 Un nombre de ocho caracteres puede requerir el 20 m s tiempo de interpretar que
138. n entrando y ejecutando los ejemplos en la secci n de COMIENZO R PIDO en el ap ndice A del manual de usuario espec fico del m dulo Esta secci n gu a al usuario con los diversos pasos del desarrollo de un programa en BASIC El BASIC ampliado de FACTS Eng se basa en el compilador del MCS Basic 52 con muchos mejoramientos e instrucciones agregadas orientadas para control El BASIC ampliado de FACTS Eno lee interpreta y ejecuta una lista de instrucciones que se almacenan en la memoria del m dulo Esta lista de instrucciones es el programa de usuario El programa es escrito y cargado en la memoria por el usuario La funcionalidad del programa es determinada por las instrucciones contenidas en el programa Modos de funcionamiento El int rprete del BASIC ampliado de FACTS Eng funciona en dos modos El modo directo o COMMAND o el modo RUN operaci n Los comandos pueden ser entrados solamente cuando el m dulo est en el modo COMMAND El int rprete de BASIC toma acci n inmediata despu s de que se haya entrado un comando Se entra corrige modifica lista y copia programas en d modo COMMAND El m dulo se puede programar para entrar en cualquier modo despu s de un reset o al energizar el m dulo con el comando de AUTOSTART Reset Un reset del m dulo ocurre bajo las siguientes condiciones para los tipos siguientes de m dulos m dulos 305 de BASIC ocurre una energizaci n el usuario teclea el comando RESET en el avis
139. nar el programa secuencialmente 5 Un n mero de l nea de programa se puede usar solamente una vez en un programa solamente se permite un n mero de l nea en cada l nea de programa NOTA Si se entra el mismo n mero de l nea m ltiples veces entonces la ltima l nea introducida sobreescribir a la anterior 6 Los espacios espacios en blanco entrados en l neas de programa entre instrucciones operadores variables expresiones y n meros son ignoradas por BASIC sin embargo BASIC insiere autom ticamente espacios durante un LlSTado para mejorar el aspecto y la legibilidad del programa 7 Las l neas de programa comienzan con un n mero el rango de 0 65535 y se terminan con un retorno de carro N meros de coma flotante 1 Los n meros de coma flotante tienen un rango de E 127 99999999E 127 2 Losn meros de coma flotante pueden entrar y salir usando dos notaciones diferentes A Coma flotante fraccionaria 93 65 Coma flotante exponencial 39 6537E 6 El BASIC redondea n meros de coma flotante a ocho d gitos significativos 4 Cada n mero de coma flotante requiere seis bytes de memoria para el almacenaje N meros enteros 1 Los n meros enteros tienen un rango de 0 65535 2 Los n meros enteros pueden entrar y salir usando dos notaciones diferentes A N mero entero D ecimal 127 N mero entero exadecimal 0A53H 3 Los n meros enteros que se representan en formato
140. ng 4 73 Cap tulo 4 D eclaraciones Registro 1120H en hexadecimal trbit 0 3rbit 1 Valor en binario 0000010010001000 La palabra contiene una cantidad impar de bits 1 1120H o 4384 tratado como BCD 1120 decimal Registro con bytes intercambiados 2011 POP Operadoravanzado Funci n Sintaxis Vea tambi n Uso Ejemplo Recupera un valor desde el stack POP variable variable PUSH La declaraci n POP recupera un valor de la parte superior del stack del argumento y lo asigna a una variable La ltimavariable en lalista de variables de la declaraci n POP tendr asignada el ltimo valor desde el stack del argumento Ver el gemplo de PUSH 4 74 M anual referencia de BASIC de FACTS Eng Cap tulo 4 D 5 PRINT Entradas salidas Funci n Sintaxis Abreviatura Vea tambi n Uso Ejemplo Uso especial Transmite datos saliendo del puerto serial especificado PRINTn expr expr P P1 P2 P3 TAB Colocaci n de cursor absoluta en la l nea corriente SPC Colocaci n de cursor relativa en la l nea corriente CR D evuelve el cursor a la posici n 1 la l nea corriente ning n LF EM y Colocaci n de cursor absoluta en la pantalla AN SI USING Para alinear las comas de n meros impresos con PRINT y para imprimir un n mero especificado de caracteres de una variable de string PRINT transmite datos saliendo del puerto serial especificado por n
141. nsi n 8 3 FORMATO de ALMACENAJE VARIABLE de STRING 8 4 COMUNICACIONES CON CRC 16 AUTOM TICO 8 6 Operaci n del CRE parer is A AE 8 6 Transmitiendo COMERC vial e te da 8 6 Recepci n con CRE as e a sta e dE se 8 6 8 7 Examinando los caracteres 16 8 7 Programa de demostraci n de CRC 8 7 Ap ndice A Como finalizar un programa Colocando el m dulo CoProcessor en funcionamiento A 2 Ap ndice B Palabras reservadas Palabras RESEIVAdaS osas ao sa da B 2 S mbolos ReservadoS B 2 Ap ndice C Tabla ASCII TABLA DE CARACTERES de CONTROL C 2 TABLA DE CONVERSI N ASCII ocooo oo C 3 Ap ndice D Velocidad de ejecuci n de programas BASIC Sugerencias para hacer los programas m s r pidOS D 2 Vi anual de referencia de BASIC de FACTS Eng Contenido Ap ndice E Lista de declaraciones y de operadores Comandos vada e Ss El Control de exito narra E 1 ENTad a Salidas ti E A E E 2 Inter pciones rd el 2 Operadores MateM tiCOS E 2 Gerencia de memoria a ARA AE E 3 Missean East AAA A cs Operadores de sring
142. ntaxis Vea tambi n Uso Ejemplo Asigna valores constantes de la declaraci n DATA a variables READ variable variable DATA RESTORE READ asigna el valor de una expresi n num rica especificada en una declaraci n DATA ala variable Varias variables en la lista de READ son separadas por comas EM A la primera variable en la primera declaraci n READ en el programa se le asigna el valor de la primera expresi n en la primera declaraci n DATA en el programa Cadavariable adicional encontrada en una declaraci n READ sele asigna el valor de la expresi n siguiente en una declaraci n DATA Las declaraciones DATA aparecen a las declaraciones READ como una lista larga de expresiones Si se ha le do la ltima expresi n en la declaraci n DATA y se ejecuta otra declaraci n READ BASIC parar la ejecuci n del programa con el error NO DATA In LIN E gt STRING 8001 79 REM asigna espacio para 100 79 strings gt 10 REM Carga o copia c digos de error gt 20 FOR CODIGO 1 4 gt 30 READ ERR CODIGO gt 40 NEXT CODIGO gt 50 DATOS 2 4 7 22 gt 60 2 Sin papel gt 70 4 El alimentador est con nivel bajo gt 80 7 Presi n demasiada baja gt 90 22 No puede seguir sin el pago final de gt 91 22 22 esta m quina anual de referencia de BASIC de FACTS Eng 4 77 Cap tulo 4 D eclaraciones REM Miscel neo Funci n Sintaxis Uso Ejemplo Perm
143. nte cuando recibe su propia direcci n se eliminan tiempos adicionales de software para comparar direcciones Una vez que AAR sea habilitado por la declaraci n SET PORT se configura el noveno bit del primer byte de cada declaraci n PRINT Este byte es la direcci n del esclavo blanco a ser usado en las transacciones de comunicaci n El noveno bit es borrado los caracteres restantes en la declaraci n PRIN T Cuando un esclavo blanco recibe un byte de direcci n correcto o igual ese byte y todos los bytes subsecuentes se cargan en el buffer de entrada Al completarse una declaraci n INPUT el esclavo vuelve autom ticamente al modo de hardware AAR La ejecuci n deuna declaraci n IN LEN 1 0 tambi n borrar el buffer de entrada y bloquea la recepci n posterior de datos hasta que se recibe otro byte de direcci n igual El maestro puede comunicarse con todos los esclavos usando la direcci n de broadcast 255 El maestro puede comunicarse selectivamente con los grupos de esclavos usando una direcci n de grupo La direcci n individual de esclavos es especificada por la direcci n remota El byte opcional de m scara define posiciones de bit que no importan en la direcci n remota lo que proporciona as la flexibilidad de direccionar uno o m s esclavos a la vez anual de referencia de BASIC de FACTS Eng 4 91 Cap tulo 4 D eclaraciones Si el n mero de ceros en el byte la m scara esigual ent
144. o mienzo y termina con la l nea final gt LIST 10 REM EJEMPLO LIST 20 A B C 2 30 END READY gt LIST 20 20 A B C 2 30 END READY gt LIST 10 20 10 REM EJEMPLO LIST 20 A B C 2 READY gt LIST 20 20 A B C 2 Un listado causado por LIST puede ser terminado tecleando lt CTrL C gt LIST puedetambi n ser parado apretando XOFF lt CTRL S gt y despu s ser recomenzado incorporando XON lt CTRL Q gt O bserve que la nica entrada por el puerto serial que aceptar BASIC despu s de XO FF es XON lt CTRL C gt Vea SETPORT para m s informaci n sobre el control deflujo XON y XOFF 3 12 anual de referencia de BASIC de FACTS Eng Cap tulo 3 Comandos del sistema NEW Funci n Sintaxis Uso Borra el PROGRAMA 0 y las variables NEW El comando NEW se usa para borrar el PROGRAMA 0 en la memoria de datos NEW tambi n borra todas las variables No hay ning n comando UNDO NEW de modo que use NEW con precauci n Ejecutar N EW tiene el mismo efecto que DELPRM 0 PROGRAM o PRM Funci n Sintaxis Uso Selecciona un programa archivado PROGRAM n mero El comando PROGRAMA se usa para seleccionar un programa para el 15 o para hacerlo funcionar El n mero especifica qu programa desea tener acceso el usuario vea SAVE Si se hace una tentativa de seleccionar un n mero de programa que sea mayor que el n mero de programas almacenados en el archivo del programa o menos
145. o de comando la CPU 305 va al modo de funcionamiento N ota El m dulo BASIC de memoria de 64K del usuario 305 no puede ser alcanzado hasta que la CPU 305 est en modo RUN Los m dulos 305 de memoria de usuario 128K se pueden seleccionar por colocaci n de puentes para hacer reset cuando la CPU 305 va al modo de programa Los m dulos 305 de la CPU BASIC los m dulos 405 de CoProcessor y los m dulos el usuario teclea el comando RESET en el aviso de comando En casos raros se puede tambi n generar un reset el temporizador a bordo del watchdog 2 2 anual de referencia de BASIC de FACTS Eno Cap tulo 2 Como comenzar BASIC Cuando ocurre un reset el int rprete verifica el modo corriente de AUTOSTART El modo AUTOSTART determina lo que har el int rprete Vea AUTOSTART para una descripci n detallada De acuerdo con los par metros corrientes en AUTOSTART el int rprete esperar un car cter de barra de espacio en el puerto de comando har funcionar un programa 2 especificado o imprimir un mensaje de energizaci n desde del puerto de comando y dar un aviso de comando U so general de memoria Todos los m dulos BASIC de FACTS Eng 305 BASIC BASIC de 305 CPU 405 CoProcessor 205 CoProcessor tienen la misma disposici n general de memoria del programa T picamente en los programas se eliminan errores 0 en memoria de datos y despu s se guardan y operan desde la memoria de programa
146. ode y los reglamentos de N ational Electrical anufacturers Association NEM A de Estados Unidos Otras oficinas gubernamentales reguladoras o locales pueden ayudar a determinar qu c digos y est ndares son necesarios para instalaci n y operaci n seguras Pueden resultar da os al equipo o lesi n seria al personal al no seguir todos los reglamentos y est ndares aplicables N o garantizamos que los productos descritos en esta publicaci n son convenientes para su aplicaci n particular ni asumimos cualquier responsabilidad del dise o de su producto instalaci n u operaci n Si usted tiene cualquier pregunta referentes la instalaci n o a la operaci n de este equipo o 5 usted necesita la informaci n adicional ll menos por favor en 1 800 783 3225 Este documento se basa en la informaci n disponible momento desu publicaci n Aunque se han hecho esfuerzos de ser precisos la informaci n contenida no pretende cubrir todos los detalles o variaciones hardware y software ni prever cada contingencia posible en la conexi n con la instalaci n la operaci n y el mantenimiento Pueden ser descritas caracter sticas que no est n presentes en todos los sistemas de hardware y de software FACTS ENGINEERING no asume ninguna obligaci n de aviso a los lectores de este documento con respecto a cambios realizados posteriormente FACTS ENGINEERING conserva el derecho de realizar cambios al hardware y al software en cualquier momento
147. omenzar una salidacon PRINT en un puerto diferente 4 100 anual de referencia de BASIC FACTS Eno Cap tulo 4 Declaraciones TAN Operador matem tico Funci n Calcular la tangente de la expresi n Sintaxis TAN Uso Calcula la tangente de la expresi n La expres n est en radianes Los c lculos se realizan con 7 d gitos significativos La debe estar entre 200000 Ejemplo PRINT TAN 3 14 4 EM 1 PRINT 0 anual de referencia de BASIC de FACTS Eng 4 101 Cap tulo 4 D eclaraciones Interrupci n Funci n TIME configura y recupera el valor del temporizador de software Sintaxis TIME expres n variable T IM E Veatambi n ONTIME SYSTEM Uso La declaraci nT IM E se usa para recuperar o asignar un valor al temporizador software esto es diferente que el reloj de Calendario 1 5 respaldado bater a en tiempo real D espu s de un reset el temporizador de software es activado y el operador TIME incrementar una vez cada 5 milisegundos El valor de TIM E se expresa en segundos Cuando el valor de T IM E alcanza una cuenta 65535 995 segundos el valor de TIM E vuelve a una cuenta de cero Cuando a TIME se le asigna un valor solamente se cambia solamente la porci n del n mero entero deTIM E Si 55 desea la fracci n de TIM E se puede cambiar seg n lo mostrado abajo La porci n fraccionaria de TIM E
148. onces n mero m ximo de esclavos en el grupo es 2 N Ejemplo Estaci n Auxiliar 1 direcci n remota 1111 0001 0F1H m scara 1111 1010 4 Direcci n de Grupo 1111 1 4 5 Estaci n Auxiliar 2 direcci n remota 1111 0011 m scara 1111 1001 0F9H Direcci n de Grupo 1111 0xx1 0F1H OF5H 7 Estaci n Auxiliar 3 direcci n remota 1111 0000 m scara 1111 1100 Direcci n de Grupo 1111 00xx 2 La direcci n nica del esclavo 1 es La direcci n nica del esclavo 2 es 7 La direcci n nica de la estaci n auxiliar 3 es OF2H La direcci n de grupo para los 3 esclavos es OF1H La direcci n del grupo para las estaciones 1 y 2 5 Ladirecci n de grupo para las estaciones 2 y 3 es OF3H y la direcci n del grupo para las estaciones 1 y 3 es 4 92 M anual referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones SGN Operador matem tico Funci n Sintaxis Uso Ejemplo D evuelve el signo de la expresi n SGN Expresi n D evolver un valor de 1 si la expres n es mayor que cero cero si la expresi n es igual a cero y 1 si la presi n es menor de PRINT SGN 52 4 1 PRINT SGN 0 0 PRINT SGN 8 1 anual de referencia de BASIC de FACTS Eng 4 93 Cap tulo 4 D eclaraciones SIN Operador matem
149. ones e INPLEN Entradas salidas Funci n uestra la cantidad de caracteres entrados con IN PUT Sintaxis conteo de caracteres IN PLEN Veatambi n INPUT Uso INPLEN devuelve la cantidad de caracteres recibidos por la ltima declaraci n de INPUT ejecutada IN PLEN es levemente m s r pido que la declaraci n LEN 1 milisegundo INPLEN es til cuando se entran strings ASCII de 8 bits con INPUT o de datos binarios que puedan incluir un ASCII 13 LEN parar de contar caracteres cuando encuentra un car cter retorno de carro ASCII 13 Ejemplo 10 STRING 2551 254 REM 10 254 strings 20 INPUT 0 30 IF INPLEN gt 2 THEN PRINT1 INPLEN gt RUN 2STRING LENGTH 2 17 10 INPUT A 20 PRINT1 INPLEN REM Imprima longitud del ltimo INPUT gt RUN 2135 6 5 anual de referencia de BASIC de FACTS Eng 4 47 Cap tulo 4 D eclaraciones INPUT Entradas salidas Funci n Sintaxis Vea tambi n Uso Ejemplo Carga variables con datos desde el puertol 2 INPUT n aviso de lt ring variable variable INKEY SETINPUT SETPORT n especifica el n mero de puerto que contienelos datos o los caracteres para la lista de variables Si se va a colocar m s que una variable num rica adentro de una declaraci n IN PUT entonces cada n mero se debe separar por una coma Por defecto un car cter de retorno de carro se ala el fin de una lista de datos de entradas num ricas y de string E
150. or lo tanto otra declaraci n ONPORT ser a inclu da normalmente en la subrutina de la interrupci n si debe continuar la interceptaci n de evento del puerto serial Un n mero de l nea 0 deshabilita la interrupci n especificada por O N PORT Unainterrupci n habilitada por ON PORT hace que la ejecuci n del programa contin e en el n mero de l nea que sigue despu s de la terminaci n de la declaraci n corriente NOTA ONPORT no espera la terminaci n de las declaraciones DELAY o IDLE antes de pasar control a la rutina de la interrupci n de ONPORT Ejemplo D espu s de que se ejecute una declaraci n en la subrutina que maneja la interrupci n la ejecuci n se reanuda con la declaraci n que sigue la ltima declaraci n ejecutada antes de que ocurri la interrupci n 10 REM Lazo principal del programa 20 Rem Aqu obtenemos el estado de la l gica del PLC 30 Rem Si el estado de la l gica indica una falla c clica entonces 40 Rem obtenemos el estado de entradas y salidas para determinar 50 REM causa y mostrarla en el puerto 1 60 REM 5 no es as muestre par metros de proceso 70 ONPORT2 1000 REM atrapa la entrada del c digo de barras 500 10 GOTO REM Fin del lazo principal del programa 1000 REM string de proceso de datos del c digo de barras 1400 ONPORT 2 1000 Rem supervisa al lector de c digo de barras 1410 RETI La declaraci n ONPORT se puede usar para m s rapidez y conveniencia En apl
151. os y casos espec ficos Exemplo Explicados por s mismos 3 2 anual de referencia de BASIC de FACTS Eng Cap tulo 3 Comandos del sistema AUTOLN Funci n Sintaxis Uso Ejemplo Entrada del n mero de l nea de programa autom tica AUTOLN n mero del nea inicial incremento UseAUTOLN para entrar autom ticamente n meros de l nea cuando se hace el programa La enumeraci n de l neas autom tica comienza con el n mero l nea inicial Las l neas de programa sucesivas ser n aumentadas el incremento especificado El incremento es opcional El valor prefijado del incremento es 10 Entre CONTROL C para parar la enumeraci n autom tica de l nea Entre ConTROL D para saltar el n mero de l nea actualmente exhibido gt LIST 1000 REM Comienza el control del soldador 1010 PRINT1 0 1020 IF DEBUG THEN PRINT2 0 1030 gt AUTOLN 1002 2 1002 REM agregue documentaci n adicional 1004 REM 0 direcci n comando 1006 REM ACK del soldador estar en 1 cuando haya RETURN 1008 REM ninguna respuesta del soldador 1 1010 lt entre Ctrl D gt para saltar este n mero de l nea 1012 REM DEBUG NOT 0 para supervisar la actividad del puerto 1 1014 lt entre Ctrl C gt para salir de la enumeraci n de l nea autom tica READY gt LIST 1000 REM Comienza el control del soldador 1002 REM Agrega r pidamente documentaci n adicional 1004 REM 0 direcci n comando 1006 REM A
152. plo PRINT ATN 3 1415926 4 1 2626272 PRINT ATN 1 78539804 M anual de referencia de BASIC de FACTS Eng 4 7 Cap tulo 4 D eclaraciones y BITS Entradas salidas Funci n Sintaxis Vea tambi n Uso Ejemplo D escifra y codifica una variable de 16 bits var BIT sub ndice sub ndice expresi n var BITS BITS expres n PICK El BIT ser usado normalmente para descifrar puntos del estado de entradas del PLC o para codificar salidas del PLC El sub ndice se refiere a una posici n de bit particular 0 15 o S para los 16 bits PRMO READY gt LIST 10 REM 20 WRD 65534 REM WRD es una variable que contiene un valor 30 BITS WRD REM de 16 bits de un registro de entradas y salidas 30 FOR BT 0 TO 15 40 PRINT1 gt 50 IF BIT BT THEN PRINT1 ON ELSE PRINT1 OFF 60 NEXT BT PRMO READY gt RUN 0 gt OFF BIT 1 gt ON BIT 2 gt ON BIT 3 gt ON BIT 4 gt ON BIT 5 gt ON BIT 6 gt ON BIT 7 gt ON BIT 8 gt ON BIT 9 gt ON BIT 10 gt ON 11 gt ON 12 gt ON 13 gt ON 14 gt ON BIT 15 gt ON 4 8 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones BREAK Control de flujo Funci n Sintaxis Vea tambi n Uso Permitir e deshabilitar lt CTRL C gt parar la ejecuci n del programa BREAK Ve
153. r de 255 Los arreglos BASIC deben ser de una dimensi n EM Para implementar un arreglo de dos dimensiones Vea ARREGLOS DE INDICESDOBLES en el cap tulo COMO COMENZAR La declaraci n DIM puede aparecer en cualquier lugar en el programa excepto antes de una declaraci n STRING Al tratar de redimensionar un arreglo o tener acceso a un elemento de arreglo que est fuera del alcance de la variable con dimensi n generar un mensaje ERROR ARRAY SIZE SUSCRIPT OUT OF RANGE IN LINE XX TAMANO DEL ARREGLO SUBINDICE FUERA deRANGO EN LA L NEA XX Puesto que el modo 2 del AUTOSTART conserva datos en arreglos con dimensi n se debe ejecutar la declaraci n DIM en modo COMMAND No re dimensione arreglos en el programa al usar el modo 2 de AUTOSTART Si se usa una variable puesta en un arreglo que no ha sido dimensionada por la declaraci n DIM entoncesBASIC dimensiona autom ticamente el arreglo con 10 elementos Es una buena pr ctica dimensionar expl citamente todos los arreglos Ejemplo 10 DIM A 20 B 20 20 C 2 9 REM ARREGLO DE TAMA O ASIGNADO DE 10 30 DIM D C 2 2 40 REM LA EXPRESI N 2 2 DEBE SIEMPRE SER lt 254 anual de referencia de BASIC de FACTS Eng 4 23 Cap tulo 4 D eclaraciones 4 DO UNTIL Control de flujo Funci n Ejecuta un lazo hasta que una prueba en la parte inferior del lazo sea TRUE Sintaxis DO UNTIL expres n de comparaci n Veatambi n DO WHILE Uso Las declaraciones DO UNT
154. ra aa 4 47 INPUT Entradas salidas iia e 4 48 INPUT Manejo del error de INPUT 4 49 INPUT Entrada de caracteres ASCII no est ndares 4 50 INPUT Caso especial de entradas del car cter de control 4 51 INSTR Operador de ring 4 52 INT Operador matem tico 4 53 LCASE Operador de sring e 4 54 LEFT Operador de ring e 4 55 LEN Operador de ring 4 56 4 57 LOAD LD Operador avanzado 4 58 LOCKOUT Control de flujo ira da a a 4 60 LOF Gerencia de memoria 4 61 LOG Operador matem tico 4 61 MID Operador de string 4 62 MTOP Operador avanzado 4 63 Operador de string 4 64 ON GOSUB Control de flujo 4 65 ON GOTO Control de flujo 4 66 ONERR CGontrol de TO de id bas 4 67 ONPORT Interrupci n 4 68 ONTIME Interrupci n ranuras e
155. rdadero o falso LOOKOUT CONT Verdadero o falso es una expresi n que cuando es igual 0 deshabilita la terminaci n del programa al apretar las teclas lt CTRL C gt Si verdadero o falso no es 0 entonces BASIC verifica durante IN PUT y despu s de ejecutar cada EM l nea de programa para considerar si se entrado un lt CTRL C gt U n programa interrumpido con lt CTRL C gt se puede reanudar el punto de interrupci n con CONT NOTA verdad cero falso diferente a cero Ejemplo N ormalmente se permite usar BREAK durante el desarrollo de un programa solamente BREAK debe ser deshabilitada para la mayor a de aplicacioness industriales Si BREAK es deshabilitada por BASIC entonces la ejecuci n del programa continuar hasta llegar a una declaraci n END STOP o hasta que se genera un error El modo 1 o 2 del AUTOSTART ejecuta un programa despu s de un reset Si el programa hace que BREAK deshabilite y entonces nunca ejecute una declaraci n EN D entonces el programa no tendr m s acceso normalmente Para tener acceso al programa usted debe cambiar el modo de AU TO START Vea el manual de usuario espec fico del m dulo para la localizaci n del puente CLEAR ALL que puentea los par metros almacenados de AUTO START gt REM permite la interrupci n del programa gt 10 BREAK 1 gt REM deshabilita la interrupci n del programa gt 10 BREAK 0 gt REM si lt CTRL C gt est activado entonces lo d
156. referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones CR 4 Null 5 b 6 CR 7 LF 8 PRMO READY gt anual de referencia de BASIC de FACTS Eng 4 45 Cap tulo 4 D eclaraciones INLEN Entradas salidas Funci n Sintaxis Vea tambi n Uso Ejemplo Lafunci n IN LEN retorna la cantidad de caracteres que esperan en el buffer de entrada de una declaraci n INLEN INLEN borra el buffer especificado de entrada conteo de caracteres INLEN n mero de puerto INLEN n mero de puerto 0 INPLEN ENTRADA El n mero de puerto identifica el puerto de comunicaci n serial 1 2 El conteo de caracteres es una variable que contiene el n mero de caracteres en el buffer especificado de entrada del puerto de comunicaci n Si se llena el buffer de 255 caracteres todos los caracteres adicionales seignoran a excepci n de de CONTROL Q CONTROL S y el conteo de car cteres continuar devolviendo 255 Configurando el n mero de puerto de INLEN a cero borra el buffer de la entrada 10 REM Espera por 10 caracteres en la entrada 11 REM buffer 20 IF INLEN lt 10 THEN GOTO 20 30 INPUT2 0 40 IF INSTR 0 RA1 1 THEN GOTO 100 50 REM Transmisi n no para esta direcci n remota 60 INLEN2 0 REM Limpia el buffer de entrada 70 GOTO 20 100 REM resto de proceso del buffer de la entrada 4 46 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraci
157. ros v lidos en bit a bit 16 bits Los argumentos de n meros que no son enteros en el rango 0 65535 inclusive son 6 truncados N meros fuera de este rango generar n el mensaje ERROR BAD ARGUMENT OPERADOR DESCRIPCION FORMA GENERALIZADA EJEMPLO 2 al 3 OR EXCLUSIVO expresi n XOR expresi n PRINT 2 XOR 3 1 NOT NOT NOT expresi n PRINT NOT 2 65533 TABLAS DE VERDAD DELOSOPERADORES L GICOS A AND B A OR B A XOR B NOT A 6 2 M anual de referencia de BASIC de FACTS Eng Cap tulo 6 O peradores l gicos y de comparaci n e OPERADORES DE COMPARACI N Los operadores de comparaci n se usan para probar si una relaci n especificada entre dos expresiones es VERDAD o FALSA Si la relaci n es VERDADERA entonces se da como resultado todos unos 65535 Si la relaci n es FALSA entonces da como resultado un 0 Tabla de operadores de comparaci n OPERADOR DESCRIPCION FORMA GENERALIZADA EJEMPLO 0 lt gt NO IGUAL A expresi n lt gt expresi n PRINT 2 lt gt 3 6 65535 0 lt MENOR QUE expresi n lt expresi n PRINT 2 lt 3 65535 gt MAYOR O IGUAL expresi n gt expresi n PRINT 2 gt 3 QUE 0 lt MENOR O IGUAL expresi n lt expresi n PRINT 2 lt 3 QUE 65535 Puesto que los operadores de comparaci n entregan como resultado un n mero entero v lido espec ficamente un 0 o 65
158. s a escribir en la declaraci n byte m s significativo DBY 35 Apaga o enciende la verificaci n de error CRC 16 DBY 41 DBY 41 N0T 0 2 DBY 41 3 COMMANDEl DBY 71 Porci n fraccionaria de TIM E anual de referencia de BASIC de FACTS Eng 4 2 1 Cap tulo 4 D eclaraciones DELAY Miscel neo Funci n Inserir una pausa Sintaxis DELAY milisegundos Veatambi n Uso milisegundo es una expresi n que indica el n mero de milisegundos que BASIC ampliado deber a detenerse brevemente antes de ejecutar la pr xima declaraci n Use DELAY en vez de lazos de software en los programas que funcionan apropiadamente en el hardware futuro que tendr velocidades de clock mayores quelo que era posible Ejemplo 10 PRINT2 Est usted despierto 20 DELAY 1000 REM se detiene por 1 s para una respuesta 30 IF INLEN2 0 THEN GOTO 60 40 PRINT1 El dispositivo en el puerto 2 est vivo 50 END 60 PRINT1 El dispositivo en el puerto 2 est durmiendo 70 END 4 29 anual de referencia de BASIC FACTS Eng Cap tulo 4 D 5 DIM Gerencia de Funci n Asigna la memoria para arreglos arrays num ricos Sintaxis DIM Var expr var expr Uso DIM declara variables de arreglo que no sean strings y asigna espacio en la memoria de datos para su almacenaje expr especifica el n mero de elementos o de sub ndices en el arreglo y debe ser meno
159. s de un reset ser usada la velocidad especificada por la ltima declaraci n de SETPORT El puerto 2 no apoya el modo 3 de AUTOSTART ser usado el modo 0 si se selecciona 3 Use COMANDO para DEBUG de comunicaciones con un dispositivo externo conectado con el puerto opuesto Se puede usar el COMMAND para conseguir la utilizaci n completa de ambos puertos mientras que reduce al m nimo la necesidad de intercambio de cable o uso de cajas de conmutaci n Ejemplo 1 Asuma que se ha completado un programa para una impresora conectada con el puerto 2 para reportaje de diagn sticos de un turno Ahora se desea hacer funcionar un regulador de un motor paso a paso usando el puerto 1 Para comenzar a programar el control del motor paso a paso gt SETPORT 2 9600 configura la velocidad para el puerto 2 gt COMMAND el puerto de programaci n ahora es el puerto 2 ueva el cable de programaci n del dispositivo desde el puerto 1 al puerto 2 de nuevo a la programaci n en el puerto 1 entre Ejemplo 2 El puerto de programaci n se puede seleccionar en el programa para realizar cambios de programaci n remotos con el m dem opcional construido en el tel fono del puerto 2 Check with MAC SYSTEM 7 0 REM Selecciona Puerto 1 para programar SYSTEM 7 NOT 0 REMSelecciona Puerto 2 para programar Vea ejemplo de aplicaci n TELESERV ABM en el directorio COMMANDER PLus ABM ABM TM Este comando es algo
160. sa este segmento de memoria para guardar o para archivar programas SAVE Los programas archivados en un archivo de memoria de programa se pueden mover de nuevo ala memoria de datos v ase comando EDIT para ejecutar modificaciones eliminar errores para tratar de ejecutar pruebas y despu s archivar nuevemente en el archivo de la memoria de programa Se pueden archivar m ltiples programas en la memoria de programa para crear un archivo del aplicaci n y de programas utilitarios Los programas se pueden ejecutar directamente desde la memoria de programa por el comando AUTOSTART o por otros programas la declaraci n de GO_PRO GRAM Los programas se pueden tambi n EN CAD EN AR juntos el modo 2 de AUTO START 2 3 M anual de referencia de BASIC de FACTS Eng Cap tulo 2 Como comenzar con BASIC Definici n de los comandos Comandos 1 2 3 4 5 El car cter aviso gt esenviado por BASIC y mostrado en la pantalla donde est instalado ABM Commander Plus para informar al usuario que est en el modo COMMAND y para dejarlo listo para recibir caracteres Los comandos pueden ser entrados solamente cuando el m dulo est en el modo COMMAND BASIC toma acci n inmediata despu s de que se haya entrado un comando Los comandos que comienzan con un n mero a partir de 0 a 65535 se interpretan como l neas de programa y se terminan con un car cter de retorno de carro uchas de
161. se en el programa es mostrada en may sculas 1085 PRINT1 1 1090 NEXT REM ejemplo de programa PRMO READY El programa es mostrado en negrilla arial 9 puntos Usamos las siguientes palabras como traducci n de la palabra en ingl s Save Archivar decir guardar el programa en un disco o sistema de almacenaje String Cadena de caracteres Download Bajar copiar un programa desde la ala memoria del m dulo En el texto original se usa alternativamente ABM para denotar gen ricamente el m dulo Coprocessor nota especial NOTA Cuando vea el icono de la libreta en el margen de la izquierda el p rrafo en el lado derecho ser una La palabra NOTA en negillla marcar el inicio del texto uando vea el icono del punto de exclamaci n en el margen de la izquierda el p rrafo a la derecha ser uno de ADVERTENCIA Esta informaci n puede evitar heridas p rdidas de propiedad o en casos extremos hasta la muerte La palabra ADVERTENCIA en negrilla marcar el inicio del texto Asuntos claves de cada cap tulo El inicio de cada cap tulo har una lista de los t picos ino principales encontrados en ese cap tulo INTRODUCCI N 1 En este capttido anual de referencia de BASIC de FACTS Eng 1 3 Cap tulo 1 Introducci n 1 4 anual referencia de BASIC de FACT 5 Eng COMO COMENZAR CON BASIC AMPLIADO DE Facts ENG En este cap tulo Requisitos
162. se puede usar para actualizar en varias ocasiones la misma l nea en un CRT gt 10 FOR J 1 TO 100 gt 20 PRINT1 USING J gt 30 NEXT Programa equivalente usando CHR gt 10 FOR J 1 TO 100 gt 20 PRINT1 USING J CHR 13 gt 30 NEXT J 4 18 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones DATA Entradas salidas Funci n Sintaxis Vea tambi n Uso Ejemplo DATA especifica expresiones para las declaraciones READ DATA expr expr READ RESTORE expr esuna expresi n o una constante num rica DATA declara las expresiones que se pueden asignar a las variables que siguen la declaraci n READ Las m ltiples expresiones especificadas en una declaraci n DATA son comas Las declaraciones DATA se pueden poner en cualquier lugar el programa puesto que no se ejecutan Las declaraciones se unen en la orden que aparecen en el programa Es decir se puede colocar mas de una declaraci n DATA y los datos siguen en secuencia 10 REM Cargue el arreglo ARRAY ARREG con constantes 20 FOR D 1 TO 5 30 READ ARREG D 40 NEXT D 50 DATA 35 1 10E3 OFFEH ARREG 2 2 D Por lo tanto el arreglo tendr los siguientes valores despu s de ejecutar este programa ARREG 1 35 ARREG 2 1 ARREG 3 10E3 ARREG 4 0FFEH ARREG 5 3 anual de referencia de BASIC de FACTS Eng 4 19 Cap tulo 4 D eclaraciones DATES
163. shake bidireccional de hardware CT 5 5 U Control de flujo unidireccional de hardware con CTS Ning n andshake Si ningunas de las opciones antedichas de andshake son apropiadas para su aplicaci n entonces considere el Control de flujo BASIC usando a los operadores DTR y DSR La salida RTS RS 232 se controla con el operador BASIC DTR El estado de la entrada CT S RS 232 es mostrado por el operador BASIC DSR Vea DSR y DTR Especifique una para multidrop para permitir que funcionen los transmisores R S 422 485 solamente cunado se hace un PRINT Especifique una para peer to peer para indicar dejar los transmisores RS 422 485 ON incluso cuando no se active PRINT Vea el manual de usuario para los ejemplos de cableado Handshake por Software El car cter de Control de flujo de software lt CTrL S gt XOFF ASCII 19 es usado por un dispositivo externo para decir al m dulo parar la impresi n PRINT Cuando el buffer de recepci n en el dispositivo externo se descarga suficientemente transmite una se al lt CTRL Q gt XON ASCII 17 al m dulo dici ndole que contin e transmitiendo El andshake por software funciona cada car cter en l nea por l nea como BASIC deM CS 51 de Intel Es decir BASIC ampliado de FACTS Eng verifica para ver 5 XOFF fue recibido antes de imprimir PRINT el pr ximo car cter 4 88 anual de referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones
164. sidad IDLE se puede usar para disminuir el tiempo de respuesta de una interrupci n 4 42 M anual referencia de BASIC de FACTS Eng Cap tulo 4 Declaraciones A IF THEN ELSE Control de flujo Funci n Ejecuci n condicional de declaraciones Sintaxis IF expresi n de comparaci n THEN dedaracion es ELSE declaraci n Uso si la expresi n de comparaci n no es igual a cero VERDAD se ejecutan las declaracion es que siguen a THEN Si la expresi n de comparaci n es cero FALSO entonces se ejecuta la declaraci n que sigue a ELSE Si se omite la ejecuci n contin a con la l nea de programa siguiente Se pueden ejecutar declaracion es m ltiples separadas por dos puntos despu s de TH EN si es VERDAD o despu s de ELSE si es FALSO Ejemplo gt 10 INPUT1 A gt 20 IF A lt 2 PRINT1 FIN GOTO 30 ELSE GOTO 22 gt 22 PRINT1 A 2 SPC 2 A A 2 GOTO 20 gt 30 END gt RUN 28 4 2 FIN La palabra clave GOTO es opcional cuando es usada inmediatamente despu s deTHEN o ELSE gt 10 IF B B gt C THEN GOTO 50 ELSE GOTO 100 O ALTERNATIVAMENTE gt 10 IF B B gt C THEN 50 ELSE 100 La palabra clave THEN se puede substituir por cualquier declaraci n BASIC v lida Los ejemplos siguientes entregan el mismo resultado gt 10 IF 1 2 THEN 50 ELSE PRINT1 I gt 10 IF 1 2 GOTO 50 ELSE PRINT1 gt 10 IF 1 2 THEN GOTO 50 ELSE PRINT1 anual de referencia de BASIC de FACTS Eng 4 43 C
165. sito de este cap tulo Este cap tulo contiene un listado alfab tico de las declaraciones y de los operadores de BASIC ampliado de FACTS que se ofrecen en todos los tipos de m dulos BASIC El manual de usuario espec fico del m dulo describe cualquier diferencia de definici n de estas declaraciones as como cualquier caracter stica espec fica a un m dulo particular Las declaraciones son descritas en el formato siguiente Declaraci n Tipo de declaraci n Los comandos son descritos en el formato siguiente Funci n D escripci n Sintaxis Como se escribe en el programa Vea tambi n tros comandos realcionados Uso Se definen los operandos y casos espec ficos Exemplo Explicados por s mismos 4 5 4 5 anual de referencia de BASIC de de BASIC FACTS Eng Cap tulo 4 D eclaraciones Cap tulo 4 D eclaraciones ABS Operador matem tico Funci n Sintaxis Uso Ejemplo Calcula el valor absoluto de la expresi n D evuelve el valor absoluto de la PRINT ABS 5 5 PRINT ABS 5 5 ASC Operador de string Funci n Sintaxis Vea tambi n Uso Ejemplo Cambia o devuelve el c digo ASCII de un car cter en un string c digo ASC variable de string posici n ASC variable de string posci n c digo CHR El operador ASC devuelve el c digo ASC II 0 255 para el car cter en cualquier posic
166. tico Funci n Calcula el seno de la expresi n Sintaxis SIN expresi n Uso Calcula el seno de la expres n que est en radianes Los c lculos se realizan a 7 d gitos significativos La expresi n debe estar entre 20000 y 200000 Ejemplo PRINT SIN 0 0 PRINT SIN 60 3 14 180 8657599 SPC Entradas salidas Funci n Utilizado en la declaraci n PRINT para hacer salir una cantidad de espacios Sintaxis PRINT SPC cantidad Vea tambi n PRINT CR TAB USING Q l nea columna Uso Cantidad es una expresi n que especifica cuantos caracteres de espacio ser n usados con PRIN T 0 255 El SPC es usado para poner espacios adicionales entre salidas de valores por la declaraci n PRINT Ejemplo 10 0 TEMPERATURA 15 1 PRESI N 20 PRINT1 0 SPC 4 1 30 T_POS LEN 0 2 3 40 P_POS LEN 0 4 LEN 1 2 3 50 PRINT1 USING SPC T_POS A SPC P_POS TEMPERATURA PRESI N 123 45 345 67 4 94 anual de referencia de BASIC FACTS Eng Cap tulo 4 Declaraciones SQR Operador matem tico Funci n Sintaxis Uso Ejemplo Calcula la ra z cuadrada de la expresi n SQ R expres n Calcula la ra z cuadrada la expres n no puede ser menor de El resultado devuelto ser exacto dentro de unatolerancia de o un valor de 5 en el menor d gito significativo PRINT SQR 9 PRINT SQR 45 PRINT SQR 100 EM 3 6 7082035 10 STOP Control de flujo
167. tido por cualquier declaraci n PRINT se incluye en el c lculo Por defecto BASIC agrega los dos caracteres CRC 16 primero el byte m s significativo M SB y al ltimo el byte menos significativo LSB al fin de la transmisi n La orden en la cual se agregan los caracteres CRC 16 en el fin de la transmisi n se puede seleccionar por el programa de usuario seg n lo mostrado abajo 10 SYSTEM 3 0 REM Tx MSB primero LSB al ltimo 10 SYSTEM 3 NOT 0 REM Tx LSB primero MSB al ltimo Recepci n con el CRC Cuando se habilita la funci n CRC BASIC calcula dos caracteres CRC 16 para cada declaraci n IN PUT Cada car cter recibido por cualquier una declaraci n IN PUT se incluye en el c lculo Por defecto BASIC mira los dos ltimos caracteres IN PUT para los dos caracteres CRC 16 SB primero y LSB al ltimo BASIC busca los caracteres CRC 16 en la misma orden en la cual BASIC transmitir a los caracteres Si los caracteres no son iguales ha ocurrido un error de comunicaci n BASIC configura un bit de error de comunicaci n COMERR todos 1s cuando hay un error de CRC Si sereciben caracteres correctos CRC 16 BASIC configura COM ERR a0 Resto inicial El resto inicial los caracteres iniciales de CRC son todos 1s despu s de un reset El resto inicial se puede cambiar por el programa de usuario seg n lo mostrado abajo 10 WORD 132H 0 REM cambia resto inicial a todos 05 10 WORD 132H OFFFFH REM cambia resto inicial a todos 1s
168. uales de usuario espec ficos del m dulo Las direcciones de memoria de est n disponibles el usuario MT es inclu do para la compatibilidad hacia atr s con los programas de Intel 5 51 Las nuevas aplicaciones normalmente no cambiar n este valor 3 4 M anual de referencia de BASIC de FACTS Eng Cap tulo 3 Comandos del sistema Ejemplo 1 Cambiar la velocidad de transferencia de datos gt AUTOSTART 0 0 9600 Mode 0 Edit Program 0 Baud 9600 Ejemplo 2 acer funcionar el programa 0 despu s de un reset sin borrar el contenido EM las tablas de variables gt AUTOSTART 2 0 Mode 2 RUN NO CLEAR Program 0 Baud 9600 Ejemplo 3 Hacer funcionar el programa 1 despu s de un reset e inicializar todas las variables a cero Configurar la velocidad para ambos puertos inicialmente a 1200 Asignar 200 bytes de memoria para uso del usuario gt AUTOSTART 1 1 1200 65535 200 Modo 1 RUN CLEAR Program 1 Baud 1200 Manteniendo el valor de las variables al faltar energ a El modo 2 conserva todas las variables incluyendo strings y variables con dimensi n durante la p rdida de energ a sin embargo las declaraciones BASIC CLEAR STRING y los comandos BASIC RUN y NEW borrar n las tablas de variables Por lo tanto estas declaraciones no se deben incluir en un programa al usar el modo 2 NOTA Al hacer DEBUG de un programa que use el modo 2 de AUTOSTART use GO
169. uarios de primera veZ 2 2 Modos de funcionamiento _ 2 2 Reset tales a ad a tacto ai 2 2 Uso general de la memoria 2 3 M mon a De la dada 2 3 Memoria de _ essa A a 2 3 Definici n de comandos sae porras rails 2 4 COMANDOS ales BR A ie A 2 4 Declaraciones aa 2 4 L neas de programa 2 4 N meros de coma flotante 2 5 N meros enteros AAA 2 5 Operadores riga E IREE E E DA EE a 2 5 Vanaples se as 2 6 EXPres Ones LAA A E A AAA EE A 2 7 CAP TULO 3 COMANDOS DEL SISTEMA AYTOLN tareas ASAS RARE 3 3 AUTOSTARD Dart DAA A ARA 3 4 Table of Contents Tabla del modo de reset de Autostart 3 4 Manteniendo el valor de las variables al faltar energ a 3 5 COMMAND a dra a a a ARA ERE 3 7 CONT bum urna a da asis Doa 3 8 2234 a e e e e eo de 3 9 A 3 10 ERASE SA AS A 3 11 USTA sedal e os Cua ds dead A 3 12 NENS tn do o AS
170. uidas a a a dd 7 4 INVAOD LINE NUMBER a dios ose ae do 7 4 A a 7 4 NOMDATA cid o A it A 7 4 NOT ENOUGH PRESSPACE sea ria AA 7 5 PROGRAM ACC avia tas 7 5 STRING TOO LONG crias 7 5 UNABLE TONVERIFY E aa 7 5 Cap tulo 7 Mensajes de error Cuando ocurren errores en el modo COMMAND ser generado eimpreso un mensaje de error en el puerto de comando Cuando un error ocurre durante la ejecuci n de programa se termina el programa se genera y se imprime un mensaje de error en el puerto de comando Luego el n mero de l nea de programa que caus el error imprime en el puerto del comando una X donde aproximadamente ocurri el error en la l nea Ejemplo ERROR BAD SYNTAX IN LINE 110 110 PRINT 14412 ARGUMENT STACK OVERFLOW Un error de DESBORDAMIENTO DE STACK DEL ARGUMENTO ocurre normal mente cuando se hace una tentativa de hacer POP de datos del stack cuando no hay datos presentes Este error ocurrir tambi n si el usuario desborda el stack del argumento empujando tambi n muchas expresiones sobre el stack ARITHMETIC OVERFLOW Si el resultado de una operaci n aritm tica excede el l mite superior de un n mero de coma flotante en BASIC ocurrir un ERROR ARITM TICO DE DESBORDAMIENTO El n mero m s grande de coma flotante
171. ulo 4 Declaraciones gt RUN los tres valores ahora se almacenan en memoria gt 105 REM Carga de nuevo los n meros almacenados arriba gt 110 FOR MEM 28007 TO STEP 28007 2 6 STEP 6 gt 115 REM MEM apunta a los n meros gt 120 LDO MEM gt 130 POP NUM gt 140 PRINT1 NUM gt 150 NEXT MEM gt RUN 907 701 3256 3 925 E 10 anual de referencia de BASIC de FACTS Eng 4 59 Cap tulo 4 D eclaraciones LOCKOUT Control de flujo Funci n Sintaxis Vea tambi n Uso Ejemplo Fuerza la ejecuci n de una programa LOCKOUT verdad o falso BREAK verdad o falso es una expresi n que cuando esigual a 0 deshabilita LO CKO UT Si verdad o falso es diferente a cero entonces BASIC no volver al modo de comando Si seincorpora un lt CTRL C gt se ejecuta una declaraci n EN D o STOP o un error es generado y luego BASIC recomenzar el m dulo basado en los par metros actualmente almacenados en AUT O START La declaraci n LOCKOUT es usada para suministrar seguridad de programa y variable de datos previniendo el acceso a personal desautorizado Si se habilita el LOCKOUT el modo de comando puede ser obtenido solamente removiendo el m dulo de la base y moviendo el puente CLEAR ALL en la tarjeta de circuito impreso a la posici n que deshabilita la funci n de AUTOSTART y borra toda la memoria de datos despu s de un reset vea el manual de usuario espec fico del m dulo LOCKOUT podr a tambi n habilitar
172. uno con una longitud m xima de 254 caracteres gt STRING 8001 79 asigna la memoria para 100 strings m ximo de 79 caracteres cada string Y a que el modo 2 no borra las tablas de variables se debe colocar dimensi n a los arreglos expl citamente con la declaraci n del modo de comando Usando una declaraci n DIM en un programa con el modo 2 seleccionado generar un error Si el contenido de las tablas de variables son borradas posteriormente entonces se debe entrar otra vez un comando DIM Los contenidos de las tablas de variables ser n borradas con Ejecutando un comando RUN o NEW o ejecutando las declaraciones CLEAR MTOP o STRING gt DIM REG 254 INP 64 OUT 32 3 6 anual de referencia de BASIC de FACTS Eng Cap tulo 3 Comandos del sistema COMMAND O Funci n Selecciona el puerto de programaci n Sintaxis COMMAND puerto Uso el puerto es 1 o 2 especifica el puerto de programaci n o de comando BASIC env a todos los mensajes a y acepta solamente CO M AN Dos del puero E especificado El puerto de programaci n o de comando por defecto es t picamente el puerto 1 vea manual de usuario espec fico del m dulo para verificar AU T O START especifica la velocidad inicial para el puerto 1 Se puede usar SET PORT para cambiar velocidad de transacciones del puerto 1 sin embargo despu s de que un reset se usa el valor de AUTO START La velocidad por defecto para el puerto 2 es 9600 D espu

Download Pdf Manuals

image

Related Search

Related Contents

MON3-2W/HR MON4-2W/HR  Instrucciones de uso Recipientes de presión    Techkonnection Corporate Business Service Manual  User`s Manual  GVM2 User Guide.psd  BOAS - HI-FI FM88.1 TRANSMISSOR DE MÚSICA PARA  Sony AKA-AF1 Operating Instructions  AVG-HDWP70RX User Manual  

Copyright © All rights reserved.
Failed to retrieve file