05172024

Last update2016/05/28 14:38

Back 現在地: Home パートナー segger-tools

emUSB Device-USB Device Stack

emUSB Device-USB Device Stack

emUSBデバイス

emUSBは、高速USBデバイスは、特に組み込みシステム向けに設計スタックです。 このソフトウェアは、ANSI"C"で書かれている任意のプラットフォーム上で実行することができます。 emUSBはembOSまたはその他のサポートされているRTOSと使用することができます。 ターゲットドライバーの様々なすでに提供されている。 新しいプラットフォームのサポートは、通常、追加料金なしで追加することができます。

特長

 

高速
最適化はembOSが作品その他のサポートされているRTOSとで使用される。
簡単に使用する
簡単なポートに
は、カスタムUSBホストドライバが必要
供給開始/テストアプリケーション
高度に効率的に、ポータブル、およびANSI Cソースコードのコメント
ハードウェア抽象化層は、新しいデバイスのサポートを迅速に追加できるようになります。
  • 高速
  • 最適化はembOSが作品その他のサポートされているRTOSとで使用される。
  • 簡単に使用する
  • 簡単なポートに
  • は、カスタムUSBホストドライバが必要
  • 供給開始/テストアプリケーション
  • 高度に効率的に、ポータブル、およびANSI Cソースコードのコメント
  • ハードウェア抽象化層は、新しいデバイスのサポートを迅速に追加できるようになります。

 


emUSBコンポーネント

ターゲットUSBの構成要素

 

emUSBは、3つの層で構成されています:ハードウェアへのアクセス、emUSBコア用のドライバを、少なくともUSBクラスドライバまたはバルク通信コンポーネント。


利用可能な別のハードウェアのドライバは、USBクラスドライバとバルク通信コンポーネントを結合することができ、プロジェクトの要件に適合するように命じたの追加パッケージです。 通常、emUSBは、USBクラスドライバMSDは、CDCは、HIDまたは未分類のバルク成分の少なくとも一つ、使用するハードウェア、emUSBコアフィットするドライバで構成されています



コンポーネント概要
USBプロトコル層
バルク emUSBバルクコンポーネントです。
(emUSBバルク)
MSDの emUSB大容量記憶装置デバイスクラスのコンポーネントです。
(emUSB - MSD)が。
CDCの emUSB通信デバイスクラスのコンポーネントです。
(emUSB - CDC)の
HIDの emUSBヒューマンインターフェイスデバイスクラスのコンポーネントです。
(emUSBで、HID)
コア層
emUSBコア emUSBコアは、組み込みのUSBスタックが表示されます。
ハードウェア層
ドライバ USBコントローラのドライバをインストールします。

 


emUSBは、バルク

 

スタックバルクemUSBは、ソースコードの形で出荷されて埋め込まれたサイド、および通常の実行可能ファイルとして出荷されているPC用のドライバで構成され(システムを)。 (PCのドライバのソースも注文することができます。)

emUSBの目的バルク

emUSBは、バルクの開発者が迅速かつ容易に組み込みデバイス用のソフトウェアを開発することができますがUSBを介してPCと通信します。 通信は、単一の、高速、信頼性の高いチャネル(非常にTCP接続に類似)のようなものです。 それは基本的に埋め込まれたターゲットの任意のバイト数と、これらのバイト、応答を受信するように埋め込まれたターゲットにデータを送信するためにPCをすることができます。 PCは、USBホストは、ターゲットには、USBクライアントです。 制御、アイソクロナス、割込み、およびバルク:USB規格は、通信の4つのタイプを定義しています。 ほとんどの組み込みデバイス用のバルクモードでは、任意の通信モードです経験の示す。 これは、USBバスの全帯域幅の使用をすることができます。

 


emFile-File System

emFile-File System

ファイルシステム EMFILE

EMFILEは、ユーザが基本的なハードウェアへのアクセス機能を提供することができる任意のメディア上で使用することができる組み込みアプリケーション用のファイルシステムです。 EMFILEはRAM、ROM、高速かつ汎用性の最小メモリ消費のために最適化されている高性能なライブラリです。 これはANSI Cで書かれている任意のCPUで使用することができます。

特長

 

MS DOSの/ MSのWindowsと互換性のあるFAT12の、FAT16およびFAT32をサポートしています。
FATメディアの長いファイル名を処理するオプションモジュールです。
複数のデバイスドライバをサポートしています。 あなたは、同時にファイルシステムで異なる種類のハードウェアにアクセスすることができますがEMFILEと別のデバイスドライバを使用することができます。
マルチメディアサポートしています。 デバイスドライバが同時に別のメディアにアクセスすることができます。
OSのサポート。 EMFILEは簡単にOSに統合することができます。 これは、マルチスレッド環境でEMFILEを使用することができます。
ユーザアプリケーションのためのANSI Cのstdio.hのようなAPIです。 標準的なCI / Oライブラリを使用してアプリケーションを簡単にEMFILEその使用して移植することができます。
非常にシンプルなデバイスドライバの構造体。 EMFILEそのデバイスドライバの読み込みやブロックを記述するための基本的な機能を必要とします。 テンプレートがあります含まれています。
オプションのNORフラッシュ(EEPROM)にドライバをインストールします。 任意のCFI準拠のNOR型フラッシュがサポートされています。 摩耗含まれてレベリング
NAND型フラッシュデバイス用のオプションのデバイスドライバをインストールします。 高非常に読み取り/書き込み速度。 ECCは含まウェアレベリング。
簡単に統合することができるSPIモードまたはカードのモードを使用してマルチメディア&SDカード用のオプションのデバイスドライバをインストールします。
また、コンパクトフラッシュは、真のIDEを使用するために適しているオプションのIDEドライバ。 または。メモリがマップされた。 モードを設定します。
ネイティブの長いファイル名のサポートオプションの独自のファイルシステム(EFS)を。
  • MS DOS/ MSのWindowsと互換性のあるFAT12、FAT16およびFAT32をサポートしています。
  • FATメディアの長いファイル名を処理するオプションモジュールです。
  • 複数のデバイスドライバをサポートしています。 あなたは、同時にファイルシステムで異なる種類のハードウェアにアクセスすることができますが、EMFILEと別のデバイスドライバを使用することができます。
  • マルチメディアサポートしています。 デバイスドライバが同時に別のメディアにアクセスすることができます。
  • OSのサポート。 EMFILEは簡単にOSに統合することができます。 これは、マルチスレッド環境でEMFILEを使用することができます。
  • ユーザアプリケーションのためのANSI Cのstdio.hのようなAPIです。 標準的なCI / Oライブラリを使用してアプリケーションを簡単にEMFILEを使用して移植することができます。
  • 非常にシンプルなデバイスドライバの構造体。 EMFILEそのデバイスドライバの読み込みやブロックを記述するための基本的な機能を必要とします。 テンプレートがあります含まれています。
  • オプションのNORフラッシュ(EEPROM)にドライバをインストールします。 任意のCFI準拠のNOR型フラッシュがサポートされています。 摩耗含まれてレベリング
  • NAND型フラッシュデバイス用のオプションのデバイスドライバをインストールします。 高非常に読み取り/書き込み速度。 ECCは含まウェアレベリング。
  • 簡単に統合することができるSPIモードまたはカードのモードを使用してマルチメディア&SDカード用のオプションのデバイスドライバをインストールします。
  • また、コンパクトフラッシュは、真のIDEを使用するために適しているオプションのIDEドライバ。 または。メモリがマップされた。 モードを設定します。
  • ネイティブの長いファイル名のサポートオプションの独自のファイルシステム(EFS)を。

 


ソフトウェア構造&コンポーネント

APIのレイヤ

APIのレイヤは、EMFILE、ユーザアプリケーションの間のインタフェースです。 これは、2つの部分は、ストレージAPIとファイルシステムAPIで分割されています。 ファイルシステムAPIはFS_FOpen()、FS_FWrite(などのANSI Cの標準入出力形式のファイルの関数を、)などのAPIレイヤは、ファイルシステム層に、これらの呼び出しを転送が含まれています。 現在のEFSと呼ばれるFATファイルシステム、またはオプションファイルシステムは、EMFILEそのためにご利用いただけます。 今彼らは同時に使用することはできません。 ストレージAPIは、初期化し、記憶媒体にアクセスする必要な機能が含まれています。 ストレージAPIは、セクタの読み取りおよび書き込み操作をすることができます。 APIのレイヤは、ストレージ層にこれらの呼び出しを転送します。 ストレージAPIは、ファイルとディレクトリの処理のようなファイルシステムの機能を必要としないアプリケーションに最適化されています。 ストレージAPIは、データ媒体に保存されている必要がありますUSB大容量ストレージデバイス、ことができる使用する一般的なアプリケーションではなく、すべてのファイルシステムの機能は、ホストPCによって処理されます。

ファイルシステムのレイヤ

ファイルシステム層の変換は、論理ブロックへの操作(セクタ)操作のファイル。 このような翻訳後、ファイルシステムは、論理ブロック層を呼び出して、デバイスに対応するデバイスドライバを指定します。

ストレージ層

ストレージレイヤの主な目的は、デバイスドライバへのアクセスを同期させることです。 それはさらに、ファイルシステムAPIのためのシンプルなインターフェイスを提供しています。 ストレージ層は、ブロック操作を実行するためにデバイスドライバを呼び出します。 また、キャッシュメカニズムが含まれています。

デバイスレイヤ

デバイスドライバは、デバイスのセクタにアクセスするためのステータスを確認するために使用される低レベルのルーチンです。 これは、ハードウェアに依存しないですが、記憶媒体に依存します。

ハードウェアレイヤ

これらは、低レベルは、ハードウェアにアクセスするためのルーチンです。 これらは、単にルーチンread、固定長のセクタを格納します。 デバイスドライバの構造は、順序、独自のハードウェアの容易な統合を可能にするために簡単です。

 

 

emWIN-Graphic Software and GUI

emWIN-Graphic Software and GUI

emWin

emWinは、 液晶グラフィックおよびLCDコントローラに依存しないグラフィカルユーザーインターフェイス(GUI)を任意のアプリケーションが動作します、プロセッサ、効率的な設計を提供します。

これは、独自のオペレーティングシステムまたは任意の商用RTOSで、シングルタスク、マルチタスク環境と互換性があります。 emWinが"C"のソースコードとして出荷されています。
これは、任意のLCDコントローラとCPU、任意のサイズの物理および仮想ディスプレイに適合させることができる。

特長

すべての8/16/32ビットCPUは;はANSIの"C"コンパイラが必要です。
すべて(白黒、グレースケールまたはカラー)(適切なドライバが使用可能な場合)サポートされている任意のコントローラ付き液晶ディスプレイ。
より小型のディスプレイのLCDコントローラなしで月の作品。
すべてのインターフェイスは、構成マクロを使用してサポートされています。
ディスプレイサイズは設定可能です。
文字やビットマップは、偶数バイトのアドレスを番号だけではなく、液晶上の任意の点で書かれているかもしれません。
ルーチンは、両方のサイズと速度の最適化されています。
コンパイル時のスイッチは、さまざまな最適化が可能になります。
遅いLCDコントローラは、液晶ディスプレイは、最小へのアクセスを削減し、非常に高速で、その結果、メモリにキャッシュすることができます。
明確な構造。
仮想ディスプレイのサポート、仮想ディスプレイは、実際のディスプレイよりも大きくすることができます。
  • すべての8/16/32ビットCPUは;はANSIの"C"コンパイラが必要です。
  • すべて(白黒、グレースケールまたはカラー)(適切なドライバが使用可能な場合)サポートされている任意のコントローラ付き液晶ディスプレイ。
  • より小型のディスプレイのLCDコントローラなしで月の作品。
  • すべてのインターフェイスは、構成マクロを使用してサポートされています。
  • ディスプレイサイズは設定可能です。
  • 文字やビットマップは、偶数バイトのアドレスを番号だけではなく、液晶上の任意の点で書かれているかもしれません。
  • ルーチンは、両方のサイズと速度の最適化されています。
  • コンパイル時のスイッチは、さまざまな最適化が可能になります。
  • 遅いLCDコントローラは、液晶ディスプレイは、最小へのアクセスを削減し、非常に高速で、その結果、メモリにキャッシュすることができます。
  • 明確な構造。
  • 仮想ディスプレイのサポート、仮想ディスプレイは、実際のディスプレイよりも大きくすることができます。

 


ソフトウェア構造&コンポーネント

emWin構造

emWinコンポーネント

PC用のオプションのウィジェットのルックアンドフィール

ウィジェットは、(知られているようにコントロールのウィンドウも、オブジェクト)をご利用いただけます。 彼らは通常は自動的に動作し、使用することは簡単です。 さらに詳しい情報...

ウィンドウマネージャ

ウィンドウマネージャはウィンドウの数を任意の操作を提供するそれ以外の場合はセットをルーチンのように簡単に作成して、サイズ変更、移動します。 また、ウィンドウを変更に影響を与える、そのレイヤーすることによって管理をサポートレベル-提供しています下の表示をするようにアプリケーションを警告することによって、ウィンドウを表示します。 さらに詳しい情報...

ダイアログ

ダイアログボックスが(またはダイアログ)ユーザーですから、通常の入力を要求するために、表示されるウィンドウ。 このウィジェットは省略可能ですウィンドウマネージャ/ウィジェットのパッケージですに含まれています。 さらに詳しい情報...

タッチスクリーン&マウスのサポート

アナログタッチパネルのタッチスクリーンのサポートは入手可能です。 これは、画面と校正のタッチが含まれデバウンスアナログ入力(から)8ビット以上のADコンバータ、低処理レベルのドライバを。 などのボタンのオブジェクトウィジェットウィンドウマネージャとタッチメッセージを扱うと。 それに応じて処理タッチメッセージと反応して自動的にして受け取り、それ以上か、別のウィジェットを複数の行を次のようにのコード作成ボタンをクリックします。 *は、次のようなボタンウィジェットのウィンドウオブジェクト、emWinはサポートを提供していますタッチスクリーンとマウス。 さらに詳しい情報...

メモリデバイスコンテキスト

メモリデバイスコンテキストは、CPUのメモリ内にディスプレイに出力するセクションの許可を作成します。 すべての描画操作は、使用することができます。完全にするとビルドされている画像は、それが表示されます低速または低速のCPUを搭載した無料アップデートをもちらつきできるように、単一の操作で、転送して表示します。 さらに詳しい情報...

VNCをサポート

VNCは"コンピューティングの略については、"仮想ネットワーク。 これは、実行中に本質的にマシンのどこにいるの'環境だけでなく、デスクトップコンピューティング'表示するプロトコルできるユーザを簡易表示した上でシステムサーバーのクライアントであり、インターネットのどこでも、とのからの様々なマシンのアーキテクチャ。 クライアントとのTCP / IPサーバーが通信を介して。 emWin VNCサポートは、パッケージとは別の利用可能なように。 さらに詳しい情報...

ドライバー(レイヤ1)

ディスプレイドライバは、LCDコントローラ)を、通常のコントローラ(特定のファミリを表示サポートコントローラです。これらのすべての詳細が表示されますいずれかにされ接続するか、または さらに詳しい情報...

多層/マルチディスプレイをサポート

グラフィックより多くのコントローラの製造元は、(富士通/東芝)の概念を提供する柔軟な層。 複数の層/複数の表示機能層を許容するものよりも、へのアクセスより。 さらに詳しい情報...

アンチエイリアシング

アンチエイリアシングは、曲線ラインとの平滑化。 これは、縦線です正確には、水平または任意の外観を低減ステップ-ギザギザ、階段。 emWinは、座標をサポートしています差ferentアンチエイリアシング品質、アンチエイリアス処理されたフォントと高解像度は。 これは、パッケージですオプションです。 さらに詳しい情報...

+のMicrosoft Visual C#を使用しemWin Windowsのシミュレーション+

MSVCの+ +でシミュレーション環境は入手可能です。 これは、書いて、(すべてのルーチンは、CPUや液晶ディスプレイは、使用しているかに関係なく、100パーセント組込みアプリケーションと同じです)PC上で全体のユーザーインターフェイスをテストに使用することができます。

タッチスクリーンシミュレーション

タッチスクリーンのシミュレーションは、シミュレーションemWinのレギュラー統合へ。 マウスイベントは、画面をタッチシミュレートされ使用する。 シミュレーションは、アプリケーションののインターフェイスを記述するユーザーすることに使用できる検証やデモに誰のための議論exeファイルを簡単にすることができますが送っている。 さらに詳しい情報...


関連ソフトウェア

 

PCツールを利用可能

  • シミュレーションに加えてビューア。
  • ビットマップコンバータです。
  • フォントコンバータです。

emWinのスターターキット

"レディトゥゴー"スターターキットは、実際のハードウェア上で動作し、emWin同様に慣れるように、マイクロコントローラと他の開発ツールを使用して。

emWinサンプル

サンプルの"C"のコードの多くは、emWin機能を紹介するために提供されています。 また、同様のアプリケーションで顧客が使用することができます。

 


グラフィックスライブラリ(GUI)

 

  • 別の色深度のビットマップはサポートされています。
  • ビットマップのコンバータが含まれています。
  • 全くの浮動小数点の使用。
  • 高速ライン/(浮動小数点の使用なし)ポイントの描画。
  • 高速円/多角形の非常に描画する。
  • 異なる描画モードをサポートします。
  • さまざまなフォントが含まれ
  • タッチスクリーンとマウスのサポートが含まれて
  • シミュレーションが含まれて

すべての液晶ディスプレイをサポートすることができます

ドライバは、グレースケールパッシブおよびアクティブな色(TFT)ディスプレイモノクロなどの液晶ディスプレイ、あらゆるタイプのために書かれたことができます。 すべての一般的な液晶ディスプレイ用LCDドライバは、すでに存在しています。

サポートされるディスプレイコントローラのリスト

 


フォント

 

  • 別のフォントの様々な基本的なソフトウェアが付属しています:4 * 6、6 * 8、6 * 9、8 * 8、8 * 9、8 * 16、8 * 17、8 * 18 24 * 32、比例8、10、13、16ピクセルの高さを持つフォント。
  • 新しいフォントは、定義することができるだけインチリンク
  • アプリケーションで使用されるフ​​ォントだけが実際にリンクされている最小のROMの使用量が、その結果、実行結果。
  • フォントは、完全にスケーラブルなXとYの別々に
  • フォントコンバータが対応されています;任意のフォントは、ホストシステム(すなわち、Microsoft Windows)を利用可能に変換することができます。

 


カラーマネジメント

emWinは、 システムを備えて統合された、非常に効率的なカラーマネージメント。 このシステムは、時間が実行時 ​​に色をお使いのLCDすることができます表示する物理的な)にできる変換の形式のRGB(論理色を設定します。 本当に必要なこの方法ではないアプリケーションが使用可能な色と多くにすることに関して、液晶ディスプレイは、交換することができますが簡単に。 アプリケーションの最適化、システムがでできる生成インデックスを使用してビットマップを表示も(事前に)コンバータのビットマップコンパイル時に、アプリケーションプログラマまたは。


小さなメモリフットプリント

 

emWinは、 可能な限り小さくフットプリントを持っているメモリに設計されています。 さまざまな構成のスイッチは、最小の消費電力をメモリできるように削減のニーズを、あなたに合わせて完全にソフトウェアを調整する。 メモリ要件は、コンパイラは、ターゲットが上の変化に応じの部分は、ソフトウェアされ、使用されどのように効率的に。 それはではなく、値を正確に指定可能なので、次は、システム典型的な適用される:

小規模なシステム(ウィンドウマネージャ)

  • RAM:100バイト
  • スタック:500バイト
  • ROMを:10から25キロバイト(使用される機能に応じて)
ビッグシステム(含むウィンドウマネージャやウィジェット)

 

  • RAMは:2〜6キロバイト(必須ウィンドウの数に応じて)
  • スタック:1200バイト
  • ROMを:30(使用している機能に応じて)60キロバイト

 


層構造

emWinは、 ゼロから設計されています。 これは、個別に使用することができますが構成され、レイヤー4:
レイヤ4:ウィンドウマネージャ
レイヤ3:ウィジェットライブラリ
レイヤ2:グラフィックライブラリ
レイヤ1:LCDドライバ(秒)


アプリケーションノート

 

 

 

 

 

 

embOS/IP-TCP/IP Stack

 

embOS/IP-TCP/IP Stack

embOS / IP

embOS / IPは、独立したTCP / IPスタックのCPUです。 embOS / IPは、速度、汎用性とメモリの使用量の最適化されている高性能なライブラリです。 これはANSI Cで書かれて実質的に任意のCPUで使用することができます。

特長

  • ユーザアプリケーション用のANSI C socket.hにのようなAPIです。 標準Cソケットライブラリを使用してアプリケーションを簡単にembOS / IPを使用するように移植することができます。
  • 非常にシンプルなデバイスドライバの構造体。
  • ハイパフォーマンス
  • 小さなフットプリント
  • 実行"アウトオブボックス"
  • 不要構成
  • マルチタスク環境でのembOSとシームレスに動作
  • 超高速パフォーマンスのためのゼロデータのコピー
  • 標準ではインターフェイスをソケット
  • RAWソケットのサポート
  • ファンは、すべての関数のバージョンをブロック
  • メモリの可用性によってのみ制限接続
  • Nagleアルゴリズム(スロースタート)
  • 遅延ACK
  • BSDスタイルの"キープアライブ"オプション
  • 断片化されたパケットの再組み立て
  • 最も一般的なデバイス用のオプションのドライバが利用可能です。


基本概念

 

embOS / IPの構造

embOS / IPがfollwoing図に示すようにさまざまな層で構成されています。 各レイヤの機能の簡単な説明は、以下に従います。

アプリケーション層

APIのレイヤは、embOS / IPおよびユーザアプリケーションの間のインタフェースです。 それはembOS / IPのAPIは、TCP / IPネットワークを介してデータを送信するために使用しています。 embOS / IPのAPIは、等)などは、connect()は、bind()を、(聞きながらバークレーソケットスタイルの機能を提供しています

トランスポート層

トランスポート層は、アプリケーションのエンドツーエンドの通信サービスを提供しています。 トランスポート層プロトコルの2つの関連するプロトコルは、伝送制御プロトコル(TCP)およびUser Datagram Protocol(UDP)です。 TCPは信頼性の高い接続指向のトランスポートサービスです。 これは、エンドツーエンドの信頼性、フロー制御、および順序制御用意されています。 UDPはコネクションレス型トランスポートサービスです。

インターネット層

トランスポート層のすべてのプロトコルは、宛先ホストに送信元ホストからのデータを運ぶためにインターネットプロトコル(IP)を使用します。 IPアドレスは、エンドツーエンドの配信保証を提​​供する、コネクションレス型サービスです。 IPデータグラム、またはまったく注文のうち、重複して破損して宛先ホストに到着するかもしれません。 トランスポート層は、それが必要なデータグラムの信頼性の高い配信を担当しています。 IPプロトコルは、対処するための規定が含まれています型サービスの仕様、断片化と再構築、およびセキュリティ情報の。

リンク層

リンク層は、直接接続されたネットワークへのインターフェイスに使用される通信プロトコルの実装を提供します。 通信プロトコルの様々な開発されており、standadized。最もよく使用されるプロトコルは、イーサネット(IEEE 802.3)です。 embOS / IPのこのバージョンでは、Ethernetのみがサポートされています。

カプセル化

四層構造は、RFC 1122で定義されています。 アプリケーション層、トランスポート層の上に、ネットワーク層、リンク層に行くのデータフローが開始されます。 すべてのプロトコルは、プロトコル固有のヘッダーを追加し、データとして上の層からのデータとヘッダをカプセル化します。 受信側でデータが補完的な方向に展開されます。 反対のプロトコルが使用されているプロトコル上の層には、下記の分かっていない。 次の図は、IPパケット内のUDPデータグラム内のデータのカプセル化を示しています。

 


タスクと割り込みの使用状況

 

embOS / IPは、3つの異なる方法でアプリケーションで使用することができます。

  • タスクスタックに専用
  • 2つのタスクがスタックに専用
  • スタックに専用ゼロタスク(Superloop)

デフォルトのタスク構造体は、スタックのための専用の1つのタスクです。

 

つのタスクスタックに専用

 

これにより、TCP / IPスタックを使用する最も簡単な方法です。 つのタスクがスタックに捧げられています。 それはIP_Taskと呼ばれる操作、再送信のハウスキーピング処理し、着信パケットの処理。 "の記事を読むパケット"操作は、ISR内から実行されます。 "の記事を読むパケット"操作は、ISRから直接呼び出されるので、追加のタスクが必要です。 割り込みレイテンシの長さは、"読み取りパケット"操作を処理するために必要な期間の延長されます。

 

2つのタスクがスタックに専用

 

2つのタスクがスタックに専念しています。 最初はIP_Taskと呼ばれる操作、再送信のハウスキーピング処理し、着信パケットの処理。 もう一つはIP_RxTaskと呼ばれ、"読み取りパケット"操作を処理します。 新しいパケットが利用されている場合IP_RxTaskは、割り込みサービスルーチンから起こされる。 "の記事を読むパケット"操作は、割り込みサービスIP_RxTaskルーチンから移動されているので、割り込みレイテンシは、拡張されていません。

 

スタックに専用ゼロタスク(Superloop)

 

使用されることなく、定期的にadditonal呼び出しタスクはアプリケーションの場合、スタックのタスクがembOS / IPがすることもできます IP_Execは() "の記事を読むパケット"操作は、ISR内からです行った。 ISRのため"の記事を読むパケット"から直接呼び出される操作がされ、追加のタスクが必要です。 割り込みレイテンシの長さは、の動作を"パケットを読む処理"するために必要ですが延長の期間。

 


embOS / IPのアドオン

embOS / IPは、HTTPやFTPなどのアプリケーション層プロトコルを補完することができる完全な機能を備えたTCP / IPです。 アプリケーション層のプロトコルはembOS / IPにオプションの拡張機能です。 彼らは他のTCP / IPスタックとembOS / IPまたは使用することができます。


利用可能なembOS / IPのアドオン


 

 

 

 

 

 

  • マルチタスク環境でのembOSとシームレスに動作

 

[続きを読む...]

 

embOS(リアルタイムOS)

embOSリアルタイムオペレーティングシステム概要

embOSは、組み込みリアルタイムアプリケーションの開発のための基礎として使用するように設計さ優先制御リアルタイムオペレーティングシステムです。 それはゼロ割り込みレイテンシ*、高速性と汎用だけでなく、RAMおよびROM両方の最小メモリ消費のために最適化されている高性能なRTOSです。 embOSの開発プロセス全体を通じて、マイコンの限られたリソースは常に念頭に置いて保管されている。 embOSの内部構造は、さまざまな業界のニーズに合わせてさまざまな顧客と、さまざまなアプリケーションに最適化されています。 embOSになり、完全にソースの異なるプラットフォーム(8/16/32ビット)に対応していますが、異なるCPUへの移植アプリケーションに簡単に。 その'高度にモジュール化された構造が必要な場合にのみこれらの機能は非常に小さいROMサイズを維持し、リンクされていることを確認します。 タスクを簡単に作成することができます安全にセマフォ、メールボックス、イベントなどの通信メカニズムの完全なパレットを使用して互いに通信します。 割り込みサービスルーチンは、(ISR)が、これらの通信メカニズムを活用することができます。

*高優先順位の割り込みがembOSでは無効になってされることはありません。

embOSリアルタイムオペレーティングシステム特徴

プリエンプティブスケジューリング:READY状態のすべてのタスクの、最高の優先順位を持つものが優先順位の逆転が適用される状況を除いて、実行することが保証されます。
同一の優先順位を持つタスクのラウンドロビン方式のスケジューリング。
先取りは、タスク全体またはプログラムのセクションを無効にすることができます。
不要構成
最大255の優先順位:すべてのタスク=>タスクの応答を正確に、アプリケーションの要件に応じて定義することができます個々の優先順位を持つことができます。
タスクの無制限の数は、(使用可能なメモリによってのみ制限)。
セマフォの無制限の数は、(使用可能なメモリによってのみ制限)。
メールボックスの制限数は、(使用可能なメモリによってのみ制限)。
サイズとメッセージの数を自由に定義することができます。
ソフトウェアタイマーの無制限の数(使用可能なメモリによってのみ制限)。
時間分解能の目盛りを自由に(デフォルトは1msです)を選択することができます。
高分解能時間計測(詳細はダニよりも正確)。
電源管理:未使用のCPU時間を自動的に消費電力を最小限に抑え、停止モードで過ごしたことができます。
フル割り込みのサポート:ほとんどのAPI関数は、割り込みサービスルーチン(ISR)の中から使用することができます。
ゼロ割り込みレイテンシ時間。
ネストされた割り込みが許可されています。
アプリケーションを起動し、プロジェクト(BSP)を簡単に起動してください。
デバッグビルドを開発を単純化すると、ランタイムチェックを実行します。
タスクプロファイルごとに高精度。
リアルタイムカーネルビューアは(embOSView)含まれています。
非常に高速かつ効率的に、まだ小さなコード。
最小RAM使用量。
コア部分はアセンブリ言語で書かれています。
すべてのAPI関数は、C / C + + /アセンブリから呼び出すことができます。
源としてマイクロコントローラのハードウェアの初期化。
同じCPUでサポートされていないハードウェアのBSPは、ユーザーが簡単に書き込むことができます。
  • プリエンプティブスケジューリング:READY状態のすべてのタスクの、最高の優先順位を持つものが優先順位の逆転が適用される状況を除いて、実行することが保証されます。
  • 同一の優先順位を持つタスクのラウンドロビン方式のスケジューリング。
  • 先取りは、タスク全体またはプログラムのセクションを無効にすることができます。
  • 不要構成
  • 最大255の優先順位:すべてのタスク=>タスクの応答を正確に、アプリケーションの要件に応じて定義することができます個々の優先順位を持つことができます。
  • タスクの無制限の数は、(使用可能なメモリによってのみ制限)。
  • セマフォの無制限の数は、(使用可能なメモリによってのみ制限)。
  • メールボックスの制限数は、(使用可能なメモリによってのみ制限)。
  • サイズとメッセージの数を自由に定義することができます。
  • ソフトウェアタイマーの無制限の数(使用可能なメモリによってのみ制限)。
  • 時間分解能の目盛りを自由に(デフォルトは1msです)を選択することができます。
  • 高分解能時間計測(詳細はダニよりも正確)。
  • 電源管理:未使用のCPU時間を自動的に消費電力を最小限に抑え、停止モードで過ごしたことができます。
  • フル割り込みのサポート:ほとんどのAPI関数は、割り込みサービスルーチン(ISR)の中から使用することができます。
  • ゼロ割り込みレイテンシ時間。
  • ネストされた割り込みが許可されています。
  • アプリケーションを起動し、プロジェクト(BSP)を簡単に起動してください。
  • デバッグビルドを開発を単純化すると、ランタイムチェックを実行します。
  • タスクプロファイルごとに高精度。
  • リアルタイムカーネルビューアは(embOSView)含まれています。
  • 非常に高速かつ効率的に、まだ小さなコード。
  • 最小RAM使用量。
  • コア部分はアセンブリ言語で書かれています。
  • すべてのAPI関数は、C / C + + /アセンブリから呼び出すことができます。
  • 源としてマイクロコントローラのハードウェアの初期化。
  • 同じCPUでサポートされていないハードウェアのBSPは、ユーザーが簡単に書き込むことができます。

 

ソフトウェア構造&コンポーネント

対応CPU

embOSは、環境開発やCPU様々ながされて移植する。 私たちは常にリストにデバイスを追加する新しい。 さらに詳しい情報...


embOS試用版

様々なプロセッサの場合、embOSまた、フル機能の試用版としてダウンロード可能です。 すべての試用版が含まれても、私たちのダウンロードページから個別にダウンロードすることができます開始プロジェクトを、ユーザーマニュアルとembOSViewツール移動する準備が完了しました。 製品の試用版を使用して許可されていません:もちろん、試用版のいくつかの制限があります。 embOSライブラリの試用版は、3つのタスクの最大時間制限なしで実行してください。 アプリケーションは、15分の制限時間後に停止embOS、以上の3つのタスクを作成する場合。 お客様のサポートが含まれていません。 embOS試用版ではサポートされているプロセッサのリストをチェックアウトしてください、使用するプロセッサの利用可能かどうかを確認してください。


embOSViewを使用してプロファイリング

embOSViewは、リアルタイムで実行されているターゲットアプリケーションの分析のために非常に役立つツールです。 それはembOSを使用して、実行中のアプリケーションの状態を表示します。 すべての通信は、通信割り込みルーチン内から実行されます。 これは、通信は、none embOSViewが接続されていない場合の最小貫入中のembOSViewが接続されて侵入されていることを意味します。 ビルドプロファイルでは、embOSは、CPU負荷を表示するembOSViewを可能にするすべてのタスクのための正確なタイミング情報を収集します。


embOS Plug - inはIAR社のためのEmbedded Workbenchの

embOSプラグイン™Embedded WorkbenchはIAR社のセッション中にデバッグ意識を提供していますembOS。 またはタイマ、embOSオブジェクトなどのいくつかの状態がタスク、リソースセマフォ、メールボックスを検査することができる。 さらに詳しい情報...


embOSの代表的なアプリケーション

embOSは、超高速応答性、柔軟性、複数のタスクを要求され​​るシステム、バッテリ駆動のシングルチップ製品から任意のアプリケーションで使用することができます。 典型的なフィールドは次のとおりです:産業機器計測機器通信医療機器家電...


技術に関する情報をもっと見る


ライブラリとソースコード

embOSは、ライブラリやソースコードとして利用され、ソースコードのバージョンは、ライブラリとライブラリのソースコードが含まれています。 両方のバージョンがスタートプロジェクト、BSPとembOSViewに行く準備ができています。 別のも含まれているライブラリのビルド:リリースは、/チェックは通常、アプリケーションプログラムのビルドのリリースで使用されて、ビルドスタック/プロファイリングは、通常、開発段階で使用されるビルドデバッグします。 ライブラリは、コンパイラのすべてのサポートされているメモリモデル、デバッグライブラリとアイドルタスクとハードウェアの初期化のためのソースコードを含むembOSのすべての機能を提供しています。 しかし、ライブラリはライブラリルーチン、カーネルのソースレベルのデバッグを許可されていません。 完全なソース版は、究極のオプションを提供しています:embOSは、異なるデータサイズ用に再コンパイルすることができます。異なるそれは汎用性やメモリの最小要件については、システムを最適化することができること、オプションは生成されたコードの完全な制御を与えるコンパイルしてください。 システム全体のデバッグおよび変更できます。