2010-06-04 14 views

Respuesta

25

Se podría pensar que una cruz -La biblioteca de plastform C para puertos serie es algo que ya debería haber existido durante 20 años, pero a partir de 2013 todavía no había ninguno, así que creé libserialport.

Se ha probado en Windows, Mac OS X, Linux (incluido Android), BSD y probablemente también se base en otros sistemas Unix. Es compatible con:

  • Puerto enumeración (obtención de una lista de puertos serie en el sistema)
  • apertura, cierre y consulta de los puertos
  • Configuración de los parámetros del puerto (velocidad, paridad, etc.)
  • puerto (operaciones de las líneas de control de módem, roturas, etc.)
  • lectura, escritura, y los datos de lavado
  • Esperando eventos
  • error informatio Obtención de señalización n

La versión inicial 0.1.0 está en uso por el proyecto Sigrok de soporte de hardware de serie y se empaqueta en varias distribuciones de Linux ya. La versión de git también incluye nuevas llamadas a API para obtener información sobre adaptadores serie USB (VID/PID, etc.).

+3

Excelente a excepción de la licencia de gnu – jjxtra

+0

La licencia es LGPL.Tomamos esa decisión específicamente para que también se pueda utilizar en proyectos de código cerrado. –

5

Me di cuenta de que decía C y no C++, pero quizás podría usar Boost Asio's serial ports y compilar eso en una biblioteca para vincularla con su aplicación C. Se dice que es POSIX compatible y OS   X es POSIX.

+0

Gracias por la sugerencia. – Hamza

3

conseguir un poco de código de Objective-C adicional OS X  -específico, a semejanza de AMSerialPort, goSerial, serialconnect, polkit, ... y poner en práctica una compilación condicional del archivo fuente C.

http://osx.hyperjeff.net/Apps/apps?f=serial

+0

Gracias por la sugerencia, pero me gustaría mantenerlo solo. – Hamza

2

OS X es compatible con la API estándar POSIX en serie, desde <termios.h> y <unistd.h>. Busque las funciones tcsetattr(), cfsetspeed() y así sucesivamente.

6

Este es un enchufe descarado, pero tengo una biblioteca con licencia MIT para la comunicación RS-232, que es portátil para Windows y Linux y OS   X aquí:

http://wjwwood.io/serial/

2

Solté la mina bajo la licencia MIT: https://github.com/Marzac/rs232

Está programado en C y funciona bien para Windows, Mac y Linux.

+0

realmente agradable y limpio. –

Cuestiones relacionadas