23-12-2020, 23:36
Hola de nuevo, Alfredo.
Me encanta conversar con "compañeros" de viaje del mundo de la electrónica y la radiocomunicación. Estudié electrónica de joven y he sido radioaficionado desde muy joven también, aunque ahora mismo no estoy activo en radio desde hace unos años. Me gusta mucho el cacharreo y ojalá tuviera más tiempo para dedicarme a ello.
En cuanto al manejo del puerto USB en linux, es muy sencillo. En Linux todo, repito, TODO (incluso el hardware) es un fichero. Es decir, que se puede acceder a casi cualquier cosa mediante la ruta al fichero o al fichero que representa un dispositivo de hardware. Así que para acceder a cualquier puerto, tendremos que la ruta podría ser más o menos así: /dev/ttyS0, donde /dev es el directorio que contiene los dispositivos de hardware y ttyS0 en este caso es el primer puerto rs232 existente. Algo así como el COM1 en windows. ttyS1, ttyS2, etc para los siguientes. Del mismo modo, /dev/ttyUSB0 sería la ruta para leer/escribir en un puerto usb y también de la misma manera se podrían usar los números correlativos dependiendo de qué puerto esté en uso.
Dos comandos importantes para saber qué puerto USB está en uso son los siguientes:
dmesg - lista el buffer de mensajes del kernel y son visibles eventos de hardware como introducción o expulsión de un dispositivo USB
lsusb - lista los dispositivos conectados al bus correspondiente
A nivel informativo, estas herramientas son útiles para determinar si un dispositivo está físicamente conectado al sistema.
En cuanto a la lectura y escritura en los dispositivos, linux (y Gambas) los trata por igual, como un stream de datos (bits). Por lo tanto, se pueden leer y enviar datos usando funciones nativas de gambas de una forma muy sencilla y transparente para el programador, ya que es muy similar a abrir un fichero, leer o escribir y cerrarlo al finalizar.
He encontrado un ejemplo sencillo para ilustrar el concepto, sirve tanto para rs232 como para usb:
https://fossies.org/linux/gambas/app/exa...232.module
Y supongo que esto podría servir también para el puerto paralelo, aunque nunca lo he probado. Aquí hay algo más de información al respecto (en inglés):
http://gambaswiki.org/wiki/howto/parport?l=es
Espero que sirva de ayuda, si necesitas algo más concreto, puedes abrir un hilo específico en la sección correspondiente y trataremos de ayudarte.
Saludos
Me encanta conversar con "compañeros" de viaje del mundo de la electrónica y la radiocomunicación. Estudié electrónica de joven y he sido radioaficionado desde muy joven también, aunque ahora mismo no estoy activo en radio desde hace unos años. Me gusta mucho el cacharreo y ojalá tuviera más tiempo para dedicarme a ello.
En cuanto al manejo del puerto USB en linux, es muy sencillo. En Linux todo, repito, TODO (incluso el hardware) es un fichero. Es decir, que se puede acceder a casi cualquier cosa mediante la ruta al fichero o al fichero que representa un dispositivo de hardware. Así que para acceder a cualquier puerto, tendremos que la ruta podría ser más o menos así: /dev/ttyS0, donde /dev es el directorio que contiene los dispositivos de hardware y ttyS0 en este caso es el primer puerto rs232 existente. Algo así como el COM1 en windows. ttyS1, ttyS2, etc para los siguientes. Del mismo modo, /dev/ttyUSB0 sería la ruta para leer/escribir en un puerto usb y también de la misma manera se podrían usar los números correlativos dependiendo de qué puerto esté en uso.
Dos comandos importantes para saber qué puerto USB está en uso son los siguientes:
dmesg - lista el buffer de mensajes del kernel y son visibles eventos de hardware como introducción o expulsión de un dispositivo USB
lsusb - lista los dispositivos conectados al bus correspondiente
A nivel informativo, estas herramientas son útiles para determinar si un dispositivo está físicamente conectado al sistema.
En cuanto a la lectura y escritura en los dispositivos, linux (y Gambas) los trata por igual, como un stream de datos (bits). Por lo tanto, se pueden leer y enviar datos usando funciones nativas de gambas de una forma muy sencilla y transparente para el programador, ya que es muy similar a abrir un fichero, leer o escribir y cerrarlo al finalizar.
He encontrado un ejemplo sencillo para ilustrar el concepto, sirve tanto para rs232 como para usb:
https://fossies.org/linux/gambas/app/exa...232.module
Y supongo que esto podría servir también para el puerto paralelo, aunque nunca lo he probado. Aquí hay algo más de información al respecto (en inglés):
http://gambaswiki.org/wiki/howto/parport?l=es
Espero que sirva de ayuda, si necesitas algo más concreto, puedes abrir un hilo específico en la sección correspondiente y trataremos de ayudarte.
Saludos
Por favor, usa el corrector ortográfico antes de pulsar el botón 'Enviar'