ラビットセミコンダクター社RCM3200

設計上の選択

ラビットセミコンダクター社RCM3200。いつのネットワーキング用の組み込みシステムの設計を開始する準備ができている場合は、デバイスのハードウェアおよびそのハードウェアを制御するプログラミングコードに関するいくつかの決定を下す必要があります。 1つの極端で、すべて、CPUには、イーサネットコントローラのチップインタフェースを自分で行うことができますし、イーサネット通信デバイスを使用し、インターネットプロトコルをサポートするためにコードを記述する。か、またはモジュールは、イーサネットの通信やインターネットプロトコルをサポートするソフトウェアは、CPU、Ethernetインターフェイスが含まれて起動することにより多くの時間を節約できます。それとも、そのような付属のソフトウェアライブラリを使用するとしてではなく、独自の回路設計の中間の道を選ぶことができます。このネットワークチュートリアルでは、組込みシステムのネットワーク向けの製品利用可能なサンプリングを導入することから始まります。かどうかを最終的には、オプションはどのようにプロジェクトのアプローチを決定するのに役立つことを検討説明1つの製品を選択するかどうか。イーサネットネットワーク内のすべてのコンピュータ、およびイーサネットコントローラを持つ必要がある選択肢がここにもある。このネットワークのチュートリアルでは、深さの議論は、機能と人気のあるEthernetコントローラの動作について説明します。

コンポーネントの選択

  

すべてのプロジェクトと同様に、知識には大きな違いがどのように簡単に何かを取得し、実行していることができます。ソフトウェア側では、両方ともCとJavaのプログラミングのための一般的な言語のネットワークシステムに組み込まれている。場合は、次のいずれかの言語の経験を持って、それに固執する意味があります。場合は、特定のCPUに家族と一緒に経験しているハードウェアの側では、しばしばそれとの場合と同様なご滞在には意味になります。それと同時にある場合、製品には、スーツをあなたの目的は完全にはマスターにいくつかの時間がかかるだろうが、それに、何か新しい場合は特に、今後は他のプロジェクトへの知識を学ぶことを掘るに価値がある可能性があります。この本は、新規および更新された製品を継続的に利用可能になるあらゆる可能性を説明する余地がありません。製品に関する最新の情報へのリンクについて説明して他www.Lvr.comで訪問レイクビューリサーチ社の組込みイーサネットページです。

完全なソリューション

ラビットセミコンダクター社RCM3200

一見:私をたっぷり使って高速なZ80を誘導体のCPU / Oを、低EMI、および完全な開発システムは、Cコンパイラを含む。イーサネットのサポート:10BASE - Tおよび100BASE - TXの。出典:ラビットセミコンダクター社(www.rabbitsemiconductor 。com)ハードウェア。 RCM3200 RabbitCoreのĈプログラマブルモジュールイーサネット(ネットワーク資料3-1)は、ラビットセミコンダクター社のウサギは、はるかに改善し、メーカーTyco誘導体を強化、Inc。の由緒あるZ80マイクロプロセッサsは3000マイクロプロセッサを含む回路基板です。回路基板は、名刺よりも小さい場合をサポートし、私の様々な/ Oインターフェイス。Rabbit3000マイクロプロセッサ7 8ビットのI / Oポートを備えています。ビットの多くは、非同期通信と同期通信と赤外線データ協会(IrDA)プロトコルは、双方向パラレルポート、2つの入力の6つのシリアルポートをキャプチャチャネル、4つのパルス幅変調(PWM)出力を含む特別な機能を持つことができます光学式インクリメンタルエンコーダモジュールの入力と2つの直交デコーダユニット。私に加えて、I / Oポートは、8データビット、および20のアドレスラインで外部メモリバスです。電源五〜+3.6 Vの低い1.8の範囲で指定できますカウンタは、リアルタイムクロックなどの機能を簡単にバッテリーバックアップを提供するように個別の電源ピンをしています。このチップは、128で利用可能です(ロープロファイルクワッドフラットパック)ピンLQFP、128ボールTFBGA(薄型プロファイルファインピッチボールグリッドアレイ)パッケージです。

システム協同組合又はプリエンプティブなマルチタスクを使用することがあります。協調マルチタスクでは、タスクに同意する必要が協力して、プロセッサ時間のシェア以上を使用しないように。 Dynamic Cはcostatementsとcofunctionsを使用して協調マルチタスクを実現します。 costatementは、どのステートメントを次の実行を追跡し、ポインタでのステートメントの一覧です。文のリストは、シーケンス内のループ内で実行する1つの文としては、通常の関数costatement。costatement内では、waitforは制御文の場合は、関数または完了したタイムアウトが発生して見つけるかをテストすることができます。もしwaitforはtrueを返し、costatementリスト内の次のステートメントを続行します。もしwaitforはfalseを返し、costatementの閉鎖に括弧にジャンプします。次の時間costatement実行すると、costatementは、以前はfalseが返されたがwaitforで開始します。この方法では、コードの一連のステートメントを介して実行するのに長い時間がかかるステートメントによってブロックされることなく、その方法を作ることができます。 waitforはステートメントの値を返す任意の関数を呼び出すことができます。以下の例では、tcp_tickは、TCPとUDPの通信のためのバックグラウンド処理を実行します()関数、およびcostatementを持つ関数の呼び出しの間でループが交互に無限にデータグラムを送信することです1回目。

するfor(;;)(tcp_tick(NULL)は、(/ /間DelaySec秒待ってから肋骨のある送信されます。waitforは(DelaySec(1)); / /リモートホストにデータグラムを送信します。send_datagram();))

最初の時間costatement、実行する(DelaySec(1))ステートメントを実行すると、現在の時刻を示す値を保存しますがwaitfor。ステートメントを実行ジャンプcostatementの終値をfalseに、当時の最上部に支柱を返しますループします。ループを通過するたびに、waitforは(DelaySec(1))実行すると、Falseを返すまで、1秒が経過した。日に帰国trueの場合、実行send_datagram()文と続けている。このステートメントは、アプリケーションのsend_datagramは、リモートホストにデータグラムを送信します()関数を呼び出します。これは遅延タイミングを再起動プログラムを実行して、waitforをするループバック()ステートメントは、。ダイナミックCのcofunctions costatementsに似ていますが受け入れることができると戻り値の引数です。Costatementsとcofunctions多くのアプリケーションにとっては便利ですが、それもベースのプログラミング状態との協調マルチタスクマシンを実現することが可能です。ステートマシンは、プログラムコードを繰り返し、一連のタスクを実行ではなく、常に同じ順序でのAC switch文は、ステートマシンを実装することが役に立つことができます。たとえば、TCPサーバーをどのようなコードを決定するための接続の現在の状態に応じて実行するためにswitch文を使用することができます。可能な状態の接続を待って、要求を受信し、ソケットの初期化される可能性がありますヘッダ受信、レスポンスを送信し、接続を閉じるのを待つ。ラビットセミコンダクター社のstate.c例は、このアプローチを示しています。

プリエンプティブなマルチタスクでは、各タスクのプロセッサ時間を保証されます。する必要はありません収するために、他のタスクに依存している。のDynamic Cのスライスステートメントのタイムスライス、または期間を、1台の測定/ 1024番目のタスクを実行して、プリエンプティブなマルチタスクが可能です。スライスの終わりには、タスクを停止します。もし、すべてのプログラムのメインループを使用するスライスのステートメント内のタスクの場合、決定することができますどのくらいの頻度、各タスクのスライスの合計数から、そのスライスを受け取ります。制限TCPとスライスを使用して/ Dynamic CにIP通信をされているすべてのTCP / IPの機能を単一のスライスに配置する必要があります。 MicroC / OS - IIは、ライブラリモジュールプリエンプティブなマルチタスクを実現する別の方法を提供します。Dynamic Cとは、ハードウェアモジュールのドキュメントの詳細なマニュアルの豊富なシリーズが含まれます。ラビットセミコンダクター社のWebサイトに技術サポート掲示板をホストします。加えて、ウサギの準決勝の電子開発者向けの電子メールのディスカッションリストwww.groups.yahoo.comで利用可能です。ウサギモジュール用にもう1つのプログラミングオプションWinIDE統合開発環境Softools株式会社(www.softools.com)からです。 Dynamic Cのと同様に、WinIDEエディタ、コンパイラとリンカが含まれ、能力以上のRAMをフラッシュメモリにコンパイルされたコードをロードし、デバッガです。コントロールクロスCコンパイラの完全な標準Cコンパイラです。コンパイルされたコードが小さくなっていますし、コードの動的Cとコンパイルされたよりも速く

記事は、ダニエルR.提出


免責事項:弊社のウェブサイトは、この資料の内容については責任を負いません。 Webarticles無料の情報リソースです。
重要: この記事は、"うさぎの半導体RCM3200"自動ソフトウェアによって翻訳された。大変申し訳ございませんが発生した可能性があります任意のスペルミスを感じている。お客様のご理解いただき、ありがとうございます。


Online: 315 users browsing the articles directory