Richiedi informazioni per questo prodotto ➦


SEGGER emUSB Device

emUSB-Device software ad alta performance

emUSB-Device è lo stack USB device progettato per sistemi embedded.

emUSB device è uno stack USB device progettato specificatamente per i sistemi embedded. Il software è scritto in ANSI C e può essere eseguito su qualsiasi piattaforma. emUSB device può essere usato con embOS o qualsiasi altro RTOS supportato. E’ disponibile una varietà di dispositivi target.  Il supporto per nuove piattaforme può essere aggiunto generalmente senza spese aggiuntive.

Caratteristiche

• Velocità elevata
• Ottimizzato per essere usato con embOS, funziona con qualsiasi altro RTOS supportato
• Facile da usare
• Facile da portare
• Non necessita di alcun driver USB host particolare
• Applicazione per iniziare

Componenti

emUSB è costituito da tre strati: un driver per l’accesso all’hardware, il core emUSB e almeno un driver per una class USB o il componente per la comunicazione bulk.

I diversi driver hardware disponibili, i driver di classe USB e il componente per la comunicazione bulk sono pacchetti addizionali che possono essere combinati e ordinati in dipendentemente dai requisiti del progetto. Solitamente emUSB consiste in un driver per l’hardware utilizzato, il core emUSB e almeno una dei driver per le classi USB: driver MSD, CDC, HID o il componente bulk non classificato.

EMUSB BULK

Lo stack emUSB-bulk consiste in un lato embedded che viene fornito sotto forma di codice sorgente e in un driver per PC che è solitamente fornito come eseguibile (.sys). (Può essere ordinata anche il sorgente del driver del PC ).

SCOPO DI EMUSB-BULK

emUSB-Bulk permette agli sviluppatori di sviluppare velocemente un software per un dispositivo embedded che comunica con il PC via USB.  La comunicazione è come un unico canale affidabile ad alta velocità (molto simile ad una connessione TCP).  Ciò permette al PC di inviare dati al target embedded, al target embedded di ricevere questi byte e di rispondere con qualsiasi numero di byte. Il PC è l’host USB, il target è il client USB. Lo standard USB definisce 4 tipi di comunicazione: Control, isochronous, interrupt and bulk. L’esperienza insegna che per la maggior parte dei dispositivi embedded la modalità bulk è la modalità di comunicazione preferita. Permette l’intero uso della larghezza della banda del bus USB.

Component Description
Ethernet communication
emUSB-Device IP Cross platform IP over USB communication
(contains emUSB-RNDIS and emUSB-ECM)
emUSB-Device RNDIS Ethernet over USB communication using Remote NDIS protocol
emUSB-Device ECM Ethernet over USB communication using Communication Device Class
/ Ethernet Control Model protocol (CDC-ECM)
emUSB-Device SmartMSD Virtual mass storage device (contains emUSB-MSD)
emUSB-Device MSD Mass Storage Device class
emUSB-Device MTP Mass storage using Media Transfer Protocol (MTP)
emUSB-Device CDC Serial communication over USB using Communication Device Class /
Abstract Control Model protocol (CDC-ACM), typically RS-232 emulation
emUSB-Device HID Human Interface Device Class (HID) component
(e.g. Mouse and Keyboard)
emUSB-Device Printer Printer protocol class
Other communication
emUSB-Device Bulk Easy and fast USB communication without any protocol overhead
emUSB-Device Audio Easily handle audio data.
Core layer
emUSB-Device Core The emUSB-Device core is the intrinsic USB stack.
Hardware layer
Driver USB controller driver.

emUSB-Device_structure-4.svg

SEGGER provide support for an extensive range of MCUs with on-chip USB controllers. The driver interface has been designed in such a way that it should be possible to use the most common USB device controllers and easily add drivers for USB controllers that are not yet supported.

Full list of supported devices

USB class drivers and hardware drivers are separate packages, which can be combined and ordered individually to suit the requirements of any project. SEGGER recommends to purchase emUSB-Device as a complete package by selecting the emUSB-Device PRO package. It includes support for the most common use cases, such as human interface devices for user interaction, file storage and transfer and serial communication support. The following table shows, which modules are part of the PRO package and which are optionally available.

  • Cross platform works with Linux, Mac, Windows, and other hosts
  • Direct support from the USB product developers
  • Uniform API for all supported controllers
  • Easy to use API and documentation
  • Small memory footprint