|
Access the target device like an ordinary disk drive
emUSB-MSD enables the use of an embedded target device as a USB mass storage
device. The target device can be simply pluged-in and used like an ordinary
disk drive, without the need to develop a driver for the host operating
system. This is possible because the mass storage class is one of the
standard device classes, defined by the USB Implementers Forum. Virtually
every major operating system on the market supports these device classes
out of the box.
No custom host drivers necessary
Every major OS already provides host drivers for USB mass storage devices,
there is no need to implement an own. The target device will be recognized
as a mass storage device and can be accessed directly.
Plug and Play
Let's say the target system is a digital camera using emUSB-MSD. Videos
or photos taken by this camera can be conveniently accessed with the file
system explorer of the used operating system, if the camera is connect
to the host.
Typical applications
- Digital camera
- USB stick
- MP3 player
- DVD player
- Any target with USB interface: Easy access to configuration and data
files
emUSB-MSD features
Key features of the emUSB-MSD are:
- Can be used with RAM, parallel flash, serial flash or mechanical drives
- Support for Full speed (12 MBit/s) and High speed (480 MBit/s) transfer
rates
- Easy to use
- Easy to port
- No custom USB host driver necessary
- Highly portable, efficient, commented ANSI C source code
- OS-Abstraction: Use with any RTOS, no OS required for MSD only devices
- Hardware abstraction layer allows rapid addition of support for new
devices
How does it work?
Use file system support from host OS
A device which uses emUSB-MSD will be recognized as a mass storage device
and can be used like an ordinary disk drive. If the device is unformatted
when plugged-in, the host operating system will offer to format the device.
Any file system the host provides can be used. Typically FAT is used,
but other file systems such as NTFS are possible too. If one of those
file systems is used, the host is able to read from and write to the device
using the storage functions of the emUSB MSD component, which define unstructured
read and write operations. Thus there is no need to develop extra file
system code if the application only accesses data on the target from the
host side. This is typically the case for simple storage applications,
such as USB memory sticks or ATA to USB bridges.
Only provide file system code on the target if necessary
Mass storage devices like USB sticks does not require an own file system
implementation. File system program code is only required if the application
running on target device has to access the stored data. The development
of a file system is a complex and time-consuming task and enhances the
time-to market. Thus we recommend the use of commercial file system like
emFile, Segger's file system for embedded applications. emFile is a high
performance library that has been optimized for minimum memory consumption
in RAM and ROM, high speed and versatility. It is written in ANSI C and
can be used on any CPU and on any media. Refer to www.segger.com/ emfile.html
for more information about emFile.

Copyright SEGGER Microcontroller GmbH & Co.KG. All
rights reserved.
For more information, please visit our web site
www.segger.com or contact us at info@segger.com
Last update:
December 7, 2007
|