AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Funciones estándar / Funciones de Windows / Funciones de puertos serie y paralelo
  • Utilización de una biblioteca externa: RXTX
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac CatalystUniversal Windows 10 App
Otros
Procedimientos almacenados
Define o modifica los parámetros para configurar el puerto serie, puerto paralelo o puerto de infrarrojos especificado.. Este ajuste es opcional.
Los valores de Default son los siguientes:
  • Velocidad de transferencia: 9600 Baudios
  • Paridad: nono
  • 8 bits de datos
  • 1 bit de parada
Atención: El ajuste para dos ordenadores relacionado debe ser idéntico.
Observaciones:
  • El puerto debe estar abierto (sOpen) antes de la llamada a sParameter. sOpen inicializa automáticamente el puerto serie.
  • LinuxJava Los puertos de infrarrojos no son compatibles.
  • Linux Sólo se admiten puertos serie.
Ejemplo
PortNum = sOpen("COM1", 2000, 2000) // Open COM1
IF PortNum <> 0 THEN
// Configure Com1: Rate 9600, even parity,
// 8 data bits, 1 stop bit
IF sParameter(PortNum, 9600, 1, 8, 0) THEN // Configure COM1
// Rest of process...
ELSE
Error("COM1 configuration error", ErrorInfo(errFullDetails))
END
sClose(PortNum) // Close COM1
ELSE
Error("Error opening COM1", ErrorInfo(errFullDetails))
END
Sintaxis
<Result> = sParameter(<Port number> , <Rate> , <Parity> , <Nb Data Bits> , <Nb Stop Bits> [, <DTR/DSR> [, <RTS/CTS> [, <XON/XOFF>]]])
<Result>: booleano
  • True si los parámetros se inicializaron correctamente,
  • False en caso contrario. La función HErrorInfo devuelve más detalles.
Observación: sParameter no tiene efecto si el puerto no se ha abierto previamente (por sOpen).
<Port number>: Integro
Identificador del puerto utilizado:
  • Número de puerto:
    • Número del puerto serie: 1, 2, 3, ... 32 para COM1, COM2, COM3, ... COM32.
    • Número del puerto paralelo: -1, -2, -3 o -4 para LPT1, LPT2, LPT3 o LPT4.
    • Número del puerto de infrarrojos: 1, 2, 3, ... 32 para IR1, IR2, IR3, ... IR32.
  • Identificador del puerto devuelto por sOpen (si esta función fue llamada con un nombre de puerto).
    Linux Sólo está disponible este tipo de parámetro.
<Rate>: Integro
Tasa de datos Transfer( expresada en Baudios o Bits por segundo).
<Parity>: Integro
Paridad de la transferencia:
0No parity
1Paridad par
2Paridad impar
<Nb Data Bits>: Integro
Número de bits por carácter: 4, 5, 6, 7 u 8.
<Nb Stop Bits>: Integro
Número de bits de parada:
01 bit de parada
11.5 bits de parada
22 bits de parada
<DTR/DSR>: Entero opcional
  • 0 (o False, valor predeterminado) si se debe ignorar el protocolo DTR/DSR y debe estar en modo "activo".
  • 1 (o True STRIMEULB) si el protocolo DTR/DSR debe estar en modo "handshake",
  • 2 si el protocolo DTR/DSR debe ser ignorado y si debe estar en modo "Inactive"....
    Para más detalles, consulte la documentación sobre la gestión de los puertos de comunicación.
Java Este parámetro no se tiene en cuenta.
<RTS/CTS>: Entero opcional
  • 0 (o False, valor predeterminado) si se debe ignorar el protocolo RTS/CTS y debe estar en modo "activo".
  • 1 (o True STRIMEULB) si el protocolo RTS/CTS debe estar en modo "Handshake",
  • 2 si el protocolo RTS/CTS debe ser ignorado y si debe estar en modo "Inactive"..
    Para más detalles, consulte la documentación sobre la gestión de los puertos de comunicación.
Java Este parámetro no se tiene en cuenta.
<XON/XOFF>: Booleano opcional
  • True si se debe tener en cuenta el protocolo XON/XOFF,
  • False (valor predeterminado) si se debe ignorar el protocolo.
Java Este parámetro no se tiene en cuenta.
Observaciones
Linux Caso especial para Linux:
  • Sólo se pueden abrir e inicializar los puertos serie.
  • Por Default, los usuarios no tienen acceso a los puertos seriales. Es necesario concederles derechos específicos para la gestión de los puertos serie..
Java

Utilización de una biblioteca externa: RXTX

En Java, el uso de funciones para el manejo de los puertos serie y paralelo (sOpen, sWrite, sRead, ...) requiere la presencia de una biblioteca externa: RXTX.
Esta biblioteca incluye un archivo Jar y una o más bibliotecas nativas que dependen del sistema operativo en el que se ejecuta la aplicación.. Para utilizar estas funciones:
  • el archivo Jar (RXTXComm.jar) debe:
    • en el mismo directorio que la aplicación Java generada por WINDEV,
    • en el classpath de ejecución de la aplicación,
    • ser incluido directamente en la aplicación generada (de la asistente para la generación de la Java).
  • se deben encontrar las bibliotecas nativas correspondientes al sistema operativo en el que se ejecuta la aplicación:
    • en el mismo directorio que la aplicación Java generada por WINDEV,
    • en la ruta de las librerías de aplicaciones (librarypath).
La biblioteca RXTX y su documentación pueden descargarse de: http://users.frii.com/jarvi/rxtx/index.html (enlace válido en el momento de la publicación de esta documentación).
Atención: La gestión de los puertos de infrarrojos no está disponible en Java.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd290com.dll
Versión mínima requerida
  • Versión 9
Esta página también está disponible para…
Comentarios
exemplo
sClose(EDT_Porta_COM)
// Open COM (using the port number)
// sOpen(Porta,SizeInBuffer,SizeOutBuffer,Timeout,ManagerEvents)
LineCom is boolean = sOpen(EDT_Porta_COM, EDT_Buffer_de_Entrada, EDT_Buffer_de_Saida)

IF LineCom = True THEN
// Configure COM1: Rate 9600, even parity,
// 8 data bits, 1 stop bit
//sParameter()
LineCom = sParameter(EDT_Porta_COM, EDT_Bit_por_segundos, EDT_Paridade, EDT_Bit_de_Dados, EDT_Bit_de_Parada)
// Rest of process...
EDT_Historico += sRead(EDT_Porta_COM,EDT_Buffer_de_Entrada) + CR + CR

EDT_Historico += sWrite(EDT_Porta_COM,EDT_Comando_AT) + CR + CR

EDT_Historico += sRead(EDT_Porta_COM,EDT_Buffer_de_Entrada) + CR + CR
// Close COM1
sClose(EDT_Porta_COM)
ELSE
Error("Error while opening COM"+EDT_Porta_COM)
END




Boller
20 05 2022

Última modificación: 13/01/2023

Señalar un error o enviar una sugerencia | Ayuda local