OOPicは、オブジェクト指向のプログラム可能な集積回路です。Savage Innovations によって作成されたこのPIC マイクロコントローラには、 BASIC、Java、Cプログラミング言語に基づく構文でのプログラミングをサポートするIDE (統合開発環境) が付属しています。
市場にリリースされた最後の 3 つのバージョンは、OOPic-R、OOPic-S、および前者の小型版である OOPic-C です。最も古いモデルは OOPic I で、ファームウェアの A.2 バージョンを使用しています。
建築
OOPic ファームウェアは、カスタム メソッドとプロパティを提供できる多数の組み込み「オブジェクト」を定義します。オブジェクトは、外部赤外線センサーや組み込み LED などのハードウェアのラッパー、またはディバイダやロジック ゲートなどのロジック ヘルパーである場合があります。
OOPic では「仮想回路」も利用されており、プログラマーはオブジェクト プロパティ間のリンクを作成できます。
サンプルプログラム
以下は、1 Hz ごとに周期する組み込みクロックを LED にリンクする、BASIC 構文で記述されたコードの例です。
' LEDは単一のI/Oラインとして定義されます
。Dim Red As New oDio1
' ここでは仮想ワイヤを作成します。ワイヤは
出力値またはフラグ値を
入力値にリンクするために使用されます
。Dim W As New oWire
' すべての OOPic プログラムでは、「メイン」サブルーチンを定義する必要があります。
' これは、OOPic がオンになったときに実行されるものです。
Sub Main () ' ここで、I/O ラインのピン番号を指定します。' オンボードの赤色 LED はピン 7 にあります。Red . IOLine = 7
' LED はボタンとしても使用できるため、
ピンから読み取るかピンに書き込むかを指定する必要があります。' (cvOutput は定数値です)赤。方向= cvOutput
「これでワイヤーリンクを設定できます! 」ワイヤーの入力に
は、内蔵の「1Hzタイマー」を使用します。W .入力.リンク(OOPic.Hz1 )
' 次に、ワイヤの出力を LED に送信します。
' 実際には、LED の "Value" プロパティに送信します。これがLED が点灯するかどうかを決定するためです。W . Output . Link ( Red . Value )
' 残っているのは、ワイヤーに
操作するように指示することだけです。あとは OOPic がやってくれます! ' (cvTrue は定数値です) W . Operate = cvTrue
終了サブ
この仮想回路の動作により、プログラマーは大幅な制御と柔軟性を得ることができ、「イベント」のおかげでリアルタイムの動作に対する反応が向上します。OOPic は実際には、ユーザーのコードをループするよりも、仮想回路の更新にほとんどの時間を費やします。そのため、従来のプログラミング手法よりも仮想回路をできるだけ頻繁に使用することがプログラマーにとって最善です。
その他の意味
OOPIC はObject Oriented Particle In Cellの略で、バークレーで書かれた、パーティクル イン セルと呼ばれるプラズマ物理シミュレーションの特定の方法のオブジェクト指向実装です。
参照
外部リンク
- 「OOPic (tm): 「ハードウェア オブジェクト」」。1999 年 10 月 12 日時点のオリジナルからアーカイブ。2004年8 月 2 日閲覧。—OOPicを販売している会社が作ったサイト。
- OOPic Yahoo グループ - OOPic に関するほとんどの議論はここで行われます。 - 廃止
- OOPic Google グループ - これは ooPic の新しいディスカッション / ユーザー サポート グループです。2008 年 9 月現在
- PTSG グループ - これは、OOPIC プラズマ シミュレーション コードの作成者であるバークレーのプラズマ理論およびシミュレーション グループの Web サイトです。
