Thread View: es.comp.os.linux.programacion
3 messages
3 total messages
Started by Fernando Peral
Thu, 25 Feb 2010 11:02
callback puerto serie
Author: Fernando Peral
Date: Thu, 25 Feb 2010 11:02
Date: Thu, 25 Feb 2010 11:02
8 lines
971 bytes
971 bytes
Hola. Necesito "registrar" una función para que sea llamada cada vez que haya un dato en el puerto serie. Veo formas de hacerlo en Windows .NET y en linux con perl y java, pero no veo la forma de hacerlo en C o C++. ¿me podeis ayudar? graicas y un saludo
Re: callback puerto serie
Author: Pascal J. Bourguignon
Date: Thu, 25 Feb 2010 11:25
Date: Thu, 25 Feb 2010 11:25
22 lines
2318 bytes
2318 bytes
Fernando Peral <fperal@NOSPAMpatagonmail.com> writes: > Necesito "registrar" una funci�n para que sea llamada cada vez que haya > un dato en el puerto serie. Veo formas de hacerlo en Windows .NET y en > linux con perl y java, pero no veo la forma de hacerlo en C o C++. �me > podeis ayudar? Se puede hacer con aio. Puedes llamar a aio_read, con una estructura aiocb con un aio_sigevent, para que cuando datos llegan, un signal sea enviado al proceso, lo que hara, si has instalado un gestionador de signal, que este sea llamado. Pero, como no se puede hacer nada (o quasi nada) en los gestionadores de signal, no sirve mucho. aio no se usa mucho. Es un API bastante m�s complicado que read/write. Cuando tu programa necesita leer/escribir con various descriptores (puerto serie y stdin/stdout por ejemplo), lo que se hace es usar select(2) o poll(2). Otra soluci�n es usar un thread por descriptor. -- __Pascal Bourguignon__
Re: callback puerto serie
Author: Pascal J. Bourguignon
Date: Thu, 25 Feb 2010 11:28
Date: Thu, 25 Feb 2010 11:28
22 lines
2318 bytes
2318 bytes
Fernando Peral <fperal@NOSPAMpatagonmail.com> writes: > Necesito "registrar" una funci�n para que sea llamada cada vez que haya > un dato en el puerto serie. Veo formas de hacerlo en Windows .NET y en > linux con perl y java, pero no veo la forma de hacerlo en C o C++. �me > podeis ayudar? Se puede hacer con aio. Puedes llamar a aio_read, con una estructura aiocb con un aio_sigevent, para que cuando datos llegan, un signal sea enviado al proceso, lo que hara, si has instalado un gestionador de signal, que este sea llamado. Pero, como no se puede hacer nada (o quasi nada) en los gestionadores de signal, no sirve mucho. aio no se usa mucho. Es un API bastante m�s complicado que read/write. Cuando tu programa necesita leer/escribir con various descriptores (puerto serie y stdin/stdout por ejemplo), lo que se hace es usar select(2) o poll(2). Otra soluci�n es usar un thread por descriptor. -- __Pascal Bourguignon__
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads