• ベストアンサー

rtlinuxでシリアル通信

 rtlinuxでシリアルデバイス(rs232c)にメッセージを送るプログラム を書きたいのですがどう書いたら良いのか困っています。普通のLinuxで はtermos.hというAPIで書けるのですがRTでは無理ですよね。  簡単なサンプルプログラム(例えば"hello"という文字列をシリアルに 送るとか)は無いでしょうか。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • terra5
  • ベストアンサー率34% (574/1662)
回答No.2

RTLinux関数の最終リスト http://www.fsmlabs.jp/html/man_page_index.html rt_printfというのはなくて、rtl_printfならありますが、 カーネル用な感じがします。 また、他のも拡張部を使うための関数に見えるので, やはり特別な物は必要ないと思えますが。 RTLinuxとrtlinuxは別物でしょうか? また、駄目とありますが、どうやって判断したんでしょうか。 実際に試してみましたか? もっとも、RTLinux関数リストには rt_comという シリアルポート・ドライバと、それ用の関数があったので、 単にこれを使えばいい話かも知れません。 ところで、マニュアル類は読まれてますか? こういう説明はありそうに思うのですが。 特にlinuxとの違いというか、拡張部の説明は必ずありそうで、まっさきに読んでいるべきと思うのですが。

参考URL:
http://www.fsmlabs.jp/html/man_page_index.html
yomibitoshirazu
質問者

お礼

rt_comを使ってなんとか出来ました ありがとうございました。

その他の回答 (1)

  • terra5
  • ベストアンサー率34% (574/1662)
回答No.1

そのまま使えませんか? 多分,rtlinuxというのはリアルタイム制御のための拡張、リアルタイム性の低い部分の書き換え、 スレッド等のスケジューリングの変更したlinuxだろうと思うので, シリアルデバイスに関してはそのまま使えると思うのですが。 ART Linuxはそんな感じでしたので、多分同様と思ってますが。 逆にそのへんまで変わってしまってはLinuxとは呼べないような気もしますし。

yomibitoshirazu
質問者

補足

いや、どうもそれが駄目みたいなんです。 質問文に書き忘れていましたがC言語でプログラムを組んで いるのですが、普通のAPIが使えなくてRT用のAPIを使わな いといけないみたいなんです。 例えばstdio.hの代わりにrt_stdio.hを使い、printfと書く 所をrt_printfと書くといった具合です。

関連するQ&A

専門家に質問してみよう