シリアルで35バイトのパケットを受信していますポートし、イーサネット経由で転送/トンネリングしたいだけです。 誰かが便利なコードスニペットを持っているかどうか疑問に思っていました。 netcatを使用してこれを実行できることは知っていますが、単純なC / C ++プログラムがバックグラウンドプロセスとして実行されることを望んでいました。 非常に限られたFlashでOpenWrt Linuxを実行しています。 前もって感謝します!
回答:
回答№1は4読み取り用にシリアルポートを開き、発信通信用のソケットを開く小さなプログラムを作成できます。
ループで、シリアルポートから読み取り、読み取り内容をソケットに書き込みます。
擬似的なコードでは:
int ser = open("/dev/ttyS0");
int sock = socket_connect();
for (;;)
{
ssize_t r = read(ser, data, MAXLEN);
if (r > 0)
write(sock, data, r);
}
回答№2の場合は0
これを行うには、ser2netを使用できます。 ser2net