私はCのシリアルポートを操作するためのオープンソースのクロスプラットフォームライブラリを探しています。これは素晴らしい PySerial ライブラリに沿ったものです(残念ながら、このアプリケーションにはCを使用する必要があります)。
私はこれだけを見つけました: http://www.teuniz.net/RS-232/ 、そしてそれはOSXの互換性について言及していないようです。
シリアルポート用のクロスプラットフォームCライブラリは、すでに20年間存在していたと思われるかもしれませんが、2013年の時点ではまだ存在していなかったため、 libserialport を作成しました。
Windows、Mac OS X、Linux(Androidを含む)、BSDでテストされており、おそらく他のUnixシステムでもビルドされます。それはサポートします:
最初の0.1.0リリースは、シリアルハードウェアをサポートするために Sigrok プロジェクトで積極的に使用されており、すでにいくつかのLinuxディストリビューションにパッケージ化されています。 gitバージョンには、USBシリアルアダプター(VID/PIDなど)に関する情報を取得するための新しいAPI呼び出しも含まれています。
これは恥知らずなプラグですが、Windows、Linux、OSXに移植可能なRS-232通信用のMITライセンスライブラリがあります。
C++ではなくCと言ったと思いますが、おそらく Boost Asioのシリアルポート を使用して、Cアプリケーションにリンクするライブラリにコンパイルすることができます。 POSIX互換であると主張しており、OSXはPOSIXです。
私はMITライセンス: https://github.com/Marzac/rs232
Cでプログラムされており、Windows、Mac、Linuxでうまく機能します。
AMSerialPort、goSerial、serialconnect、PolKitなどの行に沿って追加のOS X固有のObjective-Cコードを取得し、Cソースファイルの条件付きコンパイルを実装します。
OS Xは、_<termios.h>
_および_<unistd.h>
_の標準POSIXシリアルAPIをサポートしています。関数tcsetattr()
、cfsetspeed()
などを検索します。