Smileで、あなたはスクリプトでどんなUSB/RS232アダプターも制御することができます。 スクリプトで、あなたは、RS232の連続のリンクとあなたがキャラクタを受けて、送るのを構成します。 連続のリンクを制御するために、あなたは RS232のクラスの1かいくつかのインスタンスを作成するでしょう。ここに、細かい指示があります。 - まず最初に、アダプターで乗船するドライバソフトウェアをインストールしてください、そして、マシンにアダプターのプラグを差し込んでください、そして、Smileを発射してください。
- 現在アクティブなポートのリストについて質問してください: シリアルポートを使用します。 これは以下の例のようにリストを返します。 ここで、2ポートのKeyspan USB/連続のアダプターがインストールされている状態で、私たちはマシンの上でシリアルポートについて質問します。 (私たちは、SmileのRS232コマンドがどんなUSB/RS232アダプターも支えると思い出します。)
シリアルポート ツ??i>--ツ?{9, "/dev/cu.modem", "modem"}, {9, "/dev/cu.USA28X21P1.1", "USA28X21P1.1"}, {9, "/dev/cu.USA28X21P2.2", "USA28X21P2.2"}, {10, "en0", ""}, {10, "en1", ""}} あなたのマシンでアクティブなポートを考えて、リストの中の各個条は1つに対応しています。 与えられたポートのための情報は3つの項目のリストです: 整数、POSIX経路に似ているストリング、 構成名、および別のストリング、 ポートの名前。 あなたがSmileと共に扱うことができるポートは整数の値が 9であるそれらです。あなたのマシンに内蔵のモデムがあるなら、ポートがリストの中に示す「モデム。」です。 あなたのマシンに内蔵のIRポートがあるなら、ポートがリストの中に示す"IrDA"です。シリアルポートを制御するために、あなたは 構成名を使用しなければなりません: あなたのスクリプトは、リストをスキャンして、あなたが興味を持っているポートの 構成名を保有するべきです。 例と共に続くように、私たちはKeyspanアダプターの最初のポートを選びます。"/dev/cu.USA28X21P1.1""に_コンフィグ_名を設定してください。 - RS232のクラスのオブジェクトを作成してください、そして、それが同じ指示で confignameの特性を指定することによってどんなポートを制御するかを指定します。
_RSに特性がある新しいRS232を作るように設定してください。configname: _コンフィグ_名 - RS232オブジェクトの RSOptionsの特性を設定することによって、コミュニケーションに設定を指定します。 エントリーにおける辞書で Class RSOptions、例えば、以下に関して説明されるように記録を提供します。
_RSのRSOptionsを設定します。同等: ボー: 9600、databits: 8、stopbits: 1、0 - RSOptions(デフォルト値: 0)の ICANONパラメタは RS232入力を正準なモードに切り換えることです。 正準なモードで、入力はユニットの系列で処理されます。
- 系列は ニューラインキャラクタ(ASCII10)か ファイルの終りキャラクタ(ASCII255)によって区切られます。
- 読み出し要求は 全体の系列を送るまで戻らないでしょう。
- いくつかの系列が利用可能であっても、最も 1つでは、読み出し要求のお返しに系列を返します。
- 本当への 可能にされた特性を設定することによって、 RS232オブジェクトを活性化します。
_RSについて本当に可能にされたセット - 入って来るバイトを読むために、 RS232オブジェクトの 含まれたデータの特性を読みます。 どんなストリングも利用可能でないなら、読取命令は誤りを返します。
試みてください。 ツ????_が_RSの含まれたデータに入力したet 誤りに関して ツ????i>--利用可能な入力がありません。 終わりは試みます。 - 送るストリングへの RS232の 含まれたデータ資産をバイト、セットに送るために。
「こんにちは」に_RSの含まれたデータを設定してください。 - あなたがセットした、 使用されていない遅れの特性で 本当への RS232オブジェクトの 使用されていない特性、秒に指定される時間の間隔がある入力のための次に RS232投票が欲しい、(1.0 デフォルトで、より速い反応性に、 0.01などの、より小さい値への 使用されていない遅れの特性を設定します)。
- 何らかの入力が利用可能であるときに、Smileは自動的に以下のイベントを RS232オブジェクトに送るでしょう。
_が結ぶデータで_送付者から_オブジェクトに通知してください。 _オブジェクトは通知されるオブジェクト、デフォルトで RS232自身です。 _送付者がここで通知に原因となるオブジェクトである、 RS232 _ストリングは容認されたストリング(手があいているキャラクタ、または正準なモードによる実線)です。 - 正準なモードで、それぞれが引き金1がイベントに 通知する台詞を受けました。
- イベントに 通知してください、とスクリプトは前提とします。扱う、aがあるオブジェクトが操作者(特徴のないオブジェクトのスクリプトを編集するのに、 EditObjectScript(_オブジェクト)を使用する)に 通知するか、またはaを供給する RS232では、グローバルな文脈(例えば Classスクリプト/文脈追加/におけるテキストファイルで)で操作者に 通知してください。
- あなたが向け直すことができる、 窓か 対話(もっとも、どんなスクリプトにもそうしない)などのSmileのある他のオブジェクトへの RS232の 目標オブジェクトの特性を設定することによって、イベントに 通知します。 イベントに 通知します。デフォルトでか 目標オブジェクトが未定義であるか、または無効の参照を含んでいるという場合に送る、 RS232自身に送ります。
- 必要であるなら、あなたは男性termiosに記録されるように旗の全体集合にアクセスすることができます: RS232の «クラスTerm≫所有地を使用します。 例えば、これはあなたがどう正準な振舞いに使用されるEOLキャラクタをカスタム設計するだろうかということです。
あなたは以下の例などのように «のクラスTerm≫を読み書きすることができます。«が_RSのTerm≫を分類するセット{0, 0, 56064, 0, "□ˇˇ□□□ˇ□□□□□□□□ˇˇ", 19200, 19200} «のクラスTerm≫は7つの項目のリストです: そして、4つの整数(旗)、1個のストリング(制御文字)、当時の2つの整数(入出力速度)。 男性termiosとそれらの正確なcorrespondanceは以下の通りです。 ツ????cflag_tツ?_iflag; ツ?* 入力旗*/ ツ????cflag_tツ?_oflag; ツ?* 出力旗*/ ツ????cflag_tツ?_cflag; ツ?* 指揮旗*/ ツ????cflag_tツ?_lflag; ツ?* 地方の旗*/ ツ????c_tツ?_cc[NCCS]; ツ?* コントロール雑用*/ ツ????漏らした_tツ?_ispeedする、; ツ?* 入力速度*/ ツ????漏らした_tツ?_ospeedする、; ツ?* 出力速度*/ |