05172024

Last update2016/05/28 14:38

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

emUSB Device-USB Device Stack More

emUSB Device
Overview

emUSB Device

emUSB is a high speed USB device stack specifically designed for embedded Systems. The software is written in ANSI "C" and can run on any platform. emUSB can be used with embOS or any other supported RTOS. A variety of target drivers are already available. Support for new platforms can usually be added for no extra charge.

Features

  • High speed
  • Optimized to be used with embOS but works with any other supported RTOS.
  • Easy to use
  • Easy to port
  • No custom USB host driver necessary
  • Start / test application supplied
  • Highly efficient, portable, and commented ANSI C source code
  • Hardware abstraction layer allows rapid addition of support for new devices.


emUSB components

Target USB components

 

emUSB consists of three layers: A driver for hardware access, the emUSB core and at least an USB class driver or the bulk communication component.


The different available hardware drivers, the USB class drivers and the bulk communication component are additional packages, which can be combined and ordered as it fits to the requirements of the project. Normally, emUSB consists of a driver that fits to the used hardware, the emUSB core and at least one of the USB class drivers MSD, CDC, HID or the unclassified bulk component



Component Description
USB protocol layer
Bulk emUSB bulk component.
(emUSB-Bulk)
MSD emUSB Mass Storage Device class component.
(emUSB-MSD).
CDC emUSB Communication Device Class component.
(emUSB-CDC)
HID emUSB Human Interface Device Class component.
(emUSB-HID)
Core layer
emUSB Core The emUSB core is the intrinsic USB stack.
Hardware layer
Driver USB controller driver.

 


emUSB Bulk

 

The emUSB-Bulk stack consists of an embedded side, which is shipped in source code form, and a driver for the PC, which is typically shipped as executable (.sys). (The source of the PC driver can also be ordered.)

Purpose of emUSB-Bulk

emUSB-Bulk allows developers to quickly and painlessly develop software for an embedded device that communicates with a PC via USB. The communication is like a single, high speed, reliable channel (very similar to a TCP connection). It basically allows the PC to send data to the embedded target, the embedded target to receive these bytes and reply with any number of bytes. The PC is the USB host, the target is the USB client. The USB standard defines 4 types of communication: Control, isochronous, interrupt and bulk. Experience shows, that for most embedded devices bulk mode is the communication mode of choice. It allows usage of the full bandwidth of the USB bus.

 


embOS-Realtime Operating System More

embOS
Overview

embOS Real time operating system

embOS is a priority-controlled real time operating system, designed to be used as foundation for the development of embedded real-time applications. It is a zero interrupt latency*, high-performance RTOS that has been optimized for minimum memory consumption in both RAM and ROM, as well as high speed and versatility. Throughout the development process of embOS, the limited resources of microcontrollers have always been kept in mind. The internal structure of embOS has been optimized in a variety of applications with different customers, to fit the needs of different industries. embOS is fully source-compatible on different platforms (8/16/32 bits), making it easy to port applications to different CPUs. Its' highly modular structure ensures that only those functions that are needed are linked, keeping the ROM size very small. Tasks can easily be created and safely communicate with each other using a complete palette of communication mechanisms such as semaphores, mailboxes, and events. Interrupt Service Routines (ISRs) can also take advantage of these communication mechanisms.

 

* High priority interrupts are never disabled by embOS.

Features

  • Preemptive scheduling: Guarantees that of all tasks in READY state, the one with the highest priority executes, except for situations where priority inversion applies.
  • Round-robin scheduling for tasks with identical priorities.
  • Preemptions can be disabled for entire tasks or for sections of a program.
  • No configuration needed
  • Up to 255 priorities: Every task can have an individual priority => the response of tasks can be precisely defined according to the requirements of the application.
  • Unlimited number of tasks (limited only by available memory).
  • Unlimited number of semaphores (limited only by available memory).
  • Unlimited number of mailboxes (limited only by available memory).
  • Size and number of messages can be freely defined.
  • Unlimited number of software timers (limited only by available memory).
  • Time resolution tick can be freely selected (default is 1ms).
  • High resolution time measurement (more accurate than tick).
  • Power management: Unused CPU time can automatically be spent in halt mode, minimizing power consumption.
  • Full interrupt support: Most API functions can be used from within the Interrupt Service Routines (ISRs).
  • Zero interrupt latency time.
  • Nested interrupts are permitted.
  • Start application and projects (BSPs) for an easy start.
  • Debug build performs runtime checks, simplifying development.
  • High precision per task profiling.
  • Real time kernel viewer (embOSView) included.
  • Very fast and efficient, yet small code.
  • Minimum RAM usage.
  • Core written in assembly language.
  • All API functions can be called from C /C++/assembly.
  • Initialization of microcontroller hardware as sources.
  • BSP for any unsupported hardware with the same CPU can easily be written by user.


Software structure & components

Supported CPUs

embOS has been ported to a variety of CPUs and development environments. We constantly add new devices to the list.More info...


embOS trial versions

For various processors, embOS is also available for download as full functional trial version. All trial versions contain a complete ready to go start project, the users manual and embOSView tool which can also be downloaded separately from our download page. Of course there are some limitations for the trial version: Using the trial version in a product is not allowed. The trial version of the embOS libraries run without a time limit with a maximum of three tasks. If your application creates more than three tasks, embOS stops after a time limit of 15 minutes. Customer support is not included. To check if a embOS trial version is available for the processor you use, please check out the list of supported processors.


Profiling using embOSView

embOSView is a very helpful tool for analysis of the running target application in real time. It displays the state of a running application using embOS. All communication is done from within the communication interrupt routines. This means that the communication is none intrusive if embOSView is not connected and minimum intrusive while embOSView is connected. In the profiling build, embOS collects precise timing information for every task, which enables embOSView to show the CPU load.


embOS Plug-in for IAR Embedded Workbench

The embOS plug-in for the IAR Embedded Workbench™ provides embOS awareness during debugging sessions. The state of several embOS objects such as the tasks, resource semaphores, mailboxes, or timers can be inspected.More info...


Typical applications for embOS

embOS can be used in any application from battery-powered, single chip products to systems demanding ultra-fast response, flexibility and multiple tasks. Typical fields are: Industrial equipment Test and Measurement equipment Telecommunication Medical equipment Consumer electronics...


Technical info

 

  • kernel size (ROM) 1100 - 1600 byte*
  • kernel RAM usage 18 - 25 byte *
  • kernel CPU usage at 1 ms Interrupts with 10MHz M16C : less than .3%
  • RAM usage mailbox 9 - 15 byte *
  • RAM usage binary and counting semaphore 3 byte
  • RAM usage resource semaphore 4 - 5 byte *
  • RAM usage timer 9 - 11 byte *
  • RAM usage event 0
  • Basic time unit (One Tick) Default 1 ms, can be configured, Min. 100 µs (M16C@10MHz) *
  • task activation time independent of no. of tasks(e.g. typ. 12 us M16C@10MHz)
  • zero interrupt latency
  • No. of tasks : Unlimited (by available RAM only)
  • No. of mailboxes : Unlimited (by available RAM only)
  • No. of semaphores : Unlimited (by available RAM only)
  • No. of s/w timers : Unlimited (by available RAM only)
  • Max. no. of priorities : 255
  • Max. no. of tasks with identical priorities (Round robin scheduling) Unlimited

* Depends on CPU, compiler and library model used

 


Libraries and source code

embOS is available as library or source code; the source code version includes libraries and the source code of the libraries. Both versions come with ready to go start projects, BSPs and embOSView. Different builds of libraries are also included: Release/stack check build, typically used in the release build of the application program; Debug/profiling build typically used in the development phase. The libraries offer the full functionality of embOS including all supported memory models of the compiler, the debug libraries and the source code for idle task and hardware initialization. However, the libraries do not allow source-level debugging of the library routines and the kernel. The full source version provides the ultimate options: embOS can be recompiled for different data sizes; different compile options give full control of the generated code, making it possible to optimize the system for versatility or minimum memory requirements. The entire system can be debugged and modified.


embOS-Realtime Operating System 日本語 More

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

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

 

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

特長

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


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

 

  • カーネルのサイズ(ROM)が1100から1600バイト*
  • カーネルのRAM使用量を18から25バイト*
  • 10MHzのM16Cファミリ1 msの割り込み時にカーネルのCPU使用率:未満0.3パーセント
  • RAM使用量のメールボックス9〜15バイト*
  • RAM使用量バイナリとカウンティングセマフォ3バイト
  • * 5バイト - RAMの使用量のリソースが4セマフォ
  • RAM使用量タイマ9から11バイト*
  • RAM使用量イベント0
  • 基本的な時間の単位は、(一ティック)デフォルトは1ミリ秒、最小値、設定することができます。 100μ(M16Cファミリ@ 10MHz)の*
  • タスクの起動の時間がないから独立しています。 タスクの(標準、例えば12私たちM16Cファミリ@ 10MHz)の
  • ゼロ割り込みレイテンシ
  • タスク数:無制限(のみ使用可能なRAMで)
  • メールボックス数:無制限(のみ使用可能なRAMで)
  • セマフォの数:無制限(のみ使用可能なRAMで)
  • (のみ使用可能なRAMで)無制限:S / Wのタイマ数
  • 最大 ない。 優先順位の:255
  • 最大 ない。 同一の優先順位を持つタスク(ラウンドロビンスケジューリング)無制限の

CPUは、使用されるコンパイラおよびライブラリのモデル*依存

 


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

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


embOS/IP-TCP/IP Stack More

embOS/IP
Overview

embOS/IP

embOS/IP is a CPU independent TCP/IP stack. embOS/IP is a high-performance library that has been optimized for speed, versatility and memory footprint. It is is written in ANSI C and can be used on virtually any CPU.

Features

  • ANSI C socket.h-like API for user applications. An application using the standard C socket library can easily be ported to use embOS/IP.
  • Very simple device driver structure.
  • High performance
  • Small footprint
  • Runs "out-of-the-box"
  • No configuration required
  • Works seamlessly with embOS in multitasking environment
  • Zero data copy for ultra fast performance
  • Standard sockets Interface
  • Raw Socket Support
  • Non-blocking versions of all functions
  • Connections limited only by memory availability
  • Nagle Algorithm (Slow start)
  • Delayed ACKs
  • BSD style "Keepalive" option
  • Re-assembly of fragmented packets
  • Optional drivers for the most common devices are available.


Basic concepts

 

embOS/IP structure

embOS/IP is organized in different layers, illustrated in the follwoing diagram. A short description of each layer's functionality follows below.

Application layer

The API Layer is the interface between embOS/IP and the user application. It uses the embOS/IP API to transmit data over an TCP/IP network. The embOS/IP API provides functions in Berkley socket style, such as connect(), bind(), listen(), etc.

Transport layer

The transport layer provides end-to-end communication services for applications. The two relevant protocols of the transport layer protocol are the Transmission Control Protocol (TCP) and the User Datagram Protocol (UDP). TCP is a reliable connection-oriented transport service. It provides end-to-end reliability, resequencing, and flow control. UDP is a connectionless transport service.

Internet layer

All protocols of the Transport layer use the Internet Protocol (IP) to carry data from source host to destination host. IP is a connectionless service, providing no end-to-end delivery guarantees. IP datagrams may arrive at the destination host damaged, duplicated, out of order, or not at all. The Transport layer is responsible for reliable delivery of the datagrams when it is required. The IP protocol includes provision for addressing, type-of-service specification, fragmentation and reassembly, and security information.

Link layer

The Link layer provides the implementation of the communication protocol used to interface to the directly-connected network. A variety of communication protocols have been developed and standadized. The most commonly used protocol is Ethernet (IEEE 802.3). In this version of embOS/IP is only Ethernet supported.

Encapsulation

The four layers structure is defined in RFC 1122. The data flow starts at application layer goes over the transport layer, the network layer, and the link layer. Every protocol adds an protocol-specific header and encapsulates the data and header from the layer above as data. On the receiving side the data will be extracted in the complementary direction. The opposed protocols does not know which protocol on the layers above and below are used. The following illustration shows the encapsulation of data within an UDP datagram within an IP packet.

 


Tasks and interrupt usage

 

embOS/IP can be used in an application in three different ways.

  • One task dedicated to the stack
  • Two tasks dedicated to the stack
  • Zero tasks dedicated to the stack (Superloop)

The default task structure is one task dedicated to the stack.

 

One task dedicated to the stack

 

This is the simplest way to use the TCP/IP stack. One task is dedicated to the stack. It is called IP_Task and handles housekeeping operations, resends and handling of incoming packets. The "Read packet" operation is performed from within the ISR. Since the "Read packet" operation is called directly from the ISR, no additional task is required. The length of the interrupt latency will be extended for the time period which is required to process the "Read packet" operation.

 

Two tasks dedicated to the stack

 

Two tasks are dedicated to the stack. The first is called IP_Task and handles housekeeping operations, resends and handling of incoming packets. The second one is called IP_RxTask and handles the "Read packet" operation. IP_RxTask is woken up from the interrupt service routine, if new packets are available. The interrupt latency is not extended, since the "Read packet" operation has been moved from the interrupt service routine to IP_RxTask.

 

Zero tasks dedicated to the stack (Superloop)

 

embOS/IP can also be used without any additonal task for the stack, if an application task calls periodically IP_Exec(). The "Read packet" operation is performed from within the ISR. Since the "Read packet" operation is called directly from the ISR, no additional task is required. The length of the interrupt latency will be extended for the time period which is required to process the "Read packet" operation.

 


embOS/IP Add-ons

The embOS/IP is a fully featured TCP/IP which can be supplemented application layer protocols like HTTP or FTP. The application layer protocols are optional extensions to embOS/IP. They can Be used with embOS/IP OR with any OTHER TCP/IP stack.


Available embOS/IP Add-ons


embOS/IP-TCP/IP Stack 日本語 More

embOS / IPの
概要

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のアドオン